naftiko: 1.0.0-alpha2
info:
label: eBay Notification API — Subscription
description: 'eBay Notification API — Subscription. 11 operations. Lead operation: Subscription. Self-contained Naftiko
capability covering one Ebay business surface.'
tags:
- Ebay
- Subscription
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
EBAY_API_KEY: EBAY_API_KEY
capability:
consumes:
- type: http
namespace: notification-subscription
baseUri: https://api.ebay.com{basePath}
description: eBay Notification API — Subscription business capability. Self-contained, no shared references.
resources:
- name: subscription
path: /subscription
operations:
- name: getsubscriptions
method: GET
description: '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 '
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: continuation_token
in: query
type: string
description: This string value can be used to return the next page in the result set. The string to use here is
returned in the next field of the current page of results.
- name: limit
in: query
type: string
description: The maximum number of subscriptions to return per page from the result set.
Min: 10
Max:
100
Default: 20
- name: createsubscription
method: POST
description: 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.
E
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: 'This header indicates the format of the request body provided by the client. Its value should be set
to application/json.
For more information, '
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: subscription-subscription_id
path: /subscription/{subscription_id}
operations:
- name: getsubscription
method: GET
description: 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 bro
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: subscription_id
in: path
type: string
description: The unique identifier of the subscription to retrieve. Use getSubscriptions to retrieve subscription
IDs.
required: true
- name: updatesubscription
method: PUT
description: '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 '
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: 'This header indicates the format of the request body provided by the client. Its value should be set
to application/json.
For more information, '
required: true
- name: subscription_id
in: path
type: string
description: The unique identifier for the subscription to update. Use getSubscriptions to retrieve subscription
IDs.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: deletesubscription
method: DELETE
description: This method allows applications to delete a subscription. Subscriptions can be deleted regardless of
status.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: subscription_id
in: path
type: string
description: The unique identifier of the subscription to delete. Use getSubscriptions to retrieve subscription
IDs.
required: true
- name: subscription-subscription_id-disable
path: /subscription/{subscription_id}/disable
operations:
- name: disablesubscription
method: POST
description: This method disables a subscription, which prevents the subscription from providing notifications. To
restart a subscription, call enableSubscription.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: subscription_id
in: path
type: string
description: The unique identifier of an enabled subscription that will be disabled. Use getSubscriptions
to retrieve subscription IDs.
required: true
- name: subscription-subscription_id-enable
path: /subscription/{subscription_id}/enable
operations:
- name: enablesubscription
method: POST
description: This method allows applications to enable a disabled subscription. To pause (or disable) an enabled subscription,
call disableSubscription.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: subscription_id
in: path
type: string
description: The unique identifier of a disabled subscription that will be enabled. Use getSubscriptions
to retrieve subscription IDs.
required: true
- name: subscription-subscription_id-filter
path: /subscription/{subscription_id}/filter
operations:
- name: createsubscriptionfilter
method: POST
description: This method allows applications to create a filter for a subscription. Filters allow applications to
only be sent notifications that match a provided criteria. Notifications that do not match this criteria will not
be sent to the destinatio
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: 'This header indicates the format of the request body provided by the client. Its value should be set
to application/json.
For more information, '
required: true
- name: subscription_id
in: path
type: string
description: The unique identifier of the subscription for which a filter will be created.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: subscription-subscription_id-filter-filter_id
path: /subscription/{subscription_id}/filter/{filter_id}
operations:
- name: getsubscriptionfilter
method: GET
description: This method allows applications to retrieve the filter details for the specified subscription filter.
Specify
the subscription filter to retrieve by using the subscription_id and the filter_id
associ
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: filter_id
in: path
type: string
description: 'The unique identifier of the subscription filter. Filter ID values, if configured for a subscription,
will be shown in the subscriptions.filterId field '
required: true
- name: subscription_id
in: path
type: string
description: The unique identifier of the subscription associated with the filter. Use getSubscriptions to
retrieve subscription IDs.
required: true
- name: deletesubscriptionfilter
method: DELETE
description: This method allows applications to disable the active filter on a subscription, so that a new subscription
filter may be added.
Note: Subscription filters in PENDING
status can not be d
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: filter_id
in: path
type: string
description: The unique identifier of the subscription filter to delete. Filter ID values, if configured for a
subscription, will be shown in the subscriptions.filterId<
required: true
- name: subscription_id
in: path
type: string
description: The unique identifier of the subscription associated with the filter to delete. Use getSubscriptions
to retrieve subscription IDs.
required: true
- name: subscription-subscription_id-test
path: /subscription/{subscription_id}/test
operations:
- name: testsubscription
method: POST
description: 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, a
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: subscription_id
in: path
type: string
description: The unique identifier of the subscription to test. Use getSubscriptions to retrieve subscription
IDs.
required: true
authentication:
type: bearer
token: '{{env.EBAY_API_KEY}}'
exposes:
- type: rest
namespace: notification-subscription-rest
port: 8080
description: REST adapter for eBay Notification API — Subscription. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/subscription
name: subscription
description: REST surface for subscription.
operations:
- method: GET
name: getsubscriptions
description: '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 '
call: notification-subscription.getsubscriptions
with:
continuation_token: rest.continuation_token
limit: rest.limit
outputParameters:
- type: object
mapping: $.
- method: POST
name: createsubscription
description: 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.
E
call: notification-subscription.createsubscription
with:
Content-Type: rest.Content-Type
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/subscription/{subscription-id}
name: subscription-subscription-id
description: REST surface for subscription-subscription_id.
operations:
- method: GET
name: getsubscription
description: 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 bro
call: notification-subscription.getsubscription
with:
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updatesubscription
description: '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: notification-subscription.updatesubscription
with:
Content-Type: rest.Content-Type
subscription_id: rest.subscription_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletesubscription
description: This method allows applications to delete a subscription. Subscriptions can be deleted regardless of
status.
call: notification-subscription.deletesubscription
with:
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- path: /v1/subscription/{subscription-id}/disable
name: subscription-subscription-id-disable
description: REST surface for subscription-subscription_id-disable.
operations:
- method: POST
name: disablesubscription
description: This method disables a subscription, which prevents the subscription from providing notifications. To
restart a subscription, call enableSubscription.
call: notification-subscription.disablesubscription
with:
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- path: /v1/subscription/{subscription-id}/enable
name: subscription-subscription-id-enable
description: REST surface for subscription-subscription_id-enable.
operations:
- method: POST
name: enablesubscription
description: This method allows applications to enable a disabled subscription. To pause (or disable) an enabled subscription,
call disableSubscription.
call: notification-subscription.enablesubscription
with:
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- path: /v1/subscription/{subscription-id}/filter
name: subscription-subscription-id-filter
description: REST surface for subscription-subscription_id-filter.
operations:
- method: POST
name: createsubscriptionfilter
description: This method allows applications to create a filter for a subscription. Filters allow applications to
only be sent notifications that match a provided criteria. Notifications that do not match this criteria will not
be sent to the destinatio
call: notification-subscription.createsubscriptionfilter
with:
Content-Type: rest.Content-Type
subscription_id: rest.subscription_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/subscription/{subscription-id}/filter/{filter-id}
name: subscription-subscription-id-filter-filter-id
description: REST surface for subscription-subscription_id-filter-filter_id.
operations:
- method: GET
name: getsubscriptionfilter
description: This method allows applications to retrieve the filter details for the specified subscription filter.
Specify
the subscription filter to retrieve by using the subscription_id and the filter_id
associ
call: notification-subscription.getsubscriptionfilter
with:
filter_id: rest.filter_id
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletesubscriptionfilter
description: This method allows applications to disable the active filter on a subscription, so that a new subscription
filter may be added.
Note: Subscription filters in PENDING
status can not be d
call: notification-subscription.deletesubscriptionfilter
with:
filter_id: rest.filter_id
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- path: /v1/subscription/{subscription-id}/test
name: subscription-subscription-id-test
description: REST surface for subscription-subscription_id-test.
operations:
- method: POST
name: testsubscription
description: 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, a
call: notification-subscription.testsubscription
with:
subscription_id: rest.subscription_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: notification-subscription-mcp
port: 9090
transport: http
description: MCP adapter for eBay Notification API — Subscription. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: this-method-allows-applications-retrieve
description: '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 '
hints:
readOnly: true
destructive: false
idempotent: true
call: notification-subscription.getsubscriptions
with:
continuation_token: tools.continuation_token
limit: tools.limit
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-create
description: 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.
E
hints:
readOnly: false
destructive: false
idempotent: false
call: notification-subscription.createsubscription
with:
Content-Type: tools.Content-Type
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-retrieve-2
description: 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 bro
hints:
readOnly: true
destructive: false
idempotent: true
call: notification-subscription.getsubscription
with:
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-update
description: '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 '
hints:
readOnly: false
destructive: false
idempotent: true
call: notification-subscription.updatesubscription
with:
Content-Type: tools.Content-Type
subscription_id: tools.subscription_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-delete
description: This method allows applications to delete a subscription. Subscriptions can be deleted regardless of status.
hints:
readOnly: false
destructive: true
idempotent: true
call: notification-subscription.deletesubscription
with:
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.
- name: this-method-disables-subscription-which
description: This method disables a subscription, which prevents the subscription from providing notifications. To restart
a subscription, call enableSubscription.
hints:
readOnly: false
destructive: false
idempotent: false
call: notification-subscription.disablesubscription
with:
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-enable
description: This method allows applications to enable a disabled subscription. To pause (or disable) an enabled subscription,
call disableSubscription.
hints:
readOnly: false
destructive: false
idempotent: false
call: notification-subscription.enablesubscription
with:
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-create-2
description: This method allows applications to create a filter for a subscription. Filters allow applications to only
be sent notifications that match a provided criteria. Notifications that do not match this criteria will not be sent
to the destinatio
hints:
readOnly: false
destructive: false
idempotent: false
call: notification-subscription.createsubscriptionfilter
with:
Content-Type: tools.Content-Type
subscription_id: tools.subscription_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-retrieve-3
description: This method allows applications to retrieve the filter details for the specified subscription filter.
Specify
the subscription filter to retrieve by using the subscription_id and the filter_id
associ
hints:
readOnly: true
destructive: false
idempotent: true
call: notification-subscription.getsubscriptionfilter
with:
filter_id: tools.filter_id
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.
- name: this-method-allows-applications-disable
description: This method allows applications to disable the active filter on a subscription, so that a new subscription
filter may be added.
Note: Subscription filters in PENDING
status can not be d
hints:
readOnly: false
destructive: true
idempotent: true
call: notification-subscription.deletesubscriptionfilter
with:
filter_id: tools.filter_id
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.
- name: this-method-triggers-mocked-test
description: 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, a
hints:
readOnly: true
destructive: false
idempotent: false
call: notification-subscription.testsubscription
with:
subscription_id: tools.subscription_id
outputParameters:
- type: object
mapping: $.