Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: Commerce Layer Notifications API
version: 7.10.1
contact:
name: API Support
url: https://commercelayer.io
email: support@commercelayer.io
description: Headless Commerce for Global Brands.
servers:
- url: https://{your_organization_slug}.commercelayer.io/api
description: API
- url: https://core.commercelayer.io/users/sign_in
description: Sign in
- url: https://docs.commercelayer.io/api
description: API reference
security:
- bearerAuth: []
tags:
- name: notifications
description: resource type
paths:
/notifications:
get:
operationId: GET/notifications
summary: List all notifications
description: List all notifications
tags:
- notifications
responses:
'200':
description: A list of notification objects
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/notificationResponseList'
post:
operationId: POST/notifications
summary: Create a notification
description: Create a notification
tags:
- notifications
requestBody:
required: true
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/notificationCreate'
responses:
'201':
description: The created notification object
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/notificationResponse'
/notifications/{notificationId}:
get:
operationId: GET/notifications/notificationId
summary: Retrieve a notification
description: Retrieve a notification
tags:
- notifications
parameters:
- name: notificationId
in: path
schema:
type: string
required: true
description: The resource's id
responses:
'200':
description: The notification object
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/notificationResponse'
patch:
operationId: PATCH/notifications/notificationId
summary: Update a notification
description: Update a notification
tags:
- notifications
parameters:
- name: notificationId
in: path
schema:
type: string
required: true
description: The resource's id
requestBody:
required: true
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/notificationUpdate'
responses:
'200':
description: The updated notification object
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/notificationResponse'
delete:
operationId: DELETE/notifications/notificationId
summary: Delete a notification
description: Delete a notification
tags:
- notifications
parameters:
- name: notificationId
in: path
schema:
type: string
required: true
description: The resource's id
responses:
'204':
description: No content
components:
schemas:
klarnaPayment:
type: object
properties:
data:
type: object
required:
- type
- attributes
properties:
type:
type: string
description: The resource's type
enum:
- klarna_payments
attributes:
type: object
properties:
session_id:
type: string
description: The identifier of the payment session.
example: xxxx-yyyy-zzzz
nullable: true
client_token:
type: string
description: The public token linked to your API credential. Available upon session creation.
example: xxxx-yyyy-zzzz
nullable: true
payment_methods:
type: array
description: The merchant available payment methods for the assoiated order. Available upon session creation.
example:
- foo: bar
nullable: false
items:
type: object
auth_token:
type: string
description: The token returned by a successful client authorization, mandatory to place the order.
example: xxxx-yyyy-zzzz
nullable: true
mismatched_amounts:
type: boolean
description: Indicates if the order current amount differs form the one of the created payment intent.
example: false
nullable: true
payment_instrument:
type: object
description: Information about the payment instrument used in the transaction.
example:
issuer: cl bank
card_type: visa
nullable: true
created_at:
type: string
description: Time at which the resource was created.
example: '2018-01-01T12:00:00.000Z'
nullable: false
updated_at:
type: string
description: Time at which the resource was last updated.
example: '2018-01-01T12:00:00.000Z'
nullable: false
reference:
type: string
description: A string that you can use to add any external identifier to the resource. This can be useful for integrating the resource to an external system, like an ERP, a marketing tool, a CRM, or whatever.
example: ANY-EXTERNAL-REFEFERNCE
nullable: true
reference_origin:
type: string
description: Any identifier of the third party system that defines the reference code.
example: ANY-EXTERNAL-REFEFERNCE-ORIGIN
nullable: true
metadata:
type: object
description: Set of key-value pairs that you can attach to the resource. This can be useful for storing additional information about the resource in a structured format.
example:
foo: bar
nullable: true
relationships:
type: object
properties:
order:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- orders
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
payment_gateway:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- payment_gateways
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
event_stores:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- event_stores
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
paymentMethod:
type: object
properties:
data:
type: object
required:
- type
- attributes
properties:
type:
type: string
description: The resource's type
enum:
- payment_methods
attributes:
type: object
properties:
name:
type: string
description: The payment method's internal name.
example: Stripe Payment
nullable: true
payment_source_type:
type: string
description: The payment source type. One of 'adyen_payments', 'axerve_payments', 'braintree_payments', 'checkout_com_payments', 'external_payments', 'klarna_payments', 'paypal_payments', 'satispay_payments', 'stripe_payments', or 'wire_transfers'.
example: stripe_payments
nullable: false
enum:
- adyen_payments
- axerve_payments
- braintree_payments
- checkout_com_payments
- external_payments
- klarna_payments
- paypal_payments
- satispay_payments
- stripe_payments
- wire_transfers
currency_code:
type: string
description: The international 3-letter currency code as defined by the ISO 4217 standard.
example: EUR
nullable: true
moto:
type: boolean
description: Send this attribute if you want to mark the payment as MOTO, must be supported by payment gateway.
example: false
nullable: true
require_capture:
type: boolean
description: Send this attribute if you want to require the payment capture before fulfillment.
example: true
nullable: true
auto_place:
type: boolean
description: Send this attribute if you want to automatically place the order upon authorization performed asynchronously.
example: true
nullable: true
auto_capture:
type: boolean
description: Send this attribute if you want to automatically capture the payment upon authorization.
example: false
nullable: true
price_amount_cents:
type: integer
description: The payment method's price, in cents.
example: 0
nullable: false
price_amount_float:
type: number
description: The payment method's price, float.
example: 0.0
nullable: true
formatted_price_amount:
type: string
description: The payment method's price, formatted.
example: €0,00
nullable: true
auto_capture_max_amount_cents:
type: integer
description: Send this attribute if you want to limit automatic capture to orders for which the total amount is equal or less than the specified value, in cents.
example: 0
nullable: true
auto_capture_max_amount_float:
type: number
description: The automatic capture max amount, float.
example: 0.0
nullable: true
formatted_auto_capture_max_amount:
type: string
description: The automatic capture max amount, formatted.
example: €0,00
nullable: true
disabled_at:
type: string
description: Time at which this resource was disabled.
example: '2018-01-01T12:00:00.000Z'
nullable: true
created_at:
type: string
description: Time at which the resource was created.
example: '2018-01-01T12:00:00.000Z'
nullable: false
updated_at:
type: string
description: Time at which the resource was last updated.
example: '2018-01-01T12:00:00.000Z'
nullable: false
reference:
type: string
description: A string that you can use to add any external identifier to the resource. This can be useful for integrating the resource to an external system, like an ERP, a marketing tool, a CRM, or whatever.
example: ANY-EXTERNAL-REFEFERNCE
nullable: true
reference_origin:
type: string
description: Any identifier of the third party system that defines the reference code.
example: ANY-EXTERNAL-REFEFERNCE-ORIGIN
nullable: true
metadata:
type: object
description: Set of key-value pairs that you can attach to the resource. This can be useful for storing additional information about the resource in a structured format.
example:
foo: bar
nullable: true
relationships:
type: object
properties:
market:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- markets
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
payment_gateway:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- payment_gateways
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
store:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- stores
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
attachments:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- attachments
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
event_stores:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- event_stores
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
giftCard:
type: object
properties:
data:
type: object
required:
- type
- attributes
properties:
type:
type: string
description: The resource's type
enum:
- gift_cards
attributes:
type: object
properties:
status:
type: string
description: The gift card status. One of 'draft' (default), 'inactive', 'active', or 'redeemed'.
example: draft
nullable: false
enum:
- draft
- inactive
- active
- redeemed
code:
type: string
description: The gift card code UUID. If not set, it's automatically generated.
example: 32db311a-75d9-4c17-9e34-2be220137ad6
nullable: true
currency_code:
type: string
description: The international 3-letter currency code as defined by the ISO 4217 standard.
example: EUR
nullable: true
initial_balance_cents:
type: integer
description: The gift card initial balance, in cents.
example: 15000
nullable: false
initial_balance_float:
type: number
description: The gift card initial balance, float.
example: 150.0
nullable: false
formatted_initial_balance:
type: string
description: The gift card initial balance, formatted.
example: €150,00
nullable: false
balance_cents:
type: integer
description: The gift card balance, in cents.
example: 15000
nullable: false
balance_float:
type: number
description: The gift card balance, float.
example: 150.0
nullable: false
formatted_balance:
type: string
description: The gift card balance, formatted.
example: €150,00
nullable: false
balance_max_cents:
type: integer
description: The gift card balance max, in cents.
example: 100000
nullable: true
balance_max_float:
type: number
description: The gift card balance max, float.
example: 1000.0
nullable: true
formatted_balance_max:
type: string
description: The gift card balance max, formatted.
example: €1000,00
nullable: true
balance_log:
type: array
description: The gift card balance log. Tracks all the gift card transactions.
example:
- datetime: '2019-12-23T12:00:00.000Z'
balance_change_cents: -10000
- datetime: '2020-02-01T12:00:00.000Z'
balance_change_cents: 5000
nullable: false
items:
type: object
usage_log:
type: object
description: The gift card usage log. Tracks all the gift card usage actions by orders.
example:
eNoKkhmbNp:
- action: use
amount_cents: -1000
balance_cents: 4000
order_number: '11111'
datetime: '2020-02-01T12:00:00.000Z'
nullable: false
single_use:
type: boolean
description: Indicates if the gift card can be used only one.
example: false
nullable: true
rechargeable:
type: boolean
description: Indicates if the gift card can be recharged.
example: true
nullable: true
distribute_discount:
type: boolean
description: Indicates if redeemed gift card amount is distributed for tax calculation.
example: true
nullable: true
image_url:
type: string
description: The URL of an image that represents the gift card.
example: https://img.yourdomain.com/gift_cards/32db311a.png
nullable: true
expires_at:
type: string
description: Time at which the gift card will expire.
example: '2018-01-01T12:00:00.000Z'
nullable: true
recipient_email:
type: string
description: The email address of the associated recipient. When creating or updating a gift card, this is a shortcut to find or create the associated recipient by email.
example: john@example.com
nullable: true
created_at:
type: string
description: Time at which the resource was created.
example: '2018-01-01T12:00:00.000Z'
nullable: false
updated_at:
type: string
description: Time at which the resource was last updated.
example: '2018-01-01T12:00:00.000Z'
nullable: false
reference:
type: string
description: A string that you can use to add any external identifier to the resource. This can be useful for integrating the resource to an external system, like an ERP, a marketing tool, a CRM, or whatever.
example: ANY-EXTERNAL-REFEFERNCE
nullable: true
reference_origin:
type: string
description: Any identifier of the third party system that defines the reference code.
example: ANY-EXTERNAL-REFEFERNCE-ORIGIN
nullable: true
metadata:
type: object
description: Set of key-value pairs that you can attach to the resource. This can be useful for storing additional information about the resource in a structured format.
example:
foo: bar
nullable: true
relationships:
type: object
properties:
market:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- markets
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
gift_card_recipient:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- gift_card_recipients
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
attachments:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- attachments
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
events:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- events
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
tags:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- tags
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
event_stores:
type: object
properties:
data:
type: object
properties:
type:
type: string
description: The resource's type
enum:
- event_stores
id:
type: string
description: Unique identifier for the resource (hash).
example: XAyRWNUzyN
order:
type: object
properties:
data:
type: object
required:
- type
- attributes
properties:
type:
type: string
description: The resource's type
enum:
- orders
attributes:
type: object
properties:
number:
type: string
description: The order identifier. Can be specified if unique within the organization (for enterprise plans only), default to numeric ID otherwise. Cannot be passed by sales channels.
example: '1234'
nullable: true
affiliate_code:
type: string
description: The affiliate code, if any, to track commissions using any third party services.
example: xxxx-yyyy-zzzz
nullable: true
autorefresh:
type: boolean
description: Save this attribute as 'false' if you want prevent the order to be refreshed automatically at each change (much faster).
example: true
nullable: true
place_async:
type: boolean
description: Save this attribute as 'true' if you want perform the place asynchronously. Payment errors, if any, will be collected afterwards.
example: true
nullable: true
status:
type: string
description: The order status. One of 'draft' (default), 'pending', 'editing', 'placing', 'placed', 'approved', or 'cancelled'.
example: draft
nullable: false
enum:
- draft
- pending
- editing
- placing
- placed
- approved
- cancelled
payment_status:
type: string
description: The order payment status. One of 'unpaid' (default), 'authorized', 'partially_authorized', 'paid', 'partially_paid', 'voided', 'partially_voided', 'refunded', 'partially_refunded', or 'free'.
example: unpaid
nullable: false
enum:
- unpaid
- authorized
- partially_authorized
- paid
- partially_paid
- voided
- partially_voided
- refunded
- partially_refunded
- free
fulfillment_status:
type: string
description: The order fulfillment status. One of 'unfulfilled' (default), 'in_progress', 'fulfilled', or 'not_required'.
example: unfulfilled
nullable: false
enum:
- unfulfilled
- in_progress
- fulfilled
- not_required
guest:
type: boolean
description: Indicates if the order has been placed as guest.
example: true
nullable: true
editable:
type: boolean
description: Indicates if the order can be edited.
example: true
nullable: true
customer_email:
type: string
description: The email address of the associated customer. When creating or updating an order, this is a shortcut to find or create the associated customer by email.
example: john@example.com
nullable: true
customer_type:
type: string
description: The type of the associated customer. One of 'new', or 'returning'.
example: returning
nullable: true
enum:
- new
- returning
language_code:
type: string
description: The preferred language code (ISO 639-1) to be used when communicating with the customer. This can be useful when sending the order to 3rd party marketing tools and CRMs. If the language is supported, the hosted checkout will be localized accordingly.
example: it
nullable: true
currency_code:
type: string
description: The international 3-letter currency code as defined by the ISO 4217 standard, automatically inherited from the order's market.
example: EUR
nullable: true
tax_included:
type: boolean
description: Indicates if taxes are included in the order amounts, automatically inherited from the order's price list.
example: true
nullable: true
tax_rate:
type: number
de
# --- truncated at 32 KB (379 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/commerce-layer/refs/heads/main/openapi/commerce-layer-notifications-api-openapi.yml