openapi: 3.1.0 info: version: 25.1126.6886238 x-version-timestamp: 2025-11-26 19:10:23+00:00 title: Addresses Introduction Account Addresses Application Keys API description: 'The Addresses API allows you to organize account addresses. Addresses are a sub-resource of `account` resources, an account can have multiple addresses, such as home, work, and neighbour. You can use an account address with either [client_credentials access token](/docs/api/authentication/create-an-access-token) or a combination of [implicit access token](/docs/api/authentication/create-an-access-token) and [Account Management authentication](/docs/api/accounts/post-v-2-account-members-tokens) token. ' contact: name: Elastic Path url: https://www.elasticpath.com email: support@elasticpath.com license: url: https://elasticpath.dev name: MIT servers: - url: https://useast.api.elasticpath.com description: US East - url: https://euwest.api.elasticpath.com description: EU West security: - BearerToken: [] tags: - name: Application Keys description: You can use application keys to generate `client_credentials` and `implicit` tokens. paths: /v2/application-keys: post: tags: - Application Keys summary: Create an Application Key operationId: CreateAnApplicationKey description: Create an Application Key requestBody: $ref: '#/components/requestBodies/CreateApplicationKey' responses: '201': $ref: '#/components/responses/CreateApplicationKey' '400': $ref: '#/components/responses/ValidationError' '409': $ref: '#/components/responses/ConflictError' '500': $ref: '#/components/responses/InternalServerError' get: tags: - Application Keys summary: List Application Keys operationId: ListApplicationKeys description: 'Retrieves a list of Application Keys ' parameters: - $ref: '#/components/parameters/PageOffset' - $ref: '#/components/parameters/PageLimit' responses: '200': $ref: '#/components/responses/ListOfApplicationKeys' '400': $ref: '#/components/responses/ValidationError' '500': $ref: '#/components/responses/InternalServerError' /v2/application-keys/{application-key-id}: parameters: - $ref: '#/components/parameters/ApplicationKeyID' get: tags: - Application Keys summary: Get an Application Key operationId: GetAnApplicationKey description: Get an Application Key responses: '200': $ref: '#/components/responses/ApplicationKey' '400': $ref: '#/components/responses/ValidationError' '404': $ref: '#/components/responses/NotFoundError' '500': $ref: '#/components/responses/InternalServerError' put: tags: - Application Keys summary: Update an Application Key operationId: UpdateAnApplicationKey description: Update an Application Key requestBody: $ref: '#/components/requestBodies/UpdateApplicationKey' responses: '200': $ref: '#/components/responses/ApplicationKey' '400': $ref: '#/components/responses/ValidationError' '404': $ref: '#/components/responses/NotFoundError' '409': $ref: '#/components/responses/ConflictError' '500': $ref: '#/components/responses/InternalServerError' delete: tags: - Application Keys summary: Delete an Application Key operationId: DeleteAnApplicationKey description: Delete an Application Key responses: '204': description: No Content '400': $ref: '#/components/responses/ValidationError' '404': $ref: '#/components/responses/NotFoundError' '500': $ref: '#/components/responses/InternalServerError' components: parameters: PageOffset: name: page[offset] description: The current offset by number of records, not pages. Offset is zero-based. The maximum records you can offset is 10,000. If no page size is set, the [page length](/docs/api/settings/settings-introduction#page-length) store setting is used. in: query required: false schema: type: integer format: int64 minimum: 0 maximum: 10000 example: 0 PageLimit: name: page[limit] description: The maximum number of records per page for this response. You can set this value up to 100. If no page size is set, the [page length](/docs/api/settings/settings-introduction#page-length) store setting is used. in: query required: false schema: type: integer format: int64 minimum: 0 example: 100 ApplicationKeyID: name: application-key-id description: The unique identifier of the Application Key. in: path required: true schema: type: string format: uuid example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 requestBodies: UpdateApplicationKey: content: application/json: schema: type: object required: - data properties: data: type: object required: - type properties: type: type: string description: Specifies the type of the resource object, use `application_key` for application keys. const: application_key name: type: string description: Specifies the name of the application key. minLength: 1 maxLength: 255 reserved_rate_limit: type: integer description: Indicates the reserved rate limit for an application key. For more information, see [Application Keys Overview](/docs/api/application-keys/application-keys-introduction). minimum: 0 examples: Update Example: summary: Update a Application Key value: data: type: application_key name: Batch-Processing reserved_rate_limit: 10 CreateApplicationKey: content: application/json: schema: type: object required: - data properties: data: type: object required: - type - name properties: type: type: string description: Specifies the type of the resource object, use `application_key` for application keys. const: application_key name: type: string description: Specifies the name of the application key. minLength: 1 maxLength: 255 reserved_rate_limit: type: integer description: Indicates the reserved rate limit for an application key. For more information, see [Application Keys Overview](/docs/api/application-keys/application-keys-introduction). minimum: 0 examples: Create Example: summary: Create an Application Key value: data: type: application_key name: Storefront-Key reserved_rate_limit: 0 responses: ListOfApplicationKeys: description: List of Application Keys content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ApplicationKey' meta: $ref: '#/components/schemas/ListMeta' links: $ref: '#/components/schemas/PaginationLinks' NotFoundError: description: Not found. The requested entity does not exist. content: application/json: schema: $ref: '#/components/schemas/Errors' examples: Not Found: summary: Requested entity not found value: "{\n \"errors\": [\n {\n \"title\": \"Not Found\",\n \"status\": \"404\",\n \"detail\": \"Not found\"\n }\n ]\n}\n" ConflictError: description: Unable to perform the operation at this time. content: application/json: schema: $ref: '#/components/schemas/Errors' examples: Exceed Rate Limit: summary: Requested limit exceeds maximum value: "{\n \"errors\": [\n {\n \"title\": \"Conflict\",\n \"status\": \"409\",\n \"detail\": \"Requested reserved rate limit will exceed the maximum.\"\n }\n ]\n}\n" ValidationError: description: Bad request. The request failed validation. content: application/json: schema: $ref: '#/components/schemas/Errors' examples: Missing Name: summary: Required field missing value: "{\n \"errors\": [\n {\n \"title\": \"Bad Request\",\n \"status\": \"400\",\n \"detail\": \"The field 'name' is required.\"\n }\n ]\n}\n" InternalServerError: description: Internal server error. There was a system failure in the platform. content: application/json: schema: $ref: '#/components/schemas/Errors' examples: Internal Server Error: summary: Internal server error value: "{\n \"errors\": [\n {\n \"title\": \"Internal Server Error\",\n \"status\": \"500\",\n \"detail\": \"there was a problem processing your request\"\n }\n ]\n}\n" CreateApplicationKey: description: An Application Key content: application/json: schema: type: object properties: data: allOf: - $ref: '#/components/schemas/ApplicationKey' - type: object properties: client_secret: type: string description: Represents the unique `client_secret`. example: jN8qLHneOn8C1rv0r3J3XZK1cRiZG3rajcLi9X1cZZ links: type: object properties: self: $ref: '#/components/schemas/LinkURI' description: Specifies the URI of the Application Key. example: /v2/application-keys/3fa85f64-5717-4562-b3fc-2c963f66afa6 ApplicationKey: description: An Application Key content: application/json: schema: type: object properties: data: $ref: '#/components/schemas/ApplicationKey' links: type: object properties: self: $ref: '#/components/schemas/LinkURI' description: Specifies the URI of the Application Key. example: /v2/application-keys/3fa85f64-5717-4562-b3fc-2c963f66afa6 schemas: Timestamps: type: object properties: created_at: type: string description: Specifies the date the entity is created. example: '2017-01-10T11:41:19.244Z' updated_at: type: string description: Specifies the date the entity is last updated. example: '2017-01-10T11:41:19.244Z' last_used_at: type: - string - 'null' description: Specifies the approximate last used date of the Application Key. A `null` value indicates that the key has not been used. example: '2017-01-10T11:41:19.244Z' Meta: type: object properties: timestamps: $ref: '#/components/schemas/Timestamps' Errors: required: - errors properties: errors: type: array items: type: object required: - status - title properties: status: type: string description: The HTTP response code of the error. format: string examples: - '400' title: type: string description: A brief summary of the error. examples: - Bad Request detail: type: string description: Optional additional detail about the error. examples: - The field 'name' is required LinkURI: type: - string - 'null' format: uri ListMeta: type: object properties: results: type: object properties: total: type: integer description: Total number of results for the entire collection. page: type: object properties: limit: type: integer description: The maximum number of records for all pages. example: 100 offset: type: integer description: The current offset by number of pages. example: 0 current: type: integer description: The current number of pages. example: 1 total: type: integer description: The total number of pages. example: 1 total_reserved_rate_limit: type: integer description: Sum of rate limit reserved for all application keys. example: 100 ApplicationKey: type: object properties: id: type: string description: The unique identifier for the Application Key. format: uuid type: type: string description: Specifies the type of the resource object, always `application_key` for Application Keys. const: application_key name: type: string description: Specifies the name of this Application Key. minLength: 1 maxLength: 255 reserved_rate_limit: type: integer description: Indicates the reserved rate limit for an application key. For more information, see [Application Keys Overview](/docs/api/application-keys/application-keys-introduction). minimum: 0 client_id: type: string description: Represents the unique `client_id`. example: Z2dDp1f1Tg30p2C6ZVit7W1AKUtVhMVSTAPOIK4adA meta: $ref: '#/components/schemas/Meta' PaginationLinks: type: object properties: current: $ref: '#/components/schemas/LinkURI' description: Always the current page. example: /v2/application-keys?page[offset]=0&page[limit]=100 first: $ref: '#/components/schemas/LinkURI' description: Always the first page. example: /v2/application-keys?page[offset]=0&page[limit]=100 last: $ref: '#/components/schemas/LinkURI' description: Always `null` if there is only one page. example: /v2/application-keys?page[offset]=0&page[limit]=100 next: $ref: '#/components/schemas/LinkURI' description: Always `null` if there is only one page. example: null prev: $ref: '#/components/schemas/LinkURI' description: Always `null` if on the first page. example: null securitySchemes: BearerToken: type: http scheme: bearer