Added identity providers —
Check the API reference
LogoLogo
Other APIsChangelog
  • Welcome to Provisioning API
  • Getting started
    • API specification
    • Authorization
    • Applications
  • API reference
    • API credentials
      • The API credential object
      • Create an API credential
      • List all API credentials
      • Retrieve an API credential
      • Update an API credential
      • Delete an API credential
    • Application memberships
      • The application membership object
      • Create an application membership
      • List all application memberships
      • Retrieve an application membership
      • Update an application membership
      • Delete an application membership
    • Identity providers
      • The identity provider object
      • Create an identity provider
      • List all identity providers
      • Retrieve an identity provider
      • Update an identity provider
      • Delete an identity provider
    • Memberships
      • The membership object
      • Create a membership
      • List all memberships
      • Retrieve a membership
      • Update a membership
      • Delete a membership
    • Membership profiles
      • The membership profile object
      • Create a membership profile
      • List all membership profiles
      • Retrieve a membership profile
      • Update a membership profile
      • Delete a membership profile
    • Organizations
      • The organization object
      • Create an organization
      • List all organizations
      • Retrieve an organization
      • Update an organization
    • Permissions
      • The permission object
      • Create a permission
      • List all permissions
      • Retrieve a permission
      • Update a permission
    • Roles
      • The role object
      • Create a role
      • List all roles
      • Retrieve a role
      • Update a role
    • User
      • The user object
      • Retrieve the user
      • Update the user
    • Versions
      • The version object
      • List all versions
      • Retrieve a version
On this page
  • Base endpoint
  • Headers
  • API versioning
  • Rate limits
  • Errors
  1. Getting started

API specification

Basic info about the Provisioning API available operations, endpoints, headers, rate limits, and error handling

PreviousWelcome to Provisioning APINextAuthorization

Last updated 27 days ago

Commerce Layer Provisioning API is a fast REST API 100% compliant with the JSON API specification (v1.0). It supports compound documents, sparse fieldsets, resource linking, filtering, sorting, pagination, and more. To learn more about how to leverage those features, the basic CRUD actions syntax and payloads you can refer to the Core API documentation:

All the strings passed to the API must be UTF-8 encoded.

Base endpoint

All API requests must be made over HTTPS to the following base endpoint:

https://provisioning.commercelayer.io

Headers

Include the following HTTP request headers when making calls to the Provisioning API endpoints:

Header
Required
Details

Accept

Must be application/vnd.api+json.

Accept-Version

Content-Type

Must be application/vnd.api+json (required only for POST, PUT, and PATCH requests).

Authorization

Must be Bearer {{your_access_token}}.

Where {{your_access_token}} is the access token you get by authenticating to the Provisioning API.

API versioning

The Accept-Version header is optional and will be used to manage future versioning. When different versions of the Provisioning API are available you'll be able to request a specific one just by changing it as follows:

Accept-Version: v{{version}}

Where {{version}} is the unique progressive number that identifies the version you want to use.

The latest version of the Provisioning API is v1 — use v1 as the Accept-Version header to make your calls.

Rate limits

Limit type
Max number of requests
Time window

Average

200 (to all endpoints)

1 min

Burst

50 (per endpoint)

10 secs

IP addresses that exceed the rates above will be blocked until the frequency of the specific call drops below the allowed limit.

Errors

Commerce Layer Provisioning API uses HTTP response codes to show the success or failure of an API request.

  • Codes in the 2xx range indicate success.

  • Codes in the 4xx range indicate an error that failed given the information provided (e.g. bad request, failed validation, or authentication issues).

  • Codes in the 5xx range indicate an unhandled error (these are rare and should never happen).

Correct error handling is important. We recommend writing code that gracefully handles all possible API exceptions.

Must be v1 (learn more about ).

The requests you perform to the Provisioning API are currently subject to the as the uncacheable requests to the Core API in live mode and differentiated by .

The Core API /oauth/token endpoint you need to use for authentication is subject to (max 30 reqs / 1 min).

For a complete list of all the possible error codes, messages, and descriptions please refer to the of the Core API documentation.

versioning
Fetching resources
Fetching relationships
Including associations
Sparse fieldsets
Sorting results
Pagination
Filtering data
Creating resources
Updating resources
Deleting resources
same rate limits
limit type
stricter limits
related section