BigCommerce Order Settings API

The Order Settings API from BigCommerce — 2 operation(s) for order settings.

Documentation

📖
Documentation
https://developer.bigcommerce.com/
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/abandoned-carts
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/carts
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/brands
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/categories
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/category-trees
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/product-modifiers
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/product-variant-options
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/product-variants
📖
APIReference
https://developer.bigcommerce.com/docs/rest-catalog/products
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/channels
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/checkouts
📖
APIReference
https://developer.bigcommerce.com/docs/rest-content/store-content
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/currencies
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/customers
📖
APIReference
https://developer.bigcommerce.com/docs/rest-content/email-templates
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/geography
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/orders
📖
APIReference
https://developer.bigcommerce.com/docs/rest-content/pages
📖
APIReference
https://developer.bigcommerce.com/docs/rest-payments/tokens
📖
APIReference
https://developer.bigcommerce.com/docs/rest-payments/methods-deprecated
📖
APIReference
https://developer.bigcommerce.com/docs/rest-payments/processing
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/settings
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/shipping-v2
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/channels/site
📖
APIReference
https://developer.bigcommerce.com/docs/rest-management/store-information
📖
APIReference
https://developer.bigcommerce.com/docs/rest-storefront/carts
📖
APIReference
https://developer.bigcommerce.com/docs/rest-storefront/checkouts
📖
APIReference
https://developer.bigcommerce.com/docs/rest-storefront/customers
📖
APIReference
https://developer.bigcommerce.com/docs/rest-storefront/orders
📖
APIReference
https://developer.bigcommerce.com/docs/rest-storefront/subscriptions
📖
APIReference
https://developer.bigcommerce.com/docs/integrations/webhooks
📖
APIReference
https://developer.bigcommerce.com/docs/rest-content/widgets

Specifications

Other Resources

OpenAPI Specification

bigcommerce-order-settings-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: BigCommerce Abandoned Cart Emails Order Settings API
  version: 3.0.0
  termsOfService: https://www.bigcommerce.com/terms
  description: Abandoned Cart Emails V3 API managing Handlebars-based emails.
  contact:
    name: BigCommerce
    url: https://www.bigcommerce.com
    email: support@bigcommerce.com
servers:
- url: https://api.bigcommerce.com/stores/{store_hash}/v3
  variables:
    store_hash:
      default: store_hash
      description: Permanent ID of the BigCommerce store.
  description: BigCommerce API Gateway
security:
- X-Auth-Token: []
tags:
- name: Order Settings
paths:
  /orders/settings:
    parameters:
    - $ref: '#/components/parameters/Accept'
    get:
      summary: BigCommerce Get Global Order Settings
      description: Returns global order settings.
      operationId: getGlobalOrderSettings
      tags:
      - Order Settings
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/GlobalOrderSettings'
                - type: object
                  properties:
                    meta:
                      $ref: '#/components/schemas/metaEmpty_Full'
              examples: {}
        '400':
          description: Bad request. Authentication Required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse400'
    put:
      summary: BigCommerce Update Global Order Settings
      description: Updates global order settings.
      operationId: updateGlobalOrderSettings
      parameters:
      - $ref: '#/components/parameters/ContentType'
      tags:
      - Order Settings
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GlobalOrderSettings'
            examples:
              EnableMultipleOrderNotifications:
                $ref: '#/components/examples/EnableMultipleOrderNotifications'
              DisableOrderPlacedNotificatons:
                $ref: '#/components/examples/GlobalOrderSettingsDisableOrderPlacedNotificatons'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - type: object
                - $ref: '#/components/schemas/GlobalOrderSettings'
                - properties:
                    meta:
                      $ref: '#/components/schemas/metaEmpty_Full'
        '400':
          description: Bad request. Authentication Required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse400'
        '422':
          description: Order settings data is not valid. This is the result of missing required fields, or of invalid data. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse422'
  /orders/settings/channels/{channel_id}:
    parameters:
    - $ref: '#/components/parameters/Accept'
    - name: channel_id
      in: path
      schema:
        type: string
      description: Channel ID
      required: true
    get:
      summary: BigCommerce Get Channel Order Settings
      description: Returns order settings for a specific channel.
      operationId: getChannelOrderSettings
      tags:
      - Order Settings
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/ChannelOrderSettings'
                - type: object
                  properties:
                    meta:
                      $ref: '#/components/schemas/metaEmpty_Full'
              examples: {}
        '400':
          description: Bad request. Authentication Required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse400'
    put:
      summary: BigCommerce Update Channel Order Settings
      description: "Updates order settings for a specific channel.\n\n **Note:** You must override both notifications `email_addresses` or neither, i.e. either both notification `email_addresses` are an array of valid email addresses, or both `email_addresses` must be null. You may not have one set to an array of addresses and the other set to `null`."
      operationId: updateChannelOrderSettings
      parameters:
      - $ref: '#/components/parameters/ContentType'
      tags:
      - Order Settings
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChannelOrderSettings'
            examples:
              OverrideOrderPlacedEmailAddressesAndDisableForwardEmailAddresses:
                $ref: '#/components/examples/ChannelOrderSettingsOverrideOrderPlacedEmailAddressesAndDisableForwardEmail'
              ResetChannelSettings:
                $ref: '#/components/examples/ChannelOrderSettingsReset'
              DisableMultipleNotificatonsForChannels:
                $ref: '#/components/examples/ChannelOrderSettingsDisableBothNotifications'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/ChannelOrderSettings'
                - type: object
                  properties:
                    meta:
                      $ref: '#/components/schemas/metaEmpty_Full'
        '400':
          description: Bad request. Authentication Required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse400'
        '422':
          description: Order settings data is not valid. This is the result of missing required fields, or of invalid data. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse422'
components:
  parameters:
    Accept:
      name: Accept
      in: header
      required: true
      description: The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body.
      schema:
        type: string
        default: application/json
    ContentType:
      name: Content-Type
      in: header
      required: true
      description: The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the request body.
      schema:
        type: string
        default: application/json
  examples:
    EnableMultipleOrderNotifications:
      summary: Enable order placed and forward invoice notifications
      value:
        notifications:
          order_placed:
            email_addresses:
            - admin@example.com
            - another-email@example.com
          forward_invoice:
            email_addresses:
            - admin@example.com
            - another-email@example.com
    ChannelOrderSettingsDisableBothNotifications:
      summary: Disable order placed notifications for channel
      value:
        notifications:
          order_placed:
            email_addresses: []
          forward_invoice:
            email_addresses: []
    ChannelOrderSettingsOverrideOrderPlacedEmailAddressesAndDisableForwardEmail:
      summary: Override order placed email addresses and forward email addresses global value for channel
      value:
        notifications:
          order_placed:
            email_addresses:
            - admin@example.com
            - another-email@example.com
          forward_invoice:
            email_addresses: []
    ChannelOrderSettingsReset:
      summary: Reset order placed email addresses to global value for channel
      value:
        notifications:
          order_placed:
            email_addresses: null
          forward_invoice:
            email_addresses: null
    GlobalOrderSettingsDisableOrderPlacedNotificatons:
      summary: Disable order placed notifications at global level
      value:
        notifications:
          order_placed:
            email_addresses: []
  schemas:
    ErrorResponse400:
      type: object
      properties:
        schema:
          $ref: '#/components/schemas/betaErrorResponse'
      x-tags:
      - Models
    BaseError:
      type: object
      description: 'Error payload for the BigCommerce API.

        '
      properties:
        status:
          description: 'The HTTP status code.

            '
          type: integer
        title:
          description: 'The error title describing the particular error.

            '
          type: string
        type:
          type: string
      x-tags:
      - Models
    metaEmpty_Full:
      type: object
      title: Response meta
      properties: {}
      additionalProperties: true
      description: Response metadata.
    ChannelOrderSettings:
      type: object
      properties:
        notifications:
          type: object
          description: Channel notification settings.
          properties:
            order_placed:
              description: Channel order notification settings.
              type: object
              properties:
                email_addresses:
                  description: Email addresses channel order notifications will be sent to. If null will fall back to global value. Empty array disables order notifications for channel.
                  type: array
                  nullable: true
                  items:
                    type: string
            forward_invoice:
              description: Channel order invoice forward settings.
              type: object
              properties:
                email_addresses:
                  description: Email addresses channel order invoices will be forwarded to. If null will fall back to global value. Empty array disables forwarding order invoices for channel.
                  type: array
                  nullable: true
                  items:
                    type: string
      x-tags:
      - Models
      title: ChannelOrderSettings
    ErrorResponse422:
      type: object
      properties:
        schema:
          $ref: '#/components/schemas/betaErrorResponse'
      x-tags:
      - Models
    betaErrorResponse:
      allOf:
      - $ref: '#/components/schemas/BaseError'
      - type: object
        properties:
          errors:
            type: object
      x-tags:
      - Models
    GlobalOrderSettings:
      type: object
      properties:
        notifications:
          type: object
          description: Global notification settings.
          properties:
            order_placed:
              description: Global order notification settings.
              type: object
              properties:
                email_addresses:
                  description: Email addresses order notifications will be sent to. Empty array disables order notifications. Not nullable.
                  type: array
                  items:
                    type: string
            forward_invoice:
              description: Global order invoice forward settings.
              type: object
              properties:
                email_addresses:
                  description: Email addresses order invoices will be forwarded to. Empty array disables forwarding order invoices. Not nullable.
                  type: array
                  items:
                    type: string
      example:
        $ref: '#/components/examples/EnableMultipleOrderNotifications/value'
      x-tags:
      - Models
      title: GlobalOrderSettings
      x-examples:
        example-1:
          $ref: '#/components/examples/EnableMultipleOrderNotifications/value'
  securitySchemes:
    X-Auth-Token:
      name: X-Auth-Token
      description: '### OAuth scopes


        | UI Name | Permission | Parameter |

        |:--|:--|:-|

        | Information & Settings  | read-only  | `store_v2_information_read_only`|

        | Information & Settings  | modify     | `store_v2_information`          |


        ### Authentication header


        | Header | Argument | Description |

        |:-|:|:|

        | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/docs/start/authentication/api-accounts). |


        ### Further reading


        For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#x-auth-token-header-example-requests).


        For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/docs/start/authentication/api-accounts#oauth-scopes).


        For a list of API status codes, see [API Status Codes](/docs/start/about/status-codes).'
      type: apiKey
      in: header