View Categories

M2E Cloud Sales Channels API

13 min read

OpenAPI: 3.1.0

Version: 4.0

The M2E Cloud Sales Channels API enables integration with various sales channels such as eBay, Amazon, Walmart, Kaufland, TikTok, Temu, Shein, OnBuy and more. It provides functionalities for product management, order processing, and channel-specific operations.



Servers #

Environment URL
production https://m2e.cloud/api/v1/api
dev https://sales-channels.m2ecloud.dev/api/v1/api
local https://10.0.30.15:56000/api/v1/api

Authentication #

JWT #

JWT token for authentication, passed as access-token in header.

  • Type: apiKey
  • In: header
  • Header/Param name: access-token

Default security requirements #

  • JWT

Endpoints #


Catalog #

DELETE /catalog/product/ #

Summary: Deletes products in catalog

OperationId: CatalogProductDelete

Allows batch delete of products in the catalog.


Request body

A list of products to delete.


Responses

GET /catalog/product/ #

Summary: Retrieve a catalog product by SKU

OperationId: CatalogProductGet

Fetches details of a product in the catalog.


Parameters

Name In Type Required Description
sku query string Yes The Stock Keeping Unit (SKU) of the product.

Responses

PATCH /catalog/product/ #

Summary: Update products in catalog

OperationId: catalogProductsUpdate

Allows batch updates of products in the catalog, including currency, images and attributes information.


Request body

A list of products to update.


Responses

POST /catalog/product/ #

Summary: Creates products in catalog

OperationId: CatalogProductCreate

Allows batch create of products in the catalog.


Request body

A list of products to create.


Responses

POST /catalog/product/find/ #

Summary: Retrieve products by criteria

OperationId: CatalogProductsFind

Finds products based on specified criteria.


Request body

Criteria for filtering and sorting products.


Responses

PATCH /catalog/product/variant/ #

Summary: Update variants in catalog

OperationId: catalogProductsVariantsUpdate

Allows batch updates of variants in the catalog.


Request body

A list of variants to update.


Responses


Orders #

POST /order/find/ #

Summary: Retrieve orders by criteria

OperationId: OrdersFind

Finds orders based on specified criteria, such as channel, account token, and various filters like sale date, status, and buyer details.


Parameters

Name In Type Required Description
channel query string Yes The name of the sales channel (e.g., eBay, Amazon).
account_token query string Yes A unique token identifying the account on the specified sales channel.

Request body

Criteria for filtering and sorting orders.


Responses

POST /order/invoice/ #

Summary: Upload invoice for an order

OperationId: UploadOrderInvoice

Processes and uploads invoice data for a specific order using a base64-encoded PDF.


Request body


Responses


User #

GET /user/accounts/ #

Summary: Retrieve accounts associated with a user

OperationId: UserAccountsList

Fetches a list of accounts linked to the specified user, identified by a unique token.


Responses

Components #


Schemas #

Account #

Represents an account object linked to a user, containing channel information, credentials validity, and other identifying details.

  • Type: object
  • Required: token, channel, title, identifier, is_valid, create_date

Properties

Name Type Required Description
token string format:uuid Yes Unique token identifying the account.
channel string (enum) Yes Sales channel associated with this account (e.g., 'ebay', 'amazon').
title string Yes User-defined title for the account, often used for easy identification.
identifier string Yes Unique identifier associated with the account on the specified sales channel.
is_valid boolean Yes Indicates whether the account's credentials are valid and active.
create_date string format:date-time Yes The date and time when the account was created.

CatalogProduct #

  • Type: object
  • Required: token, external_id, sku, quantity, is_simple, status, title, images, attributes, update_date, variants

Properties

Name Type Required Description
token string format:uuid Yes A unique token that identifies the product.
external_id null | string Yes An external identifier for the product, typically used for mapping with external systems.
sku null | string Yes Stock Keeping Unit (SKU).
quantity integer Yes The available stock quantity for the variant.
is_simple boolean Yes Indicates whether the product is a simple product (true) or has variants (false).
status string (enum) Yes The current status of the product.
title string Yes The name or title of the product.
images array of string Yes A list of image URLs representing the product.
attributes CatalogProductAttributes Yes
update_date string format:date-time Yes The date and time when the product was last updated, in ISO 8601 format.
variants array of CatalogProductVariant Yes A list of product variants.

CatalogProductAttributes #

A list of key-value pairs representing attributes.

  • Type: array
  • Items: object

CatalogProductCreate #

  • Type: object
  • Required: sku, status, is_simple, currency, title, variants

Properties

Name Type Required Description
sku string Yes Stock Keeping Unit (SKU).
status integer (enum) Yes Product statuses (e.g., 1 = Active, 2 = Inactive, 3 = Disabled, 4 = Preorder, 5 = Available, 7 = Draft, 8 = Pending, 9 = Private, 10 = Publish, 11 = Archived).
is_simple boolean Yes Indicates whether the product is a simple product (true) or has variants (false).
currency string Yes The currency code for the product's pricing, in ISO 4217 format (e.g., USD, EUR).
title string Yes The title or name of the product.
description string No A detailed description of the product.
images array of string No A list of image URLs representing the product.
attributes CatalogProductAttributes No
variants array of object Yes A list of product variants.

CatalogProductDelete #

  • Type: object
  • Required: sku

Properties

Name Type Required Description
sku string Yes Stock Keeping Unit (SKU).

CatalogProductOptions #

A list of options specifying attributes of the variant (e.g., size, color).

  • Type: array
  • Items: object

CatalogProductsCreateRequest #

An array of products to be created in the catalog.

CatalogProductsCreateResponse #

  • Type: object
  • Required: created

Properties

Name Type Required Description
deleted integer No The count of products successfully created.

CatalogProductsDeleteRequest #

An array of products to be deleted in the catalog.

CatalogProductsDeleteResponse #

  • Type: object
  • Required: deleted

Properties

Name Type Required Description
deleted integer Yes The count of products successfully deleted.

CatalogProductsFindRequest #

  • Type: object

Properties

Name Type Required Description
sort object No Sorting options for the search results.
filters object No Filtering options.
_result object No

CatalogProductsFindResponse #

  • Type: object
  • Required: list, total

Properties

Name Type Required Description
list array of CatalogProduct Yes A list of orders matching the query.
total integer Yes The total number of products matching the query.

CatalogProductsUpdate #

  • Type: object
  • Required: sku

Properties

Name Type Required Description
sku string Yes Stock Keeping Unit (SKU).
currency string No The currency code for the product's pricing, in ISO 4217 format (e.g., USD, EUR).
title string No The title or name of the product.
description string No A detailed description of the product.
images array of string No A list of image URLs representing the product.
attributes CatalogProductAttributes No

CatalogProductsUpdateRequest #

  • Type: object
  • Required: products

Properties

Name Type Required Description
products array of CatalogProductsUpdate Yes An array of products to be updated in the catalog.

CatalogProductsUpdateResponse #

  • Type: object
  • Required: updated

Properties

Name Type Required Description
updated integer Yes The count of products successfully updated.

CatalogProductsVariantsUpdate #

  • Type: object
  • Required: sku

Properties

Name Type Required Description
sku string Yes Stock Keeping Unit (SKU).
barcode string No The unique barcode for the variant, such as UPC or EAN.
price number No The price of the product in the specified currency.
quantity integer No The available stock quantity of the product.
images array of string No List of image URLs associated with the product variant.
options CatalogProductOptions No
attributes CatalogProductAttributes No

CatalogProductsVariantsUpdateRequest #

  • Type: object
  • Required: variants

Properties

Name Type Required Description
variants array of CatalogProductsVariantsUpdate Yes An array of variants to be updated in the catalog.

CatalogProductsVariantsUpdateResponse #

  • Type: object
  • Required: updated

Properties

Name Type Required Description
updated integer Yes The count of variants successfully updated.

CatalogProductVariant #

  • Type: object
  • Required: token, sku, barcode, price, quantity, images, options, attributes, weight, weight_unit, height, depth, width, dimension_unit, update_date

Properties

Name Type Required Description
token string format:uuid Yes A unique token identifying the product variant.
sku null | string Yes Stock Keeping Unit (SKU).
barcode null | string Yes The unique barcode for the variant, such as UPC or EAN.
price number Yes The price of the variant in the specified currency.
quantity integer Yes The available stock quantity for the variant.
images array of string Yes A list of image URLs representing the product variant.
options CatalogProductOptions Yes
attributes CatalogProductAttributes Yes
weight null | number Yes The weight of the product variant.
weight_unit null | string (enum) Yes The unit of measurement for the weight.
height null | number Yes The height of the product variant.
depth null | number Yes The depth of the product variant.
width null | number Yes The width of the product variant.
dimension_unit null | string (enum) Yes The unit of measurement for dimensions (height, width, depth).
update_date string format:date-time Yes The date and time when the variant was last updated, in ISO 8601 format.

Error #

An error response returned when the request is unsuccessful.

  • Type: object
  • Required: message, code, data

Properties

Name Type Required Description
code string Yes An error code that identifies the type of error that occurred.
message string Yes A message that describes the error condition in a human-readable form.
data object | array Yes Additional information that can help the caller understand or fix the issue.

ErrorList #

A list of errors returned when a request is unsuccessful.

  • Type: array
  • Items: Error
  • minItems: 1

Order #

Represents an order with details about the buyer, status, dates, shipping, total cost, and items purchased.

  • Type: object
  • Required: token, order_id, source_order_id, buyer_name, buyer_email, status, is_archived, sale_date, ship_date, ship_by_date, shipping_address, country_code, total, items

Properties

Name Type Required Description
token string format:uuid Yes A unique token associated with the order.
order_id string Yes The order ID assigned by the sales channel.
source_order_id string Yes The store-specific order ID, often used internally.
buyer_name string | null Yes Name of the buyer who placed the order.
buyer_email string | null format:email Yes Email address of the buyer.
status string (enum) Yes Current status of the order.
is_archived boolean Yes Indicates whether the order is archived.
sale_date string format:date-time Yes The date and time when the order was placed.
ship_date string | null format:date-time Yes The actual shipping date of the order, if available.
ship_by_date string | null format:date-time Yes The date by which the order should be shipped.
shipping_address object Yes Shipping address details for the order.
country_code string Yes ISO 3166-1 alpha-2 country code representing the shipping country.
total object Yes Total cost breakdown for the order.
items array of OrderItem Yes List of items included in the order.

OrderItem #

Represents an individual item within an order, including details such as SKU, quantity, and tracking information.

  • Type: object
  • Required: title, sku, barcode, item_id, quantity, price, tracking_service, tracking_numbers

Properties

Name Type Required Description
title string Yes The title or name of the item as it appears in the order.
sku string Yes Stock Keeping Unit (SKU) of the item.
barcode string Yes The barcode or UPC of the item.
item_id string Yes Unique identifier for the item.
quantity integer Yes The quantity of this item ordered.
price number format:float Yes The unit price of the item.
tracking_service string | null Yes The name of the tracking service.
tracking_numbers array of string Yes List of tracking numbers associated with this item.

OrdersFindRequest #

  • Type: object

Properties

Name Type Required Description
sort object No Sorting options for the search results.
filters object No Filtering options.
search string | null No Search by Title, SKU, Identifier, GTIN
_result object No

OrdersFindResponse #

  • Type: object
  • Required: list, total

Properties

Name Type Required Description
list array of Order Yes A list of orders matching the query.
total integer Yes The total number of orders matching the query.

UploadInvoiceRequest #

  • Type: object
  • Required: order_id, invoice_number, invoice_data

Properties

Name Type Required Description
order_id string Yes Unique identifier of the order within the store system.
invoice_number string Yes Invoice number.
total_amount number | null format:float No Total order amount including VAT, in the store's currency.
total_vat_amount number | null format:float No VAT portion of the total amount.
shipping_id string | null No Identifier of the related shipping record, if available.
transaction_id string | null No Identifier of the payment transaction, if available.
invoice_data string Yes Base64-encoded string of the PDF invoice file.

UploadInvoiceResponse #

UserAccountsResponse #

An array of user accounts.


Response components #

ApiError #

Api error


Content


Headers

BadRequest #

Bad request


Content


Headers

InternalError #

Internal server error


Content

NotFound #

Not found


Content

TooManyRequests #

Too many requests


Content


Headers

Unauthorized #

Unauthorized


Content


Header components #

X-RateLimit-Limit #

The number of allowed requests in the current period.

  • Schema type: number
  • Example: 100

X-RateLimit-Remaining #

The number of remaining requests in the current period.

  • Schema type: number
  • Example: 90

X-RateLimit-Retry-After #

The date of number of remaining requests will reset.

  • Schema type: string
  • Format: datetime
  • Example: 2022-11-04T13:43:28Z

Leave a comment

Your email address will not be published. Required fields are marked *