The following API functional boundaries for vCloud Air are designed to use standardized error handling:

Identity Management Service (IAM)

Service Controller (SC)

Metering Service (M/B)

For information about the errors returned by the Compute Service, see vCloud API REST Responses in the vCloud Air Compute Service Programming Guide.

When an API client receives a response containing HTTP status code 400 and higher for any resource, the response body includes the following attributes:

A standard error message type

The class of the error, which matches the HTTP status code

The specific error code from the error code list for the vCloud Air Platform APIs

A detailed error message

Additional information (when available), such as a link to details about the error

Description of the Error Codes that the API Returns

Code

Possible Causes

Components

CLIENT ERRORS

400

The request body is malformed, incomplete, or otherwise invalid.

IAM, SC, M/B

401

Unable to authenticate: Provided credentials are not valid.

The credentials supplied in an Authentication header are invalid.

The OAuth token has expired.

IAM, SC, M/B

403

The Authentication header is missing.

The server does not support the requested operation.

One or more objects specified in the request could not be found in the specified container.

The user is not authenticated or does not have adequate privileges to access one or more objects specified in the request.

The user's session has expired.

IAM, SC, M/B

404

The specified resource does not exist.

The request URL or request body is malformed.

IAM, SC, M/B

405

The HTTP method specified in the request is not supported for this object. (The links applicable to a resource are returned as a part of the resource.)

SC

409

The object state is not compatible with the requested operation.

A duplicate exists. All resources are uniquely identified by an ID field.

IAM, SC

412

A precondition failed:

If received when logging in, the precondition failed because the user did not accepted the Terms of Service.

A resource could not be updated because the resource changed on the server since the last time it was retrieved.

IAM

413

The requested entity is too large.

{"maxOperations": 1000,
"maxPayload": 1048576}

IAM

SERVER ERRORS

500

The request was received but could not be completed because of an internal server error or a timeout.

IAM, SC, M/B

501

The requested operation is not supported.

IAM

503

The server is busy performing a long running operation.

SC