Elastic Path Settings API

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

OpenAPI Specification

elastic-path-settings-api-openapi.yml Raw ↑
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 Settings 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: Settings
  description: The Settings API allow you to configure global settings for your project.
paths:
  /v2/settings:
    get:
      tags:
      - Settings
      summary: Get Project Settings
      description: 'You can get all of the project settings via one API call using a `client_credential` token. The response is in object format as shown in the following example.


        :::note


        The default `calculation_method` is `line`.


        :::'
      operationId: get-v2-settings
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SettingsResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        default:
          $ref: '#/components/responses/InternalServerError'
    put:
      tags:
      - Settings
      summary: Update Project Settings
      description: You can use the Settings endpoint to update your project settings at any time. These global settings take immediate effect.
      operationId: put-v2-settings
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Settings'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SettingsResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        default:
          $ref: '#/components/responses/InternalServerError'
    delete:
      tags:
      - Settings
      summary: Delete Project Settings
      description: Deletes a store setting. Organization settings cannot be deleted.
      operationId: delete-v2-settings
      responses:
        '204':
          description: No Content
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        default:
          $ref: '#/components/responses/InternalServerError'
components:
  responses:
    BadRequestError:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            bad-request-error:
              value: "{\n  \"errors\": [\n    {\n      \"title\": \"enum\",\n      \"source\": \"data.type\",\n      \"detail\": \"data.type must be one of the following: \\\"settings\\\"\"\n    }\n  ]\n}\n"
    UnauthorizedError:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            unauthorized-error:
              value: "{\n  \"errors\": [\n    {\n      \"title\": \"Unauthorized\",\n      \"status\": \"401\"\n    }\n  ]\n}\n"
    InternalServerError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          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"
  schemas:
    SettingsResponse:
      allOf:
      - $ref: '#/components/schemas/SettingsData'
      - type: object
        properties:
          meta:
            type: object
            properties:
              owner:
                type: string
                example: store
    Settings:
      type: object
      properties:
        type:
          type: string
          description: Describes the type of request payload you’re sending. Set this value to `settings`.
          example: settings
        page_length:
          type: integer
          description: ' Indicates the number of results per page (max: `100`).'
          example: 25
        list_child_products:
          type: boolean
          description: Displays child products or not in product listings.
          example: false
        additional_languages:
          description: Represents an array of alpha2 codes for supported languages.
          type: array
          items:
            type: string
          example:
          - es
          - fr
          - de
        calculation_method:
          type: string
          description: Displays the method used to calculate card and order totals.
          example: line
          enum:
          - line
          - simple
        address_mandatory_fields:
          type: array
          description: Indicates an array of fields that are required for creating an [address](/docs/api/addresses/account-addresses).
          example:
          - first_name
          - last_name
          - line_1
          - city
          - region
          - postcode
          - country
          - instructions
          items:
            type: string
        shopper_address_limit:
          type: integer
          description: The maximum number of addresses a shopper can have per resource. API clients can only set values up to 500, for a higher limit please contact support.
          example: 25
          minimum: 1
          maximum: 25000
      required:
      - type
    Error:
      required:
      - title
      properties:
        title:
          type: string
          description: A brief summary of the error.
          examples:
          - Bad Request
        status:
          type: integer
          description: The HTTP response code of the error.
          examples:
          - 400
        code:
          type: integer
          description: An application-specific error code.
          examples:
          - 10
        source:
          type: string
          description: The field that caused the validation error.
          examples:
          - data.page_length
        detail:
          type: string
          description: Optional additional detail about the error.
          examples:
          - The field 'name' is required
    ErrorResponse:
      required:
      - errors
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
    SettingsData:
      properties:
        data:
          allOf:
          - $ref: '#/components/schemas/Settings'
          - type: object
            properties:
              id:
                description: The unique identifier for the settings.
                type: string
                example: 61daaa08-9z05-4497-b9ca-626cd0f9932b
              include_organization_resources:
                description: Whether to include organization resources.
                type: boolean
                example: false
              cart_item_limit:
                description: The cart item limit.
                type: integer
                example: 100
              custom_discount_limit:
                description: The custom discount limit.
                type: integer
                example: 5
              currency_limit:
                description: The currency limit.
                type: integer
                example: 10
              field_limit:
                description: The field limit.
                type: integer
                example: 100
              integration_limit:
                description: The integration limit.
                type: integer
                example: 100
              event_limit:
                description: The event limit.
                type: integer
                example: 5
              filter_limit:
                description: The filter limit.
                type: integer
                example: 10
              tax_item_limit:
                description: The tax item limit.
                type: integer
                example: 5
              promotions_limit:
                description: The promotions limit.
                type: integer
                example: 1000
              promotion_codes_limit:
                description: The promotion codes limit.
                type: integer
                example: 1000
              page_offset_limit:
                description: The page offset limit.
                type: integer
                example: 10000
  securitySchemes:
    BearerToken:
      type: http
      scheme: bearer