Notification API (v1.2.0)

Download OpenAPI specification:Download

The eBay Notification API enables management of the entire end-to-end eBay notification experience by allowing users to:

  • Browse for supported notification topics and retrieve topic details
  • Create, configure, and manage notification destination endpionts
  • Configure, manage, and test notification subscriptions
  • Process eBay notifications and verify the integrity of the message payload

public_key

getPublicKey

This method allows users to retrieve a public key using a specified key ID. The public key that is returned in the response payload is used to process and validate eBay notifications.

The public key ID, which is a required request parameter for this method, is retrieved from the Base64-encoded X-EBAY-SIGNATURE header that is included in the eBay notification.

Note: For more details about how to process eBay push notifications and validate notification message payloads, see the Notification API overview.

Authorizations:
Client_Credentials
path Parameters
public_key_id
required
string

The unique key ID that is used to retrieve the public key.

Note: This is retrieved from the X-EBAY-SIGNATURE header that is included with the push notification.

Responses

Response samples

Content type
application/json
{
  • "algorithm": "string",
  • "digest": "string",
  • "key": "string"
}

topic

getTopic

This method allows applications to retrieve details for the specified topic. This information includes supported schema versions, formats, and other metadata for the topic.

Applications can subscribe to any of the topics for a supported schema version and format, limited by the authorization scopes required to subscribe to the topic.

A topic specifies the type of information to be received and the data types associated with an event. An event occurs in the eBay system, such as when a user requests deletion or revokes access for an application. An event is an instance of an event type (topic).

Specify the topic to retrieve using the topic_id URI parameter.

Note: Use the getTopics method to find a topic if you do not know the topic ID.

Authorizations:
Client_Credentials
path Parameters
topic_id
required
string

The ID of the topic for which to retrieve the details.

Responses

Response samples

Content type
application/json
{
  • "topicId": "string",
  • "description": "string",
  • "authorizationScopes": [
    ],
  • "status": "string",
  • "context": "string",
  • "scope": "string",
  • "supportedPayloads": [
    ]
}

getTopics

This method returns a paginated collection of all supported topics, along with the details for the topics. This information includes supported schema versions, formats, and other metadata for the topics.

Applications can subscribe to any of the topics for a supported schema version and format, limited by the authorization scopes required to subscribe to the topic.

A topic specifies the type of information to be received and the data types associated with an event. An event occurs in the eBay system, such as when a user requests deletion or revokes access for an application. An event is an instance of an event type (topic).

Authorizations:
Client_Credentials
query Parameters
limit
string

The maximum number of items to return per page from the result set. A result set is the complete set of results returned by the method. Range is from 10-100.

If this parameter is omitted, the default value is used.

Default: 20

Maximum: 100 items per page

continuation_token
string

The token used to access the next set of results.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "href": "string",
  • "next": "string",
  • "limit": 0,
  • "topics": [
    ]
}

subscription

getSubscriptions

This method allows applications to retrieve a list of all subscriptions. The list returned is a paginated collection of subscription resources.

Subscriptions allow applications to express interest in notifications and keep receiving the information relevant to their business.

Authorizations:
Client_CredentialsAuthorization_Code
query Parameters
limit
string

The number of items, from the result set, returned in a single page. Range is from 10-100. If this parameter is omitted, the default value is used.

Default: 20

Maximum: 100 items per page

continuation_token
string

The continuation token for the next set of results.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "href": "string",
  • "next": "string",
  • "limit": 0,
  • "subscriptions": [
    ]
}

createSubscription

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.

Authorizations:
Client_CredentialsAuthorization_Code
Request Body schema: application/json

The create subscription request.

topicId
string

The unique identifier for the topic associated with this subscription.

status
string

The status of this subscription. For implementation help, refer to eBay API documentation

object (SubscriptionPayloadDetail)

A type that describes the details of the subscription payload.

destinationId
string

The unique identifier for the destination associated with this subscription.

Responses

Request samples

Content type
application/json
{
  • "topicId": "string",
  • "status": "string",
  • "payload": {
    },
  • "destinationId": "string"
}

Response samples

Content type
application/json
{ }

getSubscription

This method allows applications to retrieve subscription details for the specified subscription.

Specify the subscription to retrieve using the subscription_id. Use the getSubscriptions method to browse all subscriptions if you do not know the subscription_id.

Subscriptions allow applications to express interest in notifications and keep receiving the information relevant to their business.

Authorizations:
Client_CredentialsAuthorization_Code
path Parameters
subscription_id
required
string

The unique identifier for the subscription.

Responses

Response samples

Content type
application/json
{
  • "subscriptionId": "string",
  • "topicId": "string",
  • "status": "string",
  • "creationDate": "string",
  • "payload": {
    },
  • "destinationId": "string"
}

updateSubscription

This method allows applications to update a subscription. Subscriptions allow applications to express interest in notifications and keep receiving the information relevant to their business.

Note: This call returns an error if an application is not authorized to subscribe to a topic.

You can pause and restart a subscription. See the disableSubscription and enableSubscription methods.

Authorizations:
Client_CredentialsAuthorization_Code
path Parameters
subscription_id
required
string

The unique identifier for the subscription.

Request Body schema: application/json

The create subscription request.

status
string

The status of this subscription. For implementation help, refer to eBay API documentation

object (SubscriptionPayloadDetail)

A type that describes the details of the subscription payload.

destinationId
string

The unique identifier for the destination associated with this subscription.

Responses

Request samples

Content type
application/json
{
  • "status": "string",
  • "payload": {
    },
  • "destinationId": "string"
}

deleteSubscription

This method allows applications to delete a subscription. Subscriptions can be deleted regardless of status.

Authorizations:
Client_CredentialsAuthorization_Code
path Parameters
subscription_id
required
string

The unique identifier for the subscription.

Responses

enableSubscription

This method allows applications to enable a disabled subscription. To pause (or disable) an enabled subscription, call disableSubscription.

Authorizations:
Client_CredentialsAuthorization_Code
path Parameters
subscription_id
required
string

The unique identifier for the subscription.

Responses

disableSubscription

This method disables a subscription, which prevents the subscription from providing notifications. To restart a subscription, call enableSubscription.

Authorizations:
Client_CredentialsAuthorization_Code
path Parameters
subscription_id
required
string

The unique identifier for the subscription.

Responses

test

This method triggers a mocked test payload that includes a notification ID, publish date, and so on. Use this method to test your subscription end-to-end.

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

Note: Use the notificationId to tell the difference between a test payload and a real payload.

Authorizations:
Client_CredentialsAuthorization_Code
path Parameters
subscription_id
required
string

The unique identifier for the subscription.

Responses

destination

getDestinations

This method allows applications to retrieve a paginated collection of destination resources and related details. The details include the destination names, statuses, and configurations, including the endpoints and verification tokens.

Authorizations:
Client_Credentials
query Parameters
limit
string

The number of items, from the result set, returned in a single page. Range is from 10-100. If this parameter is omitted, the default value is used.

Default: 20

Maximum: 100 items per page

continuation_token
string

The continuation token for the next set of results.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "href": "string",
  • "next": "string",
  • "limit": 0,
  • "destinations": [
    ]
}

createDestination

This method allows applications to create a destination. A destination is an endpoint that receives HTTP push notifications.

A single destination for all topics is valid, as is individual destinations for each topic.

To update a destination, use the updateDestination call.

The destination created will need to be referenced while creating or updating a subscription to a topic.

Note: The destination should be created and ready to respond with the expected challengeResponse for the endpoint to be registered successfully. Refer to the Notification API overview for more information.

Authorizations:
Client_Credentials
Request Body schema: application/json

The create destination request.

name
string

The name associated with this destination.

status
string

The status for this destination.

Note: The MARKED_DOWN value is set by eBay systems and cannot be used in a create or update call by applications.

Valid values:

  • ENABLED
  • DISABLED
  • MARKED_DOWN
For implementation help, refer to eBay API documentation

object (DeliveryConfig)

A type that contains information about the delivery configuration.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "status": "string",
  • "deliveryConfig": {
    }
}

Response samples

Content type
application/json
{ }

getDestination

This method allows applications to fetch the details for a destination. The details include the destination name, status, and configuration, including the endpoint and verification token.

Authorizations:
Client_Credentials
path Parameters
destination_id
required
string

The unique identifier for the destination.

Responses

Response samples

Content type
application/json
{
  • "destinationId": "string",
  • "name": "string",
  • "status": "string",
  • "deliveryConfig": "string"
}

updateDestination

This method allows applications to update a destination.

Note: The destination should be created and ready to respond with the expected challengeResponse for the endpoint to be registered successfully. Refer to the Notification API overview for more information.

Authorizations:
Client_Credentials
path Parameters
destination_id
required
string

The unique identifier for the destination.

Request Body schema: application/json

The create subscription request.

name
string

The name associated with this destination.

status
string

The status for this destination.

Note: The MARKED_DOWN value is set by eBay systems and cannot be used in a create or update call by applications.

Valid values:

  • ENABLED
  • DISABLED
  • MARKED_DOWN
For implementation help, refer to eBay API documentation

object (DeliveryConfig)

A type that contains information about the delivery configuration.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "status": "string",
  • "deliveryConfig": {
    }
}

deleteDestination

This method provides applications a way to delete a destination.

The same destination ID can be used by many destinations.

Trying to delete an active destination results in an error. You can disable a subscription, and when the destination is no longer in use, you can delete it.

Authorizations:
Client_Credentials
path Parameters
destination_id
required
string

The unique identifier for the destination.

Responses

config

getConfig

This method allows applications to retrieve a previously created configuration.

Authorizations:
Client_Credentials

Responses

Response samples

Content type
application/json
{
  • "alertEmail": "string"
}

updateConfig

This method allows applications to create a new configuration or update an existing configuration. This app-level configuration allows developers to set up alerts.

Authorizations:
Client_Credentials
Request Body schema: application/json

The configurations for this application.

alertEmail
string

The alert email address for this application.

Responses

Request samples

Content type
application/json
{
  • "alertEmail": "string"
}