Elastic Path website screenshot

Elastic Path

Elastic Path is a headless commerce platform providing REST and GraphQL APIs for managing catalogs, products, price books, promotions, carts, orders, subscriptions, payments, and customer accounts in composable commerce architectures. It is designed for B2B, D2C, and multi-brand enterprise retailers building API-first, microservices-based shopping experiences.

Elastic Path publishes 99 APIs on the APIs.io network, including Account Addresses API, Account Authentication Settings API, Account Cart Associations API, and 96 more. Tagged areas include Commerce, Headless Commerce, Composable Commerce, eCommerce, and B2B.

The Elastic Path catalog on APIs.io includes 1 Spectral governance ruleset.

Elastic Path’s developer surface includes authentication, documentation, engineering blog, pricing, support, and 12 more developer resources.

43.0/100 developing ▬ flat Agent 41/100 agent ready Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessSelf serve
100 APIs
CommerceHeadless CommerceComposable CommerceeCommerceB2BProductsCatalogsOrdersPromotionsSubscriptionsPayments

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 43.0/100 · developing
Contract Quality 15.9 / 25
Developer Ergonomics 6.1 / 20
Commercial Clarity 3.7 / 20
Operational Transparency 6.8 / 13
Governance 7.0 / 12
Discoverability 5.0 / 10
Agent readiness — 41/100 · agent ready
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/elastic-path: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 100

Individual APIs this provider publishes, each with its own machine-readable definition.

Elastic Path GraphQL API

GraphQL abstraction over a subset of the Elastic Path Commerce Cloud APIs, providing a flexible query interface optimized for shopper-facing experiences including product browsi...

Elastic Path Account Addresses API

The API to organize account addresses.

Elastic Path Account Authentication Settings API

You can use the Account Authentication Settings endpoint to retrieve or modify how settings controlling account and account member authentication.

Elastic Path Account Cart Associations API

You can create associations between an account and one or more carts. After cart associations exist for an account, those carts are accessible across any device. You can delete ...

Elastic Path Account Management Authentication API

Commerce provides authentication tokens for an `Account` and an `Account Member`.

Elastic Path Account Members API

An `Account Member` resource is a user that you can add to accounts using account memberships. Account members API is read only, and you cannot add users using this API. There i...

Elastic Path Account Membership API

The `Account Membership` resource represents the relationship between an account and an account member. This relationship is many to many. Each account can have multiple account...

Elastic Path Account Membership Settings API

Account Membership Settings allow Account Members to be associated to, at most, N accounts at a time. You can set this value to any number up to 10,000. The default value is 10,...

Elastic Path Account Tags API

Account Tags are custom labels or metadata that can be attached to accounts to help organize and filter them based on specific attributes or criteria.

Elastic Path Accounts API

An Account represents the entity that participates in a Commerce transaction. Accounts can have Carts, Orders, Subscriptions, and Addresses.

Elastic Path Administrator Latest Releases Catalog API API

Use the Administrator Latest Releases Catalog View API to retrieve product, hierarchy and node information. :::danger The Administrator Latest Releases Catalog View API is for A...

Elastic Path Application Keys API

You can use application keys to generate `client_credentials` and `implicit` tokens.

Elastic Path Authentication Realms API

An authentication realm is a container that consists of the following: - Users - Represented by [User Authentication Info](/docs/api/single-sign-on/user-authentication-infos) ob...

Elastic Path Bundle Component Products Relationships API

With Product Experience Manager, you can create and manage bundles. A bundle is a purchasable product, consisting of one or more products that you want to sell together. You can...

Elastic Path Cart Items API

Products added to a cart are referred to as a `cart_item`.

Elastic Path Cart Management API

A Cart contains the product and custom cart items that a user intends to purchase. After a Cart is ready for Checkout, you can use the [Checkout endpoint](/docs/api/carts/checko...

Elastic Path Cart Payments API

The Cart Payments API from Elastic Path — 1 operation(s) for cart payments.

Elastic Path Cart Settings API

Use Cart Settings to configure cart behavior for your store, including cart expiry, custom discounts, rule promotions, deferred inventory checks, and cart visibility for admins.

Elastic Path Cart Shipping Groups API

The Cart Shipping Groups API from Elastic Path — 2 operation(s) for cart shipping groups.

Elastic Path Catalogs API

A catalog contains the products available for sale either in your organization or store. A catalog also contains information about how to organize those products for navigation ...

Elastic Path Checkout API

The checkout workflow ties together many of the key concepts covered in this section. When a customer initiates the checkout process, an order is created from the cart. The orde...

Elastic Path Currencies API

:::caution - There is a hard limit of 10 currencies per store. :::

Elastic Path Custom API Entries API

A **Custom API Entry** is a specific instance of a resource, such as a single wishlist in a Custom API for wishlists. Custom API Entries can be accessed in two different ways, v...

Elastic Path Custom API Role Policies API

A Custom API Role Policy defines the level of access a role has to a Custom API. By default, administrative roles like **Store Admin** or **Org Admin** have full access to all C...

Elastic Path Custom APIs API

Custom APIs allow you to extend the capabilities of Commerce. With Custom APIs, you can efficiently manage large data sets while benefiting from both simple and complex multidim...

Elastic Path Custom Discounts API

With custom discounts, you can allow your shoppers to apply discounts from external services to their purchases. To apply custom discounts to carts and cart items, you need to s...

Elastic Path Custom Fields API

A Custom Field represents a single field of data (for example a Product Rating). A Custom API is composed of one or more Custom Fields. Here is a comparison of different types a...

Elastic Path Custom Relationships API

The Custom Relationships API from Elastic Path — 2 operation(s) for custom relationships.

Elastic Path Customer Addresses API

The API to organize customer addresses.

Elastic Path Customer Cart Associations API

You can create associations between a customer and one or more carts. After cart associations exist for a customer, those carts are accessible across any device. You can delete ...

Elastic Path Dunning Rules API

Dunning is the process of handling failed payment attempts. This is important for recovering revenue from failed payments, reduces customer churn and maintains cashflow. By impl...

Elastic Path Entries API

### Entries in Commerce Entries hold the pieces of data collected within the fields. If your flow has more than one field related to it, you see multiple field slugs. ### Entrie...

Elastic Path Entry Relationships API

### Entry Relationships in Commerce When you create a field that uses `relationship` as a `field_type`, you update your entry values using the `Entry Relationship` endpoints. ##...

Elastic Path Extending Products with Templates API

```mdx-code-block import TemplatesOverview from '/docs/partials/pxm/templates/extendingproducts.mdx'; ```

Elastic Path Features API

A feature indicates some benefit that is received as a result of having an active subscription. This translates to tags being applied to the subscriber's account allowing access...

Elastic Path Fields API

With fields, you can: - in Commerce, use a field in your flows to represent single field of data (for example a `Product Rating`) to be applied to an entity - in Product Experie...

Elastic Path Files API

You can upload image files or URLs by using `multipart/form-data` as the content type header. For example, `"Content-Type: multipart/form-data" \`. Commerce supports the followi...

Elastic Path Flows API

### Flows in Commerce There are two scenarios for using flows: - Extend an existing resource, such as customers and orders. - Create a new resource, such as a blog, wishlist, or...

Elastic Path Gateways API

The Gateways API from Elastic Path — 12 operation(s) for gateways.

Elastic Path Generate an Access Token API

The Generate an Access Token API from Elastic Path — 1 operation(s) for generate an access token.

Elastic Path Hierarchies API

```mdx-code-block import HierarchyOverview from '/docs/partials/pxm/hierarchies/hierarchies.mdx'; import HierarchyCatalog from '/docs/partials/pxm/hierarchies/hierarchycatalogs....

Elastic Path Import a Price Book and Prices API

You can create and update product price books and prices in bulk, at both organization and store level, using the Price Book Import API. This is useful, for example, if you have...

Elastic Path Imports API

You can import stock positions for up to 50,000 products in a single operation via an import. This is useful for synchronosing external systems with Elastic Path. The API uses a...

Elastic Path Indexable Fields API

Indexable Fields allow you to extend and fine-tune the search schema. By default, the search index includes all the core product fields like name, description, SKU, slug etc. In...

Elastic Path Integrations API

Setting up and managing integrations.

Elastic Path Inventory API

The Inventory API allows you to manage stock for products at both organization and store levels. Each product keeps a history of inventory transactions, enabling easier stock au...

Elastic Path Invoices API

Invoices represent the amount a customer owes for a subscription. Elastic Path Subscriptions generates an invoice for every period in a subscription billing cycle. Invoices prov...

Elastic Path Jobs API

Jobs manage the indexing operations for catalog search. When catalogs are published or when reindexing is required, jobs process the product data and build search indexes. ### J...

Elastic Path Locations API

The Locations API from Elastic Path — 2 operation(s) for locations.

Elastic Path Logs Time to Live Settings API

You can use the Logs TTL Settings endpoint to retrieve and update settings controlling logs time-to-live (TTL).

Elastic Path Merchant Realm Mappings API

The Merchant Realm Mappings API from Elastic Path — 2 operation(s) for merchant realm mappings.

Elastic Path Offerings API

An offering is a combination of plans and pricing options; plans are combined with one or more pricing options to form an offering. For example, your company provides online str...

Elastic Path OIDC Authentication API

The OIDC IDP Login endpoints handle the initiation of OpenID Connect authentication flows. When a user needs to authenticate via OIDC, they are redirected to these endpoints whi...

Elastic Path OIDC Profiles API

An OpenID Connect Profile resource represents a specific configuration of an OpenID Connect Provider. An authentication realm can have multiple OpenID Connect Profiles. This all...

Elastic Path Order Shipping Groups API

The Order Shipping Groups API from Elastic Path — 2 operation(s) for order shipping groups.

Elastic Path Orders API

An Order is created through the [checkout](/docs/api/carts/checkout) endpoint within the Carts API. An order is created after a customer checks out their cart. On creation, the ...

Elastic Path Password Profiles API

A `password_profile` resource represents a specific configuration that allows users to authenticate through username and password. Password Profiles support One-Time Password To...

Elastic Path Payments API

When you [checkout](/docs/api/carts/checkout) a [cart](/docs/api/carts/cart-management), an unpaid [order](/docs/api/carts/orders) is returned. You can process the payment for t...

Elastic Path Personal Data Erasure Requests API

Erasure requests enable you to exercise the right, referred to in regulations such as GDPR, as the right to be forgotten or right to erase. Erasure requests allow you to wipe ou...

Elastic Path Personal Data Logs API

When a user’s personal data is changed, an event is logged by Commerce. You can use the Personal Data Logs endpoint to access these logs. This API is read only, and you cannot a...

Elastic Path Personal Data Related Data Entries API

This is a supplementary endpoint for the [logs](/docs/api/personal-data/logs-time-to-live-settings) endpoint. It allows you to view all data entries that are related to the reso...

Elastic Path Price Book Modifiers API

You can use price modifiers to change the price property of child products. By default, child products inherit the same price as their base products. Using price modifiers, you ...

Elastic Path Price Books API

Price books contain prices for the products in your catalog. Each catalog must have one price book. In your storefront, the product prices are displayed in the currency for the ...

Elastic Path Prices API

Price books contain prices for the products in your catalog. Use the Price Books API to create price books and add product prices to the price book. ### Volume (tiers) Pricing U...

Elastic Path Product Export API

```mdx-code-block import ProductExport from '/docs/partials/pxm/import/export.mdx'; ``` ### Characteristics of Exporting Products - Product exports are an asyn...

Elastic Path Product File Relationships API

Products are the items or services that you might want to sell in your store. In Product Experience Manager, products can also have associated rich media assets, such as product...

Elastic Path Product Image Relationships API

Products are the items or services that you might want to sell in your store. In Product Experience Manager, products can also have associated rich media assets, such as product...

Elastic Path Product Import/Bulk Update API

```mdx-code-block import ProductImport from '/docs/partials/pxm/import/import.mdx'; ``` #### Using Imported Main Image Files You can use the main images that y...

Elastic Path Product Relationships API

The Product Relationships API from Elastic Path — 3 operation(s) for product relationships.

Elastic Path Product Tags API

```mdx-code-block import ProductTags from '/docs/partials/pxm/products/tags.mdx'; ```

Elastic Path Products API

```mdx-code-block import ProductsOverview from '/docs/partials/pxm/products/productsoverview.mdx'; import ProductTypes from '/docs/partials/pxm/products/types.mdx'; import Produ...

Elastic Path Promotion Codes API

You can apply promotions automatically to all customer carts, or you can create promotion codes that customers must enter to receive the discount. You can enable this feature by...

Elastic Path Promotion Jobs API

Use Jobs API to initiate a job within a promotion. Jobs operate asynchronously and have a different status based on their progress. The following are the job statuses: - `pendin...

Elastic Path Promotions Standard API

The Promotions Standard API from Elastic Path — 3 operation(s) for promotions standard.

Elastic Path Proration Policies API

Proration is the adjustment of charges or credits on a subscriber's account based on the amount of time a service is used. Proration ensures that subscribers are only charged fo...

Elastic Path Releases API

When a catalog is published, a catalog release is created. A catalog release provides a snapshot of the product information taken at the time of publication. You can have one or...

Elastic Path Rule Promotion Codes API

The Rule Promotion Codes API from Elastic Path — 2 operation(s) for rule promotion codes.

Elastic Path Rule Promotion Jobs API

The Rule Promotion Jobs API from Elastic Path — 3 operation(s) for rule promotion jobs.

Elastic Path Rule Promotion Usages API

The Rule Promotion Usages API from Elastic Path — 3 operation(s) for rule promotion usages.

Elastic Path Rule Promotions API

The Rule Promotions API from Elastic Path — 2 operation(s) for rule promotions.

Elastic Path Rules API

If your store requires multiple catalogs, add catalog rules to control when a catalog is displayed. A catalog rule contains a catalog plus the criteria under which to display th...

Elastic Path Schedules API

You can schedule your billing, tax, and payment runs. By scheduling billing, tax, and payment runs, you automate the process, reducing manual intervention and ensuring the jobs ...

Elastic Path Search API

The Search API enables you to search for products in your published catalogs. Search provides powerful capabilities including full-text search, filtering, faceting, and sorting ...

Elastic Path Search Indexes API

Search Indexes represent the indexed data for your catalog releases. Each time a catalog is published with search enabled, a search index is created containing the product data ...

Elastic Path Search Profiles API

Search Profiles are configuration objects that control how search queries are executed. They provide a powerful way to customize search relevance, filtering, and ranking without...

Elastic Path Searchable Fields API

The Searchable Fields API returns a list of all fields available for searching, filtering, faceting, and sorting in your search queries. This includes both the standard product ...

Elastic Path Settings API

The Settings API allow you to configure global settings for your project.

Elastic Path Shopper Catalog API API

Use the Shopper Catalog View API to retrieve hierarchy, node and product information for a catalog release. When you publish a catalog for a store, you can define catalog rules ...

Elastic Path Standard Shopper Roles API

Standard Shopper Roles represent the roles of customers.

Elastic Path Standard User Roles API

Standard User Roles represent the roles that can be assigned to users through Commerce Manager. These roles define the level of access a user has to Commerce Manager.

Elastic Path Stopword Sets API

Stopword Sets allow you to define sets of common words (such as "the", "a", "an", "is") that should be ignored during search queries. By removing these low-value terms from sear...

Elastic Path Subscribers API

A subscriber is someone who subscribes to your plan or service.

Elastic Path Subscriptions API

Elastic Path Subscriptions enables you to manage your subscriptions plans and pricing options, using offerings. Offerings can contain any combination of pricing options and a pl...

Elastic Path Synonym Sets API

Synonym Sets allow you to define groups of equivalent or related terms so that searches for one term also return results for its synonyms. This helps shoppers find products rega...

Elastic Path Tax Items API

Taxes differ by country and can differ within the country by region, state, or province. Each jurisdiction has a unique tax code and rate. If your store serves many jurisdiction...

Elastic Path Transactions API

Methods to allow you to modify and view a products stock via transactions.

Elastic Path User Authentication Infos API

A `user-authentication-info` represents a user. This object contains information, such as the name and email address, and has sub-resources for each mechanism that the user can ...

Elastic Path User Authentication OIDC Profile Infos API

The `user-authentication-oidc-profile-info` object is the information object about the relationship between a [User Authentication Info](/docs/api/single-sign-on/user-authentica...

Elastic Path User Authentication Password Profile Infos API

The `user-authentication-password-profile-info` object is the information object about the relationship between a [User Authentication Info](/docs/api/single-sign-on/user-authen...

Elastic Path Variations API

```mdx-code-block import VariationsOverview from '/docs/partials/pxm/variations/variationsoverview.mdx'; import VariationsReusability from '/docs/partials/pxm/variations/variati...

Scroll for all 100

GraphQL 1

GraphQL schemas published by this provider.

Elastic Path GraphQL API

GraphQL abstraction over the Elastic Path Commerce Cloud platform, providing a flexible query interface optimized for shopper-facing and headless commerce experiences. The Graph...

GRAPHQL

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Elastic Path Rate Limits

3 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Spectral Rules 1

Spectral governance rulesets for linting and validating these APIs.

Elastic Path API Rules

6 rules · 4 warnings 2 info

SPECTRAL

JSON Schema 12

Standalone JSON Schema definitions for this provider's data models.

Account Management Introduction

0 properties

JSON SCHEMA

Carts, Checkout, Orders Introduction

0 properties

JSON SCHEMA

Catalogs Introduction

0 properties

JSON SCHEMA

Currencies Introduction

0 properties

JSON SCHEMA

Files Introduction

0 properties

JSON SCHEMA

Integrations Introduction

0 properties

JSON SCHEMA

Inventories Introduction

0 properties

JSON SCHEMA

Payment Gateways Introduction

0 properties

JSON SCHEMA

Price Books Introduction

0 properties

JSON SCHEMA

Promotions Standard Introduction

0 properties

JSON SCHEMA

Subscriptions Introduction

0 properties

JSON SCHEMA

Scroll for all 12

Examples 1

Example request and response payloads for these APIs.

Elastic Path Examples

4 fields

EXAMPLE

Security Posture 3

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Elastic Path Authentication

http · 1 scheme

SECURITY

Elastic Path Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Elastic Path Vulnerability Disclosure

security.txt · contact published

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Elastic Path Agentic Access

541 operations · 294 acting · 3 human-in-the-loop

541 operations · 294 acting

AGENTIC

Resources

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Build 2

SDKs, sample code, and the tooling you integrate with

Access & Security 3

Authentication, authorization, and security posture

Operate 3

Status, limits, changes, and where to get help

Commercial 3

Pricing, plans, and the legal terms of use

Company 3

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: elastic-path
name: Elastic Path
description: Elastic Path is a headless commerce platform providing REST and GraphQL APIs for managing catalogs, products,
  price books, promotions, carts, orders, subscriptions, payments, and customer accounts in composable commerce architectures.
  It is designed for B2B, D2C, and multi-brand enterprise retailers building API-first, microservices-based shopping experiences.
accessModel:
  pricing: unknown
  onboarding: self-serve
  trial: false
  try_now: false
  public: false
  label: Self-serve signup
  confidence: medium
  source:
  - authentication
  generated: '2026-07-22'
  method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/elastic-path.png
url: https://raw.githubusercontent.com/api-evangelist/elastic-path/refs/heads/main/apis.yml
created: 2026-06-13
modified: 2026-06-13
specificationVersion: '0.19'
tags:
- Commerce
- Headless Commerce
- Composable Commerce
- eCommerce
- B2B
- Products
- Catalogs
- Orders
- Promotions
- Subscriptions
- Payments
apis:
- aid: elastic-path:graphql-api
  name: Elastic Path GraphQL API
  description: GraphQL abstraction over a subset of the Elastic Path Commerce Cloud APIs, providing a flexible query interface
    optimized for shopper-facing experiences including product browsing and catalog queries.
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  humanURL: https://www.elasticpath.com/technologies/graphql-ecommerce
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Commerce
  - GraphQL
  - Catalogs
  - Products
  - Storefront
  properties:
  - type: Documentation
    url: https://www.elasticpath.com/technologies/graphql-ecommerce
  - type: GitHubRepository
    url: https://github.com/elasticpath/elasticpath-graphql-server
  - url: graphql/elastic-path-graphql.md
    type: GraphQL
  - url: graphql/elastic-path-schema.graphql
    type: GraphQLSchema
- aid: elastic-path:elastic-path-account-addresses-api
  name: Elastic Path Account Addresses API
  description: The API to organize account addresses.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Addresses
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-addresses-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-authentication-settings-api
  name: Elastic Path Account Authentication Settings API
  description: You can use the Account Authentication Settings endpoint to retrieve or modify how settings controlling account
    and account member authentication.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Authentication Settings
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-authentication-settings-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-cart-associations-api
  name: Elastic Path Account Cart Associations API
  description: 'You can create associations between an account and one or more carts. After cart associations exist for an
    account, those carts are accessible across any device. You can delete associations as required.


    There are two ways to access the cart: with an [Account Management Authentication Tokens](/docs/api/accounts/post-v-2-account-members-tokens)
    and without one.


    ### With an `Account Management Authentication` token


    These endpoints are for users who authenticated implicitly and require an Account Management Authentication token in the
    header to access the account cart associations APIs. For more information, see the [Account Token](/docs/api/accounts/post-v-2-account-members-tokens)
    documentation.


    #### Cart creation


    Shoppers create carts and can use any of the carts that they created to check out an order.


    :::note


    You can create a cart id, name, and description for the cart. The cart requires a name. Ensure that the string length
    is greater than or equal to one. Use any symbol in the name and description. For cart id, ensure that you follow the guidelines
    for safe characters. For more information about cart id naming requirements, see [Safe Characters](/guides/Getting-Started/safe-characters).


    :::


    ### Without an `Account Management Authentication` token


    These endpoints are for users who use the Client Credentials Token and do not require an account management authentication
    token in the header to access the account cart associations APIs. For more information, see the [Authentication](/docs/authentication/security)
    documentation.


    This user acts as a system administrator and can call any account cart association operations for any account and cart.


    ### Error Codes


    You might encounter the following response codes, depending on the scenario:


    * `400` - `The type does not exist or is not listed as account` - Ensure that the type is `account` and is present.


    * `403` - `Cannot associate more than one account`.


    * `403` - `Account does not have the required permissions to fulfill this request`.


    * `403` - `Invalid json payload` - Check JSON input. The request body must be an array `[]`. If the request body is an
    object, the error is generated.'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Cart Associations
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-cart-associations-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-management-authentication-api
  name: Elastic Path Account Management Authentication API
  description: Commerce provides authentication tokens for an `Account` and an `Account Member`.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Management Authentication
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-management-authentication-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-members-api
  name: Elastic Path Account Members API
  description: 'An `Account Member` resource is a user that you can add to accounts using account memberships.


    Account members API is read only, and you cannot add users using this API. There is a 1 to 1 correspondence between User
    Authentication Info and an Account Member, the corresponding objects have the same id. You must use the `user_authentication_info`
    object to create users in the authentication realm of account authentication settings. For more information on adding
    account members, see the [Adding Accounts and Account Members](/guides/How-To/Accounts/add-account-and-member) section.'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Members
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-members-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-membership-api
  name: Elastic Path Account Membership API
  description: The `Account Membership` resource represents the relationship between an account and an account member. This
    relationship is many to many. Each account can have multiple account members, and each account member can be a member
    of multiple accounts.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Membership
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-membership-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-membership-settings-api
  name: Elastic Path Account Membership Settings API
  description: 'Account Membership Settings allow Account Members to be associated to, at most, N accounts at a time. You
    can set this value to any number up to 10,000. The default value is 10,000.


    This setting is only applied to new account memberships. If an account member is added to 3 accounts, and the setting
    is reduced to 1, the account member remains in the 3 accounts and can no longer be added to more.'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Membership Settings
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-membership-settings-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-account-tags-api
  name: Elastic Path Account Tags API
  description: Account Tags are custom labels or metadata that can be attached to accounts to help organize and filter them
    based on specific attributes or criteria.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Account Tags
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-account-tags-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-accounts-api
  name: Elastic Path Accounts API
  description: An Account represents the entity that participates in a Commerce transaction. Accounts can have Carts, Orders,
    Subscriptions, and Addresses.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Accounts
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-accounts-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-administrator-latest-releases-catalog-api-api
  name: Elastic Path Administrator Latest Releases Catalog API API
  description: 'Use the Administrator Latest Releases Catalog View API to retrieve product, hierarchy and node information.


    :::danger


    The Administrator Latest Releases Catalog View API is for Administrator use only. Do not use these endpoints on your customer-facing
    frontends.


    :::


    Publishing a catalog creates a release of that catalog that you can use in an organization or in a specific store or other
    shopper experience. You can retrieve the hierarchies, nodes, and the `live` products associated with a catalog release.
    You can see which parent nodes a product is associated with. This is useful if want to improve how your shoppers search
    your store, for example.


    Currently, published catalogs are limited to the current release and two releases prior to the current release.'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Administrator Latest Releases Catalog API
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-administrator-latest-releases-catalog-api-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-application-keys-api
  name: Elastic Path Application Keys API
  description: You can use application keys to generate `client_credentials` and `implicit` tokens.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Application Keys
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-application-keys-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-authentication-realms-api
  name: Elastic Path Authentication Realms API
  description: "An authentication realm is a container that consists of the following:\n\n  - Users -  Represented by [User\
    \ Authentication Info](/docs/api/single-sign-on/user-authentication-infos)\nobjects\n  - Authentication profiles - Ways\
    \ for the users to authenticate, such as one or more [OpenID Connect\nProfiles](/docs/api/single-sign-on/oidc-profiles)\
    \ or [Password Profiles](/docs/api/single-sign-on/password-profiles)\n  - Mappings between users and authentication profiles\
    \ - [User Authentication OpenID Connect Profile\nInfo](/docs/api/single-sign-on/user-authentication-oidc-profile-infos)\
    \ or [User Authentication Password Profile Infos](/docs/api/single-sign-on/user-authentication-password-profile-infos)\n\
    Here's a domain diagram showing these relationships\n![authentication realm](/assets/authentication-realm-domain.png)\n\
    \nComposable Commerce comes with three per-store pre-set realms:\n  - Buyer Organization. For customers: users who buy\
    \ products from your store.\n  - Merchant Organization. For administrators: users who log in to Commerce Manager to modify\
    \ the\nstore’s settings or catalog.\n  - Account Management Realm. For account members: users who buy products from your\
    \ store on behalf\nof accounts. Password profiles are only available for account management realm."
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Authentication Realms
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-authentication-realms-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-bundle-component-products-relationships-api
  name: Elastic Path Bundle Component Products Relationships API
  description: 'With Product Experience Manager, you can create and manage bundles. A bundle is a purchasable product, consisting
    of one or more products that you want to sell together.


    You can create multiple components within a bundle. Each component must have at least one or more options. Each option
    is a product and a quantity.'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Bundle Component Products Relationships
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-bundle-component-products-relationships-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-cart-items-api
  name: Elastic Path Cart Items API
  description: Products added to a cart are referred to as a `cart_item`.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Cart Items
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-cart-items-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-cart-management-api
  name: Elastic Path Cart Management API
  description: 'A Cart contains the product and custom cart items that a user intends to purchase. After a Cart is ready for
    Checkout, you can use the [Checkout endpoint](/docs/api/carts/checkout) to convert the cart to an order.


    :::note


    - Adding, modifying, or removing any cart items, custom items, or promotions always returns the cart meta, calculated
    using the calculation method. This is useful to update the client with up-to-date totals.

    - We will automatically delete carts 7 days after they were last updated.

    - If you do not pass a `X-MOLTIN-CURRENCY` header specifying what currency you would like the cart to use, the products
    in the cart are converted to your default currency.


    :::'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Cart Management
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-cart-management-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-cart-payments-api
  name: Elastic Path Cart Payments API
  description: The Cart Payments API from Elastic Path — 1 operation(s) for cart payments.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Cart Payments
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-cart-payments-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-cart-settings-api
  name: Elastic Path Cart Settings API
  description: Use Cart Settings to configure cart behavior for your store, including cart expiry, custom discounts, rule
    promotions, deferred inventory checks, and cart visibility for admins.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Cart Settings
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-cart-settings-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-cart-shipping-groups-api
  name: Elastic Path Cart Shipping Groups API
  description: The Cart Shipping Groups API from Elastic Path — 2 operation(s) for cart shipping groups.
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Cart Shipping Groups
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-cart-shipping-groups-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-catalogs-api
  name: Elastic Path Catalogs API
  description: 'A catalog contains the products available for sale either in your organization or store. A catalog also contains
    information about how to organize those products for navigation menus and search facets in a shopper experience.


    Before you create a catalog you must define the following resources:


    - Hierarchies: hierarchies and nodes to categorize the products. See [**Hierarchies**](/docs/api/pxm/products/hierarchies).

    - Products: product information, associated assets, and links to hierarchy nodes. See [**Products**](/docs/api/pxm/products/products).

    - Price Books: prices for the products associated with the hierarchies. See [**Price Books**](/docs/api/pxm/pricebooks).


    A catalog is a combination of hierarchies and a price book.


    ### Products


    Commerce automatically assigns types to the products you create. Product types can be used in catalogs. For example, in
    your catalog, you can filter on `parent` so that only your parent products are displayed in your storefront.


    You can use product tags to store or assign a key word against a product or service that you sell in your store. The product
    tag can then be used to describe or label that product. Product tags represent similarities between products who do not
    share the same attributes. Using product tags means that you can group your products together, for example, by brand,
    category, subcategory, colors, types, industries, and so on. Product tags can be used in catalogs. For example, you can
    categorize your products based on color. Your shoppers can then search your products by color, enabling shoppers to quickly
    find what they are looking for, increasing the likelihood of a purchase, and boosting conversion rates.


    ### Hierarchies


    The hierarchies determine which products appear in the catalog, that is, only the products that are associated with the
    selected hierarchies are included in the catalog. You can also specify the order you want your hierarchies to display
    in a published catalog. You can order your hierarchies on a catalog-by-catalog basis.


    ![Hierarchy_sorting](/assets/hierarchy_sorting.png)


    For more information, see [**create a Catalog**](/docs/api/pxm/catalog/create-catalog).


    #### Understanding How Products And Nodes Are Associated


    You can use `breadcrumb` metadata to understand how products and nodes are associated. it explains how products are associated
    with parent nodes and the relationship among the array of nodes. This is useful if you want to improve how your shoppers
    search within your store.


    The `breadcrumb` information that you get in an endpoint response depends on whether the endpoint is retrieving product
    or node details.


    |  Object |  Product/Node |  Description |

    | --- | --- | --- |

    | `breadcrumb` | Node | A list of nodes that a product is associated with. Up to 10 levels of nodes are displayed, depending
    on the number of levels of nodes you have. |

    | `bread_crumbs` | Product | The relationship among the array of nodes a product is associated with, demonstrating the
    linking of the children nodes with the parent nodes. Up to 10 levels of nodes are displayed, depending on the number of
    levels of nodes you have. |

    | `bread_crumb_nodes` | Product | An array of parent node IDs that a product is associated with. The `bread_crumb_node`
    metadata lists up to 10 levels of parent nodes, depending on the number of levels of parent nodes you have. |


    #### Understanding `bread_crumbs` Metadata


    The following diagram illustrates a parent and child nodes.


    ![Breadcrumbs](/assets/breadcrumbs.PNG)


    1. The product is in **Node 2**. The ID for **Node 2** is shown first in the first set of breadcrumbs.

    1. **Node 2** is part of **Hierarchy 1**. The ID for **Hierarchy 1** is shown second.

    1. **Node 1** is the parent node of **Node 2**. The ID for **Node 1** is shown last.

    1. The product is also in **Node 3**. The ID for **Node 3** is shown first in the second set of breadcrumbs.

    1. **Node 3** is in the root of **Hierarchy 1**. The ID for **Hierarchy 1** is shown last.


    In the `bread_crumb_nodes` metadata, you can see a list of parent nodes a product is associated with.


    If you subsequently add a product to a new node, then the `bread_crumb_nodes` metadata appends the new node to the top
    of the list. Using the example above, if we add the product to **Node 1**:


    1. The `bread_crumb_nodes` metadata is generated to show the new node appended to the top of the list.

    1. The `bread_crumbs` metadata is updated with the new node.


    #### Understanding Breadcrumb Metadata for Child Products


    When a catalog is published, the breadcrumb information for a child product includes the metadata mentioned for the parent
    product, in addition to the information specific to the child product. For example, **Product A** is the parent product,
    associated with **Node 1** and **Node 2**. The metadata for child **Product B** includes **Node 1** and **Node 2**, in
    addition to its own metadata information.


    ### Nodes


    The nodes determine which products appear under this in the catalog, that is, only the products that are associated with
    the selected node are shown under this node.


    ### Price books


    A price book contains the prices for each of the products in the catalog. You can create multiple price books for different
    scenarios, such as seasonal sales, business versus retail customer pricing, and reward programs. When creating a catalog,
    you can specify up to five price books. You must set a priority for your price books. Product prices are displayed in
    the catalog according to the priority of the price books. See [Create a catalog](/docs/api/pxm/catalog/create-catalog).'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Catalogs
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-catalogs-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-checkout-api
  name: Elastic Path Checkout API
  description: "The checkout workflow ties together many of the key concepts covered in this section. When a customer initiates\
    \ the checkout process, an order is created from the cart. The order is incomplete until after a successful payment is\
    \ made. A complete order can be shipped and the product deducted from inventory counts.\n\n![Checkout workflow](/assets/checkout-flow.png)\n\
    \n### Summary of the checkout workflow\n\n1. Add a product to a cart. A cart and its reference number is generated.\n\
    2. Manage the cart items. For example, you might add items, remove items, and change quantities.\n3. Check out the cart.\
    \ An incomplete order is created.\n4. Pay for an order: provide billing and shipping details, if you are a new customer.\
    \ The order is now in the processing status.\n5. If using a manual gateway, after you authorize and capture it, Composable\
    \ Commerce considers the order complete. If you use a third-party integration supported by Composable Commerce (such as\
    \ Stripe), after the third-party gateway authorizes and captures the payment, the order becomes complete. Usually capture\
    \ does not occur at the same time as authorization. For more information, see the Capture section.\n6. After the order\
    \ is shipped, you can manually flag it as fulfilled.\n\n### Carts\n\nWhen a product is added to a cart, a cart is generated\
    \ together with its unique reference ID that on checkout becomes a part of the order ID. If you are using our JavaScript\
    \ software development kit, generating a cart reference ID is done for you; otherwise, add a cart reference generator\
    \ to your functionality.\n\n### Promotions and custom items\n\nOptionally, apply a promotion code on a cart, or add custom_items\
    \ to modify the product price (typically to handle taxes, customs, or shipping).\n\n### Checkout\n\nYou can checkout a\
    \ cart with an associated customer name and email (customer object). Typically, this would be used for new customers or\
    \ ones that prefer to shop as guests. Use the `customer.id` checkout option to checkout for an existing customer. After\
    \ a successful checkout is completed, the response contains an order.\n\nEmail addresses that either begin or end with\
    \ a period, or contain consecutive periods, are considered invalid, resulting in the following error:\n```json\n\"errors\"\
    : [\n  {\n      \"status\": 400,\n      \"source\": \"data.customer.email\",\n      \"title\": \"format\",\n      \"detail\"\
    : \"Does not match format 'email'\"\n  }\n]\n  ```\n\n### Payments\n\nOn checkout, an incomplete order is created. You\
    \ can then use a third-party integration to handle your payment gateway. If the payment gateway is supported by Composable\
    \ Commerce, such as Stripe, the payment is processed externally but handled internally. When a successful validation is\
    \ returned, Composable Commerce flags the order as complete.\n\nIf you are using a payment method not officially supported\
    \ by Composable Commerce, the gateway needs to be implemented and handled manually. After the payment has been authorized\
    \ and captured either through Commerce Manager or API, the status of an order becomes complete.\n\n### Shipping\n\nThe\
    \ status of an order and the status of shipping are handled separately, and so an order can be complete but not shipped.\
    \ Orders that have not been shipped yet have a status of unfulfilled. This flag is generated automatically by Composable\
    \ Commerce when an order is created. Currently, you can only update the shipping status manually, through the API. After\
    \ the order is shipped, flag its shipping status as fulfilled.\n\n### Inventory\n\nIf enabled, you can manage your stock.\
    \ As such, your stock is automatically updated as soon as a product is checked out."
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Checkout
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-checkout-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-currencies-api
  name: Elastic Path Currencies API
  description: ':::caution


    - There is a hard limit of 10 currencies per store.


    :::'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Currencies
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-currencies-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-custom-api-entries-api
  name: Elastic Path Custom API Entries API
  description: "A **Custom API Entry** is a specific instance of a resource, such as a single wishlist in a Custom API for\
    \ wishlists.\n\nCustom API Entries can be accessed in two different ways, via the **extension** endpoint, or the **settings**\
    \ endpoint:\n\n* Extension Endpoint: `/v2/extensions/{custom-api-slug}` - This is the primary endpoint created for use.\
    \ Most clients should use this endpoint as it adheres to the semantics of the configuration. Retrieve the [OpenAPI Specifications](/docs/api/commerce-extensions/get-open-api-specification)\
    \ to learn how to interact with this endpoint.\n* Settings Endpoint: `/v2/settings/extensions/custom-apis/{custom-api-id}/entries/`\
    \ - This endpoint should only be used in cases where you want to interact with your Custom APIs in a generic way in an\
    \ admin capacity.\n\nCurrently, the distinction between these endpoints is minimal. The extension endpoint uses a slug\
    \ in the URL path, and the settings endpoint uses an ID. For most use cases involving the new Custom API, we recommend\
    \ using the extension endpoint.\n\nConceptually, the settings endpoint is analogous to reflection in most programming\
    \ languages. You use it when you want to operate in a generic way. For example, we used the settings endpoint to build\
    \ Commerce Manager. Another example is if you need to import and export various types of data from CSV files. Instead\
    \ of writing multiple scripts for different extension endpoints, you can write one script that operates on the settings\
    \ endpoint.\n\n## Events\n\nYou can integrate Commerce Extensions with your external systems by observing the appropriate\
    \ events. For more information, see [Integrations](/docs/api/integrations/integrations-introduction).\n\nGiven you have\
    \ a Custom API with `api_type` of `wishlist_ext` and you want to perform additional processing when an action is taken,\
    \ like when a wishlist is created:\n\n```bash\ncurl -X POST https://useast.api.elasticpath.com/v2/extensions/wishlists\
    \ \\\n  -H \"Authorization: Bearer XXXX\" \\\n  -H \"Content-Type: application/json\" \\\n  -d $ {\n    \"data\": {\n\
    \      \"type\": \"wishlist_ext\",\n      \"name\": \"My Wishlist\",\n      \"items_count\": 0,\n      \"keep_purchased\"\
    : false\n    }\n  }\n```\n\nWhen you [create an integration](/docs/api/integrations/create-integration) with `wishlist_ext.created`\
    \ in `observes` field.\nThen the configured `webhook` or `aws_sqs` will receive the appropriate message.\n\nYou can configure\
    \ integrations to observe the following events for your Custom API Entries:\n* Created\n* Updated\n* Deleted"
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Custom API Entries
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-custom-api-entries-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-custom-api-role-policies-api
  name: Elastic Path Custom API Role Policies API
  description: 'A Custom API Role Policy defines the level of access a role has to a Custom API. By default, administrative
    roles like **Store Admin** or **Org Admin** have full access to all Custom APIs. To grant access to other roles, a policy
    must be created for that specific role and Custom API.


    Below are the permissions that can be assigned to a role:


    | Permission | Description                              |

    |------------|------------------------------------------|

    | **Create** | Create a Custom API Entry.               |

    | **List**   | Retrieve a list of Custom API Entries.   |

    | **Read**   | Get a Custom API Entry.                  |

    | **Update** | Update a Custom API Entry.               |

    | **Delete** | Delete a Custom API Entry.               |'
  humanURL: https://developer.elasticpath.com/api
  baseURL: https://useast.api.elasticpath.com
  tags:
  - Custom API Role Policies
  properties:
  - type: OpenAPI
    url: openapi/elastic-path-custom-api-role-policies-api-openapi.yml
  - type: Documentation
    url: https://developer.elasticpath.com/api
- aid: elastic-path:elastic-path-custom-apis-api
  name: Elasti

# --- truncated at 32 KB (224 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/elastic-path/refs/heads/main/apis.yml