ebay-api
Version:
eBay API for Node and Browser
187 lines (186 loc) • 7.08 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const index_js_1 = __importDefault(require("../../index.js"));
/**
* The eBay Notification API allows third-party developers and applications to process eBay notifications and verify the integrity of the notification message payload.
*/
class Notification extends index_js_1.default {
get basePath() {
return '/commerce/notification/v1';
}
/**
* This method allows users to retrieve a public key using a specified key ID.
*
* @param publicKeyId The unique key ID that is used to retrieve the public key
*/
getPublicKey(publicKeyId) {
publicKeyId = encodeURIComponent(publicKeyId);
return this.get(`/public_key/${publicKeyId}`);
}
/**
* This method allows applications to retrieve details for the specified topic.
*
* @param topicId The ID of the topic for which to retrieve the details.
*/
getTopic(topicId) {
topicId = encodeURIComponent(topicId);
return this.get(`/topic/${topicId}`);
}
/**
* This method returns a paginated collection of all supported topics, along with the details for the topics.
*
* @param limit The maximum number of items to return per page from the result set.
* @param continuationToken The token used to access the next set of results.
*/
getTopics({ limit, continuationToken: continuation_token }) {
return this.get(`/topic`, {
params: {
limit,
continuation_token
}
});
}
/**
* This method allows applications to retrieve a list of all subscriptions.
*
* @param limit The number of items, from the result set, returned in a single page.
* @param continuation_token The continuation token for the next set of results.
*/
getSubscriptions({ limit, continuationToken: continuation_token }) {
return this.get(`/subscription`, {
params: {
limit,
continuation_token
}
});
}
/**
* This method allows applications to retrieve a list of all subscriptions.
*
* @param body The create subscription request.
*/
createSubscription(body) {
return this.post(`/subscription`, body);
}
/**
* This method allows applications to retrieve subscription details for the specified subscription.
*
* @param subscriptionId The unique identifier for the subscription.
*/
getSubscription(subscriptionId) {
subscriptionId = encodeURIComponent(subscriptionId);
return this.get(`/subscription/${subscriptionId}`);
}
/**
* This method allows applications to retrieve subscription details for the specified subscription.
*
* @param subscriptionId The unique identifier for the subscription.
* @param body The update subscription request.
*/
updateSubscription(subscriptionId, body) {
subscriptionId = encodeURIComponent(subscriptionId);
return this.put(`/subscription/${subscriptionId}`, body);
}
/**
* This method allows applications to delete a subscription.
*
* @param subscriptionId The unique identifier for the subscription.
*/
deleteSubscription(subscriptionId) {
subscriptionId = encodeURIComponent(subscriptionId);
return this.delete(`/subscription/${subscriptionId}`);
}
/**
* This method allows applications to enable a disabled subscription.
*
* @param subscriptionId The unique identifier for the subscription.
*/
enableSubscription(subscriptionId) {
subscriptionId = encodeURIComponent(subscriptionId);
return this.post(`/subscription/${subscriptionId}/enable`);
}
/**
* This method disables a subscription, which prevents the subscription from providing notifications.
* @param subscriptionId The unique identifier for the subscription.
*/
disableSubscription(subscriptionId) {
subscriptionId = encodeURIComponent(subscriptionId);
return this.post(`/subscription/${subscriptionId}/disable`);
}
/**
* This method triggers a mocked test payload that includes a notification ID, publish date, and so on.
*
* @param subscriptionId The unique identifier for the subscription.
*/
test(subscriptionId) {
subscriptionId = encodeURIComponent(subscriptionId);
return this.post(`/subscription/${subscriptionId}/test`);
}
/**
* This method allows applications to retrieve a paginated collection of destination resources and related details.
* @param subscriptionId The unique identifier for the subscription.
*/
getDestinations({ limit, continuationToken: continuation_token }) {
return this.get(`/destination`, {
params: {
limit,
continuation_token
}
});
}
/**
* This method allows applications to create a destination.
*
* @param body The create destination request.
*/
createDestination(body) {
return this.post(`/destination`, body);
}
/**
* This method allows applications to fetch the details for a destination.
*
* @param destinationId The unique identifier for the destination.
*/
getDestination(destinationId) {
destinationId = encodeURIComponent(destinationId);
return this.get(`/destination/${destinationId}`);
}
/**
* This method allows applications to update a destination.
*
* @param destinationId The unique identifier for the destination.
* @param body The create subscription request.
*/
updateDestination(destinationId, body) {
destinationId = encodeURIComponent(destinationId);
return this.put(`/destination/${destinationId}`, body);
}
/**
* his method provides applications a way to delete a destination.
*
* @param destinationId The unique identifier for the destination.
*/
deleteDestination(destinationId) {
destinationId = encodeURIComponent(destinationId);
return this.delete(`/destination/${destinationId}`);
}
/**
* This method allows applications to retrieve a previously created configuration.
*/
getConfig() {
return this.get(`/config`);
}
/**
* This method allows applications to create a new configuration or update an existing configuration.
*
* @param body The configurations for this application.
*/
updateConfig(body) {
return this.put(`/config`, body);
}
}
exports.default = Notification;
Notification.id = 'Notification';
;