Amazon DevPay
Developer Guide (API Version 2007-12-01)



Amazon DevPay is not accepting new seller accounts at this time. Please see AWS Marketplace for information on selling your applications on Amazon Web Services.

In response to an action request, the License Service returns an XML data structure that contains the results of the request. This data conforms to the License Service WSDL. For the location of the WSDL, see WSDL Location.

For SOAP requests, this data structure is the SOAP message body of the response. SOAP toolkits typically convert the response data into structures for use with your programming language or allow you to specify your own data bindings.

For REST-Query requests, this data structure is simply the body of the HTTP response. You can use a data binding method for REST-Query responses or use an XML parser directly to process the information.

Aside from using a message envelope for SOAP, the schema for the results is the same for REST-Query and SOAP responses. The WSDL defines the response messages, and REST-Query users can access the WSDL file directly.

Structure of a Successful Response

If the request succeeded, the main response element is named after the action, but with "Response" appended. For example, ActivateHostedProductResponse is the response element returned for a successful ActivateHostedProduct request. This element contains the following child elements:

  • An optional element containing action-specific results; for example, the ActivateHostedProductResponse element includes an element called ActivateHostedProductResult

  • ResponseMetadata, which contains the RequestId child element

The License Service WSDL includes a description of what the XML response message looks like for each License Service action.

The following is an example of a successful response.

<ActivateHostedProductResponse xmlns=""> <ActivateHostedProductResult> <UserToken> {UserToken}AAAHVXNlclRrbgfOpSykBAXO7g/zG....[long encoded token]... </UserToken> <PersistentIdentifier> PMNGLKRRYHLOXDQKEMKEXAMPLE </PersistentIdentifier> </ActivateHostedProductResult> <ResponseMetadata> <RequestId>cb919c0a-9bce-4afe-9b48-9bdf2412bb67</RequestId> </ResponseMetadata> </ActivateHostedProductResponse>

Structure of an Error Response

If a request is unsuccessful, the main response element is ErrorResponse, regardless of the action's name. This element contains an Error element and a RequestId element. Each Error includes:

  • A Type element that identifies whether the error was a receiver or sender error

  • A Code element that identifies the type of error that occurred

  • A Message element that describes the error condition in a human-readable form

  • A Detail element that might give additional details about the error or might be empty

The following is an example of an error response.

<ErrorResponse xmlns=""> <Error> <Type> Sender </Type> <Code> ExpiredActivationKey </Code> <Message> The activation key has expired </Message> <Detail/> </Error> <RequestId> c75dbc1c-af20-409a-95de-650bba351890 </RequestId> </ErrorResponse>