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 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.

Operations 3

GET /v2/account-members Get all Account Members #
GET /v2/account-members/{accountMemberID} Get an Account Member #
PUT /v2/account-members/{accountMemberID} Update an account member #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/elastic-path-account-members-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

elastic-path-account-members-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Account Management Introduction Account Members API
  description: 'An Account represents the entity that participates in a Commerce transaction. Accounts can have Carts, Orders,

    Subscriptions, and Addresses.


    Each account can have multiple account members, which represent users and can transact on behalf of the account.


    In a typical B2C scenario, an account usually has a single account member. However, this functionality can also be

    used to support use cases such as family accounts, allowing multiple family members to transact on behalf of their

    shared account. In a B2B scenario, an account will have multiple members from a business unit, all of whom can

    transact on behalf of their organization.


    Accounts can be grouped together using Account Tags, and those tags can be used to apply discounts and promotions.


    ## Accounts vs Customers


    Accounts is the next generation of [Customers](/docs/customer-management/customers). Customers are not going

    anywhere, but accounts offers more capabilities. We recommend using Accounts for any of your new use cases.


    | Feature                                                                                     | Customers | Accounts |

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

    | B2C Accounts                                                                                | ✅         | ✅        |

    | Family Accounts                                                                             | ⛔️        | ✅        |

    | B2B Accounts                                                                                | ⛔️        | ✅        |

    | Authentication: Shopper impersonation                                                       | ⛔️        | ✅        |

    | Authentication: OpenID support                                                              | ✅         | ✅        |

    | Authentication: One time passwords, and password reset                                      | ⛔️        | ✅        |

    | Authentication: Configurable token expiry                                                   | ⛔️        | ✅        |

    | Cart association                                                                            | ✅         | ✅        |

    | Shopper specific Promotions                                                                 | Limited   | ✅        |

    | Shopper specific Catalogs                                                                   | ✅         | ✅        |

    | Addresses                                                                                   | ✅         | ✅        |

    | [Personal Data Support (GDPR,CCPA,...)](/docs/api/personal-data/personal-data-introduction) | ✅         | ✅        |

    '
  contact:
    name: Elastic Path
    url: https://www.elasticpath.com
    email: support@elasticpath.com
  license:
    name: MIT
    url: assets/LICENSE
  version: 26.0208.7165720
  x-version-timestamp: 2026-02-08 16:13:08+00:00
servers:
- url: https://useast.api.elasticpath.com
  description: US East
- url: https://euwest.api.elasticpath.com
  description: EU West
security:
- BearerToken: []
tags:
- name: Account Members
  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.

    '
  externalDocs:
    url: https://elasticpath.dev/docs/commerce-cloud/accounts/using-account-members-api/overview
paths:
  /v2/account-members:
    get:
      tags:
      - Account Members
      summary: Get all Account Members
      description: "Get all account members contained within your store.\n\n    ### Filtering\n\n\n    The following operators and attributes are available for\n[filtering](/guides/Getting-Started/filtering) account members.\n\n| Attribute | Type | Operator | Example | | :--- | :--- | :--- | :--- | | `email`       | `string` | `ilike`           | `ilike(email,'ronswanson@example.com')` | | `name`        | `string` | `ilike`           | `ilike(name,'*swan*')`                  | | `given_name`  | `string` | `ilike`/`is_null` | `ilike(given_name,'ron*')`              | | `middle_name` | `string` | `ilike`/`is_null` | `is_null(middle_name)`                  | | `family_name` | `string` | `ilike`/`is_null` | `is_null(family_name)`                  |\n"
      operationId: get-v2-account-members
      parameters:
      - $ref: '#/components/parameters/page-limit'
      - $ref: '#/components/parameters/page-offset'
      - $ref: '#/components/parameters/filter'
      - name: sort
        in: query
        description: Specifies the order in which account members will be returned. For more information, see [Sorting](/guides/Getting-Started/sorting).
        required: false
        schema:
          type: string
          enum:
          - created_at
          - -created_at
          - email
          - -email
          - id
          - -id
          - name
          - -name
          - updated_at
          - -updated_at
          x-enumDescriptions:
            created_at: Sort in increasing order of creation
            -created_at: Sort in decreasing order of creation
            email: Sort in increasing order of email
            -email: Sort in decreasing order of email
            id: Sort in increasing order of ID
            -id: Sort in decreasing order of ID
            name: Sort in increasing order of name
            -name: Sort in decreasing order of name
            updated_at: Sort in increasing order of last update
            -updated_at: Sort in decreasing order of last update
          example: id
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/AccountMemberResponse'
                  meta:
                    $ref: '#/components/schemas/MetaList'
                  links:
                    type: object
                    properties:
                      current:
                        description: Always the current page.
                        type: string
                        format: uri
                        example: https://useast.api.elasticpath.com/v2/account-members?page[offset]=0&page[limit]=25
                      first:
                        description: Always the first page.
                        type: string
                        format: uri
                        example: https://useast.api.elasticpath.com/v2/account-members?page[offset]=0&page[limit]=25
                      last:
                        description: Always `null` if there is only one page.
                        type: string
                        format: uri
                        example: https://useast.api.elasticpath.com/v2/account-members?page[offset]=0&page[limit]=25
                      next:
                        description: Always `null` if there is only one page.
                        type: string
                        example: null
                      prev:
                        description: Always `null` if the user is on the first page.
                        type: string
                        example: null
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v2/account-members/{accountMemberID}:
    get:
      tags:
      - Account Members
      summary: Get an Account Member
      description: Get an account member from your store
      operationId: get-v2-account-members-accountMemberID
      parameters:
      - name: accountMemberID
        in: path
        description: The unique identifier of the account member that you want to retrieve.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/AccountMemberResponse'
                  links:
                    type: object
                    properties:
                      self:
                        description: A URL to the specific resource.
                        type: string
                        example: https://useast.api.elasticpath.com/v2/account-members/deb6b25f-8451-4211-9a22-95610333df23
        '400':
          $ref: '#/components/responses/BadRequestError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
    put:
      tags:
      - Account Members
      summary: Update an account member
      description: This endpoint can be used to update an account member.
      operationId: put-v2-account-members-accountMemberID
      parameters:
      - name: accountMemberID
        in: path
        description: The unique identifier of the account member that you want to update the flows of.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      const: account_member
                      description: The type of the object.
                    id:
                      type: string
                      format: uuid
                      example: 908f7849-60da-4e4a-a3b1-51d4cbe3b95
              required:
              - data
            examples:
              Update an Account Member:
                value:
                  data:
                    type: account_member
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/AccountMemberResponse'
                  links:
                    type: object
                    properties:
                      self:
                        description: A URL to the specific resource.
                        type: string
                        example: https://useast.api.elasticpath.com/v2/account-members/908f7849-60da-4e4a-a3b1-51d4cbe3b953
        '400':
          $ref: '#/components/responses/BadRequestError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  responses:
    BadRequestError:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            bad-request-error:
              value:
                errors:
                - title: Bad Request
                  status: '400'
                  detail: 'Validation failed: field ''Name'' on the ''min'' tag.'
    UnauthorizedError:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            unauthorized-error:
              value:
                errors:
                - title: Unauthorized
                  status: '401'
    InternalServerError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            internal-server-error:
              summary: Internal server error
              value:
                errors:
                - title: Internal Server Error
                  status: '500'
                  detail: there was a problem processing your request
    NotFoundError:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            not-found-error:
              value:
                errors:
                - title: Not Found
                  status: '404'
                  detail: account not found
  schemas:
    AccountMemberResponse:
      allOf:
      - $ref: '#/components/schemas/AccountMember'
      - type: object
        properties:
          meta:
            $ref: '#/components/schemas/MetaTimestamps'
          links:
            type: object
            properties:
              self:
                description: A URL to the specific resource.
                type: string
                example: https://useast.api.elasticpath.com/v2/account-members/908f7849-60da-4e4a-a3b1-51d4cbe3b953
    ErrorResponse:
      type: object
      required:
      - errors
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
    MetaListResults:
      type: object
      properties:
        total:
          type: integer
          description: The total number of results after applying filters, if any, or all results.
          example: 1
    MetaTimestamps:
      type: object
      properties:
        timestamps:
          type: object
          properties:
            created_at:
              description: The date the resource is created.
              type: string
              example: '2021-02-23T09:40:33.882Z'
            updated_at:
              description: The date the resource is updated.
              type: string
              example: '2021-02-23T09:40:33.882Z'
    AccountMember:
      type: object
      properties:
        id:
          description: The unique identifier for the account member.
          type: string
          format: uuid
          example: 908f7849-60da-4e4a-a3b1-51d4cbe3b953
        type:
          description: The type of the object that is returned.
          type: string
          const: account_member
        name:
          description: The name of the account member.
          type: string
          example: Ron Swanson
        given_name:
          description: The given name of the account member. This field is optional and not computed or extracted from the name field.
          type:
          - string
          - 'null'
          example: Ron
        middle_name:
          description: The middle name of the account member. This field is optional and not computed or extracted from the name field.
          type:
          - string
          - 'null'
          example: Ulysses
        family_name:
          description: The family name of the account member. This field is optional and not computed or extracted from the name field.
          type:
          - string
          - 'null'
          example: Swanson
        email:
          description: The email address of the account member.
          type: string
          format: email
          example: ron@swanson.com
    MetaList:
      type: object
      properties:
        page:
          $ref: '#/components/schemas/MetaListPage'
        results:
          $ref: '#/components/schemas/MetaListResults'
    MetaListPage:
      type: object
      properties:
        limit:
          type: integer
          description: The maximum number of records per page for this response. You can set this value up to 100.
          example: 25
        current:
          type: integer
          description: The current page.
          example: 0
        offset:
          type: integer
          description: The current offset by number of records, not pages. Offset is zero-based.
          example: 0
        total:
          type: integer
          description: The total page count.
          example: 1
    Error:
      type: object
      required:
      - status
      - title
      properties:
        title:
          type: string
          description: A brief summary of the error.
          examples:
          - Bad Request
        status:
          type: string
          format: string
          description: The HTTP response code of the error.
          examples:
          - '400'
        detail:
          type: string
          description: Optional additional detail about the error.
          examples:
          - The field 'name' is required
  parameters:
    filter:
      name: filter
      in: query
      description: Specifies the filter attributes.
      required: false
      schema:
        type: string
        format: string
        example: ilike(name,"*swan*")
    page-limit:
      name: page[limit]
      in: query
      description: The number of records per page.
      required: false
      schema:
        type: integer
        format: int64
        minimum: 0
        example: 25
    page-offset:
      name: page[offset]
      in: query
      description: The number of records to offset the results by.
      required: false
      schema:
        type: integer
        format: int64
        minimum: 0
        maximum: 10000
        example: 10
  securitySchemes:
    BearerToken:
      type: http
      scheme: bearer