openapi: 3.0.0 info: title: BigCommerce Abandoned Cart Emails Sites 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: Sites description: Enables creation and management of external sites (domains) where shoppers shop. Allows for the correct shopping experience to be delivered and maintained (i.e. redirect URLs, email links) when a shopper goes through the purchasing process. paths: /sites: parameters: - $ref: '#/components/parameters/Accept' post: summary: BigCommerce Create a Site operationId: createSite parameters: - $ref: '#/components/parameters/ContentType' requestBody: content: application/json: schema: $ref: '#/components/schemas/post_Site' required: true x-examples: application/json: url: http://store.example.com/ channel_id: 2 responses: '201': $ref: '#/components/responses/response_Site' '400': $ref: '#/components/responses/400_BadRequest' '403': $ref: '#/components/responses/403_Unauthorized' '404': $ref: '#/components/responses/404_NotFound' '502': description: '' '504': $ref: '#/components/responses/504_GatewayTimeout' tags: - Sites description: Create a site that links a [headless storefront](/docs/storefront/headless) to a sales [channel](/docs/rest-management/channels). get: responses: '200': $ref: '#/components/responses/site_RespCollection' summary: BigCommerce Get Sites description: Get sites linked to a [headless storefront](/docs/storefront/headless) sales channels. operationId: getSites tags: - Sites parameters: - in: query name: page description: Specifies the page number in a limited (paginated) list of items. schema: type: integer - in: query name: limit description: Controls the number of items per page in a limited (paginated) list of items. schema: type: integer - schema: type: integer example: 1 in: query name: channel_id:in description: Filters returned sites by channel ID. - schema: type: string in: query name: url_type:in description: Filters sites returned in the `data.urls` array by their URL type. /sites/{site_id}: parameters: - $ref: '#/components/parameters/Accept' - name: site_id in: path required: true schema: type: string get: summary: BigCommerce Get a Site operationId: getSite responses: '200': $ref: '#/components/responses/response_Site' tags: - Sites description: Get a site with site ID `{site_id}`. put: summary: BigCommerce Update a Site operationId: updateSite parameters: - $ref: '#/components/parameters/ContentType' requestBody: content: application/json: schema: $ref: '#/components/schemas/put_Site' required: true x-examples: application/json: url: https://remote-site.com/ responses: '200': $ref: '#/components/responses/response_Site' tags: - Sites description: Update a site with site ID `{site_id}`. delete: summary: BigCommerce Delete a Site operationId: deleteSite responses: '204': description: '' tags: - Sites description: Delete a site with site ID `{site_id}`. components: schemas: _metaCollection: title: metaCollection description: Meta data relating to pagination. type: object properties: pagination: type: object properties: total: type: integer description: Total number of items returned. example: 3 count: type: integer description: Number of items returned on per page. example: 1 per_page: type: integer description: Number of items to be displayed per page. example: 1 current_page: type: integer description: Current page number. example: 2 total_page: type: integer description: Total number of pages. example: 3 links: type: object properties: previous: type: string description: Query string appended to the resource to return to the previous page. example: ?limit=1&page=1 next: type: string description: Query string appended to the resource to proceed to the next page. example: ?limit=1&page=3 current: type: string description: Query string appended to the resource to show the current page. example: ?limit=1&page=2 x-internal: false Url: type: object properties: url: type: string description: URL of site. type: type: string description: Specifies the URL type. enum: - primary - canonical - checkout created_at: type: string description: The date-time that this URL was created, formatted as an [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt) string. example: '2018-01-04T04:15:50.000Z' format: date-time updated_at: type: string description: The date-time that this URL was last updated, formatted as an [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt) string. example: '2018-01-04T04:15:50.000Z' format: date-time put_Site: type: object properties: url: type: string description: The Fully Qualified URL (including host and scheme) where this site is hosted. All URLs generated for this site will be appended to this. example: http://kittens.mybigcommerce.com/ title: put_Site x-internal: false _site: type: object description: '' title: '' properties: id: type: integer url: type: string description: The fully qualified URL (including host and scheme) where this site is hosted. All URLs generated for this site will be appended to this. example: http://kittens.mybigcommerce.com/ channel_id: type: integer description: The channel to which this site is attached. Each site belongs to a single channel, and each channel can have either zero or more sites. created_at: type: string description: The date-time that this site was created, formatted as an [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt) string. example: '2022-01-04T04:15:50.000Z' updated_at: type: string description: The date-time that this site was last updated, formatted as an [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt) string. example: '2022-01-04T04:15:50.000Z' ssl_status: type: string enum: - dedicated - shared description: Indicates whether a site is using a private/dedicated SSL or a shared SSL. urls: type: array description: All URLs that belong to the site, including `primary`, `canonical`, and `checkout` URLs. items: $ref: '#/components/schemas/Url' is_checkout_url_customized: type: boolean description: Indicates whether the channel uses a custom checkout domain. When `false`, the checkout domain falls back to the default channel’s primary URL. error_Full: type: object title: error_Full properties: status: description: 'The HTTP status code. ' type: integer title: description: 'The error title describing the particular error. ' type: string type: type: string x-internal: false post_Site: type: object properties: url: type: string description: The Fully Qualified URL (including host and scheme) where this site is hosted. All URLs generated for this site will be appended to this. example: http://kittens.mybigcommerce.com/ channel_id: type: integer description: The channel this site is attached to. Each site belongs to a single channel, and each channel can have either zero or one sites. title: post_Site x-internal: false 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 responses: site_RespCollection: description: '' content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/_site' meta: $ref: '#/components/schemas/_metaCollection' examples: {} 403_Unauthorized: description: '' content: application/json: schema: $ref: '#/components/schemas/error_Full' examples: response: value: status: 403 title: Unauthorized Access. You do not have permission to make this request. type: /api-docs/getting-started/api-status-codes 404_NotFound: description: Requested resource not founded. content: application/json: schema: $ref: '#/components/schemas/error_Full' 504_GatewayTimeout: description: If this occurs, you should retry the request. Typically retrying the request several times will result in a successful request; However, if you are unable to successfully make a request, please check the BigCommerce system status [here](https://status.bigcommerce.com/). A service is likely down and the request will need to be made again when it is back up (in several hours usually). content: application/json: schema: $ref: '#/components/schemas/error_Full' examples: response: value: status: 504 title: Gateway Timeout type: /api-docs/getting-started/api-status-codes errors: {} response_Site: description: '' content: application/json: schema: type: object properties: data: $ref: '#/components/schemas/_site' meta: $ref: '#/components/schemas/_metaCollection' examples: Example: value: data: id: 23 url: https://example.com channel_id: 234 created_at: '2018-01-04T04:15:50.000Z' updated_at: '2018-01-04T04:15:50.000Z' ssl_status: dedicated urls: - url: https://example.com type: primary created_at: '2020-11-03T19:26:12Z' updated_at: '2021-08-31T21:46:50Z' - url: https://store-29i23fcz6.mybigcommerce.com type: canonical created_at: '2020-11-03T19:26:12Z' updated_at: '2020-11-03T19:26:12Z' - url: https://checkout.example.com type: checkout created_at: '2020-11-03T19:26:12Z' updated_at: '2021-08-31T21:46:50Z' is_checkout_url_customized: true meta: pagination: offset: 0 limit: 50 total_items: 1 400_BadRequest: description: 'Malformed request syntax. Typically need to fix the JSON request body to resend successfully.' content: application/json: schema: $ref: '#/components/schemas/error_Full' examples: response: value: status: 400 title: Input is invalid. type: /api-docs/getting-started/api-status-codes 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