notification APIv1.2.0


This method allows applications to create a subscription for a topic and supported schema version. Subscriptions allow applications to express interest in notifications and keep receiving the information relevant to their business.

Each application and topic-schema pairing to a subscription should have a 1:1 cardinality.

You can create the subscription in disabled mode, test it (see the test method), and when everything is ready, you can enable the subscription (see the enableSubscription method).

Note: If an application is not authorized to subscribe to a topic, for example, if your authorization does not include the list of scopes required for the topic, an error code of 195011 is returned.


Resource URI (production)


URI parameters

HTTP request headers

All requests made to eBay REST operations require you to provide the Authorization HTTP header for authentication authorization.

OAuth scope

This request requires an access token created with either authorization code grant flow or client credentials grant flow. Please refer to the note below for more details.

The access token must be created using one or more scopes from the following list (please check your Application Keys page for a list of OAuth scopes available to your application):

See OAuth access tokens for more information.

Note: An OAuth token created with the client credentials grant flow and the scope is required in order to create, update, or retrieve application-based subscriptions to notification topics. An OAuth token created with the authorization code grant flow and the scope is required in order to create, update, or retrieve user-based subscriptions to notification topics.

Input container/fieldTypeDescription
topicIdstringThe unique identifier for the topic associated with this subscription.

Occurrence: Required

statusSubscriptionStatusEnumThe status of this subscription.

Occurrence: Required

payloadSubscriptionPayloadDetailThe payload associated with this subscription.

Occurrence: Required

payload.formatFormatTypeEnumThe supported format.

Occurrence: Required

payload.schemaVersionstringThe supported schema version.

Occurrence: Required

payload.deliveryProtocolProtocolEnumThe supported protocol. For exmaple: HTTPS

Occurrence: Required

destinationIdstringThe unique identifier for the destination associated with this subscription.

Occurrence: Required


HTTP response headers

See HTTP response headers for details.

LocationThe subscription resource created.

HTTP status codes

This call can return one of the following HTTP status codes. For an overview of the status codes, see HTTP status codes in Using eBay RESTful APIs.

400Bad Request
500Internal Server Error

Error codes

For more on errors, plus the codes of other common errors, see Handling errors.

195000API_NOTIFICATIONAPPLICATIONThere was a problem with an eBay internal system or process. Contact eBay developer support for assistance.
195003API_NOTIFICATIONREQUESTPlease provide configurations required for notifications. Refer to /config
195006API_NOTIFICATIONREQUESTInvalid or missing subscription status.
195007API_NOTIFICATIONREQUESTInvalid or missing destination id.
195008API_NOTIFICATIONREQUESTInvalid or missing schema version. Please refer to /topic/{topic_id} for supported schema versions.
195009API_NOTIFICATIONREQUESTSpecified format is not supported for the topic.
195010API_NOTIFICATIONREQUESTInvalid or missing protocol
195011API_NOTIFICATIONREQUESTNot authorized for this topic.
195012API_NOTIFICATIONREQUESTSubscription already exists
195015API_NOTIFICATIONREQUESTThe subscription cannot be enabled since the destination is not enabled.
195027API_NOTIFICATIONREQUESTInvalid or missing topic id.



New to making API calls? Please see Making a Call.

Note: Identifiers, such as order IDs or user IDs, and personal data in these samples might be anonymized or may no longer be active on eBay. If necessary, substitute current, relevant eBay data in your requests.

Sample 1: Create subscription

This call creates a subscription for an application.


The required inputs are topicId, status, payload, payload (including format, schemaVersion and deliveryProtocol) and destinationId.


A successful call returns the HTTP status code 201 Created. This method has no response payload.