PurchaseOffering
Immediately purchases offerings for an AWS account. Offerings renew with the latest total purchased
quantity for an offering, unless the renewal was overridden. The API returns a NotEligible
error if the user is not permitted to invoke the operation. If you must be able to invoke this operation,
contact aws-devicefarm-support@amazon.com
Request Syntax
{
"offeringId": "string
",
"offeringPromotionId": "string
",
"quantity": number
}
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.
- offeringId
-
The ID of the offering.
Type: String
Length Constraints: Minimum length of 32.
Required: Yes
- offeringPromotionId
-
The ID of the offering promotion to be applied to the purchase.
Type: String
Length Constraints: Minimum length of 4.
Required: No
- quantity
-
The number of device slots to purchase in an offering request.
Type: Integer
Required: Yes
Response Syntax
{
"offeringTransaction": {
"cost": {
"amount": number,
"currencyCode": "string"
},
"createdOn": number,
"offeringPromotionId": "string",
"offeringStatus": {
"effectiveOn": number,
"offering": {
"description": "string",
"id": "string",
"platform": "string",
"recurringCharges": [
{
"cost": {
"amount": number,
"currencyCode": "string"
},
"frequency": "string"
}
],
"type": "string"
},
"quantity": number,
"type": "string"
},
"transactionId": "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.
- offeringTransaction
-
Represents the offering transaction for the purchase result.
Type: OfferingTransaction object
Errors
For information about the errors that are common to all actions, see Common Errors.
- ArgumentException
-
An invalid argument was specified.
HTTP Status Code: 400
- LimitExceededException
-
A limit was exceeded.
HTTP Status Code: 400
- NotEligibleException
-
Exception gets thrown when a user is not eligible to perform the specified transaction.
HTTP Status Code: 400
- NotFoundException
-
The specified entity was not found.
HTTP Status Code: 400
- ServiceAccountException
-
There was a problem with the service account.
HTTP Status Code: 400
Examples
Example
The following example purchases one unmetered iOS device.
Sample Request
{
"transactions": [
"purchase": {
"offeringId": "offering-id-ios",
"quantity": 1
}
]
}
Sample Response
{
"offeringTransaction": {
"createdOn": 1458587590.308,
"offeringStatus": {
"effectiveOn": 1458587590.24,
"type": "RECURRING",
"offering": {
"platform": "IOS",
"type": "RECURRING",
"id": "offering-id-ios",
"description": "iOS Unmetered Device Slot"
},
"quantity": 1
},
"cost": {
"amount": 80.65,
"currencyCode": "USD"
},
"transactionId": "transaction-id"
}
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: