DescribeServices
Returns the metadata for one service or a list of the metadata for all services. Use
this without a service code to get the service codes for all services.
Use it with a service code, such as AmazonEC2, to get information specific to
that service, such as the attribute
names available for that service. For example, some of the attribute names available for EC2 are
volumeType, maxIopsVolume, operation,
locationType, and instanceCapacity10xlarge.
Request Syntax
{
"FormatVersion": "string",
"MaxResults": number,
"NextToken": "string",
"ServiceCode": "string"
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- FormatVersion
-
The format version that you want the response to be in.
Valid values are:
aws_v1Type: String
Length Constraints: Minimum length of 1. Maximum length of 32.
Required: No
- MaxResults
-
The maximum number of results per response. This is an upper limit, not a guaranteed count. Responses might return fewer results even when more total results exist.
Type: Integer
Valid Range: Minimum value of 1. Maximum value of 100.
Required: No
- NextToken
-
A
NextTokenin the response indicates more results might exist. Continue pagination until you receive a response without aNextToken, implying it is complete.Type: String
Required: No
- ServiceCode
-
The code for the service whose information you want to retrieve, such as
AmazonEC2. You can use theServiceCodeto filter the results in aGetProductscall. To retrieve a list of all services, leave this blank.Type: String
Required: No
Response Syntax
{
"FormatVersion": "string",
"NextToken": "string",
"Services": [
{
"AttributeNames": [ "string" ],
"ServiceCode": "string"
}
]
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- FormatVersion
-
The format version of the response. For example,
aws_v1.Type: String
Length Constraints: Minimum length of 1. Maximum length of 32.
- NextToken
-
A
NextTokenin the response indicates more results might exist. Continue pagination until you receive a response without aNextToken, implying it is complete.Type: String
- Services
-
The service metadata for the service or services in the response.
Type: Array of Service objects
Errors
For information about the errors that are common to all actions, see Common Errors.
- ExpiredNextTokenException
-
The pagination token expired. Try again without a pagination token.
HTTP Status Code: 400
- InternalErrorException
-
An error on the server occurred during the processing of your request. Try again later.
HTTP Status Code: 500
- InvalidNextTokenException
-
The pagination token is invalid. Try again without a pagination token.
HTTP Status Code: 400
- InvalidParameterException
-
One or more parameters had an invalid value.
HTTP Status Code: 400
- NotFoundException
-
The requested resource can't be found.
HTTP Status Code: 400
- ThrottlingException
-
You've made too many requests exceeding service quotas.
HTTP Status Code: 400
Examples
The following is a sample request and response of the GetService operation.
This example illustrates one usage of DescribeServices.
Sample Request
POST / HTTP/1.1
Host: api.pricing.<region>.<domain>
x-amz-Date: <Date>
Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=contenttype;date;host;user-agent;x-amz-date;x-amz-target;x-amzn-requestid,Signature=<Signature>
User-Agent: <UserAgentString>
Content-Type: application/x-amz-json-1.1
Content-Length: <PayloadSizeBytes>
Connection: Keep-Alive
X-Amz-Target: AWSPriceListService.DescribeServices
{
"ServiceCode": "AmazonEC2",
"FormatVersion": "aws_v1",
"NextToken": null,
"MaxResults": 1
}
Sample Response
HTTP/1.1 200 OK
x-amzn-RequestId: <RequestId>
Content-Type: application/x-amz-json-1.1
Content-Length: <PayloadSizeBytes>
Date: <Date>
{
"FormatVersion": "aws_v1",
"NextToken": "abcdefg123",
"Services": [
{
"AttributeNames": [
"volumeType",
"maxIopsvolume",
"instanceCapacity10xlarge",
"locationType",
"operation"
],
"ServiceCode": "AmazonEC2"
}
]
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: