├── .eslintrc.json
├── .github
├── CODEOWNERS
└── workflows
│ ├── deploy.yml
│ ├── lint.yml
│ └── spectral.yml
├── .gitignore
├── .idea
├── .gitignore
└── api-specs.iml
├── .spectral.yaml
├── CONTRIBUTING.md
├── README.md
├── docs
└── docs.mdx
├── models
├── email_templates
│ ├── README.md
│ ├── _all.yml
│ ├── abandoned_cart_email.yml
│ ├── account_details_changed_email.yml
│ ├── account_reset_password_email.yml
│ ├── combined
│ │ ├── README.md
│ │ ├── abandoned_cart_email.yml
│ │ ├── abandoned_cart_email_deprecated.yml
│ │ ├── account_details_changed_email.yml
│ │ ├── account_reset_password_email.yml
│ │ ├── combined_order_status_email.yml
│ │ ├── create_account_email.yml
│ │ ├── create_guest_account_email.yml
│ │ ├── gift_certificate_email.yml
│ │ ├── global.yml
│ │ ├── invoice_email.yml
│ │ ├── order_message_notification.yml
│ │ ├── passwordless_login_email.yml
│ │ ├── product_review_email.yml
│ │ ├── return_confirmation_email.yml
│ │ └── return_status_change_email.yml
│ ├── combined_order_status_email.yml
│ ├── create_account_email.yml
│ ├── create_guest_account_email.yml
│ ├── data
│ │ ├── abandoned_cart_email.json
│ │ ├── account_details_changed_email.json
│ │ ├── account_reset_password_email.json
│ │ ├── combined_order_status_email.json
│ │ ├── create_account_email.json
│ │ ├── create_guest_account_email.json
│ │ ├── gift_certificate_email.json
│ │ ├── global.json
│ │ ├── invoice_email.json
│ │ ├── order_message_notification.json
│ │ ├── passwordless_login_email.json
│ │ ├── product_review_email.json
│ │ ├── return_confirmation_email.json
│ │ └── return_status_change_email.json
│ ├── gift_certificate_email.yml
│ ├── global.yml
│ ├── invoice_email.yml
│ ├── order_message_notification.yml
│ ├── passwordless_login_email.yml
│ ├── product_review_email.yml
│ ├── return_confirmation_email.yml
│ └── return_status_change_email.yml
├── json2schema.py
└── webhooks
│ ├── README.md
│ ├── _all.yml
│ ├── data
│ ├── list.txt
│ ├── store_app_uninstalled.json
│ ├── store_cart_abandoned.json
│ ├── store_cart_converted.json
│ ├── store_cart_couponApplied.json
│ ├── store_cart_created.json
│ ├── store_cart_deleted.json
│ ├── store_cart_lineItem_created.json
│ ├── store_cart_lineItem_deleted.json
│ ├── store_cart_lineItem_updated.json
│ ├── store_cart_updated.json
│ ├── store_category_created.json
│ ├── store_category_deleted.json
│ ├── store_category_updated.json
│ ├── store_customer_address_created.json
│ ├── store_customer_address_deleted.json
│ ├── store_customer_address_updated.json
│ ├── store_customer_created.json
│ ├── store_customer_deleted.json
│ ├── store_customer_payment_instrument_default_updated.json
│ ├── store_customer_updated.json
│ ├── store_information_updated.json
│ ├── store_metafield_created.json
│ ├── store_order_archived.json
│ ├── store_order_created.json
│ ├── store_order_message_created.json
│ ├── store_order_refund_created.json
│ ├── store_order_statusUpdated.json
│ ├── store_order_updated.json
│ ├── store_product_created.json
│ ├── store_product_deleted.json
│ ├── store_product_inventory_order_updated.json
│ ├── store_product_inventory_updated.json
│ ├── store_product_updated.json
│ ├── store_shipment_created.json
│ ├── store_shipment_deleted.json
│ ├── store_shipment_updated.json
│ ├── store_sku_created.json
│ ├── store_sku_deleted.json
│ ├── store_sku_inventory_order_updated.json
│ ├── store_sku_inventory_updated.json
│ ├── store_sku_updated.json
│ ├── store_subscriber_created.json
│ ├── store_subscriber_deleted.json
│ └── store_subscriber_updated.json
│ ├── store_app_uninstalled.yml
│ ├── store_brand_metafield_created.yml
│ ├── store_brand_metafield_deleted.yml
│ ├── store_brand_metafield_updated.yml
│ ├── store_cart_abandoned.yml
│ ├── store_cart_converted.yml
│ ├── store_cart_couponApplied.yml
│ ├── store_cart_created.yml
│ ├── store_cart_deleted.yml
│ ├── store_cart_lineItem_created.yml
│ ├── store_cart_lineItem_deleted.yml
│ ├── store_cart_lineItem_updated.yml
│ ├── store_cart_metafield_created.yml
│ ├── store_cart_metafield_deleted.yml
│ ├── store_cart_metafield_updated.yml
│ ├── store_cart_updated.yml
│ ├── store_category_created.yml
│ ├── store_category_deleted.yml
│ ├── store_category_metafield_created.yml
│ ├── store_category_metafield_deleted.yml
│ ├── store_category_metafield_updated.yml
│ ├── store_category_updated.yml
│ ├── store_channel_metafield_created.yml
│ ├── store_channel_metafield_deleted.yml
│ ├── store_channel_metafield_updated.yml
│ ├── store_customer_address_created.yml
│ ├── store_customer_address_deleted.yml
│ ├── store_customer_address_updated.yml
│ ├── store_customer_created.yml
│ ├── store_customer_deleted.yml
│ ├── store_customer_payment_instrument_default_updated.yml
│ ├── store_customer_updated.yml
│ ├── store_information_updated.yml
│ ├── store_inventory_location_created.yml
│ ├── store_inventory_location_metafield_created.yml
│ ├── store_inventory_location_metafield_deleted.yml
│ ├── store_inventory_location_metafield_updated.yml
│ ├── store_inventory_location_updated.yml
│ ├── store_metafield_created.yml
│ ├── store_metafield_deleted.yml
│ ├── store_metafield_updated.yml
│ ├── store_order_archived.yml
│ ├── store_order_created.yml
│ ├── store_order_message_created.yml
│ ├── store_order_metafield_created.yml
│ ├── store_order_metafield_deleted.yml
│ ├── store_order_metafield_updated.yml
│ ├── store_order_refund_created.yml
│ ├── store_order_statusUpdated.yml
│ ├── store_order_transaction_created.yml
│ ├── store_order_transaction_updated.yml
│ ├── store_order_updated.yml
│ ├── store_product_created.yml
│ ├── store_product_deleted.yml
│ ├── store_product_inventory_order_updated.yml
│ ├── store_product_inventory_updated.yml
│ ├── store_product_metafield_created.yml
│ ├── store_product_metafield_deleted.yml
│ ├── store_product_metafield_updated.yml
│ ├── store_product_updated.yml
│ ├── store_shipment_created.yml
│ ├── store_shipment_deleted.yml
│ ├── store_shipment_updated.yml
│ ├── store_sku_created.yml
│ ├── store_sku_deleted.yml
│ ├── store_sku_inventory_order_updated.yml
│ ├── store_sku_inventory_updated.yml
│ ├── store_sku_updated.yml
│ ├── store_subscriber_created.yml
│ ├── store_subscriber_deleted.yml
│ ├── store_subscriber_updated.yml
│ ├── store_variant_metafield_created.yml
│ ├── store_variant_metafield_deleted.yml
│ └── store_variant_metafield_updated.yml
├── package-lock.json
├── package.json
├── pull_request_template.md
└── reference
├── .spectral.yaml
├── abandoned_cart_emails.v3.yaml
├── abandoned_carts.v3.yml
├── carts.sf.yml
├── carts.v3.yml
├── catalog
├── brands_catalog.v3.yml
├── categories_catalog.v3.yml
├── category-trees_catalog.v3.yml
├── product-modifiers_catalog.v3.yml
├── product-variant-options_catalog.v3.yml
├── product-variants_catalog.v3.yml
└── products_catalog.v3.yml
├── channels.v3.yml
├── checkouts.sf.yml
├── checkouts.v3.yml
├── consent.sf.yml
├── currencies.v2.yml
├── current_customer.yml
├── custom-template-associations.v3.yml
├── customer_login.yml
├── customers.sf.yml
├── customers.v2.yml
├── customers.v3.yml
├── email_templates.v3.yml
├── form_fields.sf.yml
├── geography.v2.yml
├── global_refs.yaml
├── marketing.v2.yml
├── orders.sf.yml
├── orders.v2.oas2.yml
├── orders.v3.yml
├── pages.v3.yml
├── payments
├── accepted-methods_payments.v3.yml
├── access-tokens_payments.v3.yml
├── methods_payments.v2.yml
└── process_payments.yml
├── price_lists.v3.yml
├── pricing.sf.yml
├── redirects.v3.yml
├── scripts.v3.yml
├── settings.v3.yml
├── shipping.v2.yml
├── shipping.v3.yml
├── shipping_provider.yml
├── sites.v3.yml
├── store_content.v2.yml
├── store_information.v2.yml
├── store_logs.v3.yml
├── storefront_tokens.v3.yml
├── subscribers.v3.yml
├── subscriptions.sf.yml
├── tax.v3.yml
├── tax_classes.v2.yml
├── tax_properties.v3.yml
├── tax_provider.yml
├── tax_rates_zones.v3.yml
├── tax_settings.v3.yml
├── themes.v3.yml
├── webhooks.v3.yml
├── widgets.v3.yml
└── wishlists.v3.yml
/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": ["plugin:mdx/recommended"],
3 | // optional, if you want to lint code blocks at the same time
4 | "settings": {
5 | "mdx/code-blocks": true,
6 | // optional, if you want to disable language mapper, set it to `false`
7 | // if you want to override the default language mapper inside, you can provide your own
8 | "mdx/language-mapper": {}
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # These owners will be the default owners for everything in the repo. Unless a later match takes precedence, @global-owner1 and @global-owner2 will be requested for review when someone opens a pull request.
2 |
3 | @slsriehl @bigcommerce/dev-docs-team @markcmurphy
4 |
5 | # Teams can be specified as code owners as well. Teams should
6 | # be identified in the format @org/team-name. Teams must have
7 | # explicit write access to the repository. In this example,
8 | # the octocats team in the octo-org organization owns all .md files.
9 |
--------------------------------------------------------------------------------
/.github/workflows/deploy.yml:
--------------------------------------------------------------------------------
1 | name: Deploy
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 |
8 | jobs:
9 | build:
10 | runs-on: ubuntu-latest
11 |
12 | steps:
13 | - name: Checkout code
14 | uses: actions/checkout@v2
15 |
16 | - name: Trigger Vercel Deploy Hook
17 | run: |
18 | curl -X POST ${{ secrets.VERCEL_DEPLOY_HOOK_URL }}
19 |
--------------------------------------------------------------------------------
/.github/workflows/lint.yml:
--------------------------------------------------------------------------------
1 | name: lint-valid-mdx
2 | on:
3 | - pull_request
4 |
5 | jobs:
6 | lint:
7 | runs-on: ubuntu-latest
8 |
9 | steps:
10 | - uses: actions/checkout@v3
11 | - name: Use Node.js v17.x
12 | uses: actions/setup-node@v3
13 | with:
14 | node-version: 17.x
15 | - run: npm ci
16 | - run: npm run lint
17 |
--------------------------------------------------------------------------------
/.github/workflows/spectral.yml:
--------------------------------------------------------------------------------
1 | name: Run Spectral on Pull Requests
2 | on:
3 | - pull_request
4 | jobs:
5 | build:
6 | name: Run Spectral
7 | runs-on: ubuntu-latest
8 | steps:
9 | # Check out the repository
10 | - uses: actions/checkout@v2
11 |
12 | # Run Spectral
13 | - uses: stoplightio/spectral-action@latest
14 | with:
15 | file_glob: 'reference/*.yml'
16 | spectral_ruleset: '.spectral.yaml'
17 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | node_modules
3 | .DS_Store
4 |
5 |
--------------------------------------------------------------------------------
/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Editor-based HTTP Client requests
5 | /httpRequests/
6 | # Datasource local storage ignored files
7 | /dataSources/
8 | /dataSources.local.xml
9 |
--------------------------------------------------------------------------------
/.idea/api-specs.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.spectral.yaml:
--------------------------------------------------------------------------------
1 | extends: spectral:oas
2 | rules:
3 | info-contact: off
4 | oas3-unused-component: off
5 | oas2-unused-definition: off
6 | except:
7 | 'reference/tax_provider.yml':
8 | - oas3-schema
9 | 'reference/carts.v3.yml':
10 | - oas2-oneOf
11 | - oas2-valid-schema-example
12 | - operation-tag-defined
13 | 'reference/catalog.v3.yml':
14 | - oas2-operation-security-defined
15 | - oas3-schema
16 | - oas2-schema
17 | - oas2-valid-media-example
18 | - oas2-valid-schema-example
19 | 'reference/channels.v3.yml':
20 | - operation-operationId
21 | - oas3-schema
22 | - oas3-valid-media-example
23 | 'reference/current_customer.yml':
24 | - operation-success-response
25 | 'reference/custom-template-associations.v3.yml':
26 | - openapi-tags
27 | - operation-tag-defined
28 | 'reference/customer_login.yml':
29 | - operation-operationId
30 | - operation-success-response
31 | 'reference/email_templates.v3.yml':
32 | - oas3-schema
33 | - operation-tag-defined
34 | - openapi-tags
35 | 'reference/geography.v2.yml':
36 | - operation-operationId
37 | - oas2-valid-media-example
38 | 'reference/orders.v2.oas2.yml':
39 | - oas3-valid-schema-example
40 | - oas3-valid-media-example
41 | - oas3-schema
42 | 'reference/orders.v3.yml':
43 | - oas2-valid-schema-example
44 | - oas2-valid-media-example
45 | - oas2-anyOf
46 | 'reference/settings.v3.yml':
47 | - oas3-valid-media-example
48 | - operation-operationId
49 | 'reference/sites.v3.yml':
50 | - oas2-valid-media-example
51 | - operation-operationId
52 | 'reference/store_information.v2.yml':
53 | - oas2-valid-media-example
54 | - operation-operationId
55 | - oas2-valid-schema-example
56 | 'reference/themes.v3.yml':
57 | - oas3-schema
58 | - operation-operationId
59 | 'reference/webhooks.v3.yml':
60 | - oas3-valid-media-example
61 | 'carts.v3.yml':
62 | - oas2-oneOf
63 | - oas2-valid-schema-example
64 | - operation-tag-defined
65 | 'catalog.v3.yml':
66 | - oas2-operation-security-defined
67 | - oas3-schema
68 | - oas2-schema
69 | - oas2-valid-media-example
70 | - oas2-valid-schema-example
71 | 'channels.v3.yml':
72 | - operation-operationId
73 | - oas3-schema
74 | - oas3-valid-media-example
75 | 'current_customer.yml':
76 | - operation-success-response
77 | 'custom-template-associations.v3.yml':
78 | - openapi-tags
79 | - operation-tag-defined
80 | 'customer_login.yml':
81 | - operation-success-response
82 | 'email_templates.v3.yml':
83 | - oas3-schema
84 | - operation-tag-defined
85 | - openapi-tags
86 | 'geography.v2.yml':
87 | - operation-operationId
88 | - oas2-valid-media-example
89 | 'orders.v2.oas2.yml':
90 | - oas3-valid-schema-example
91 | - oas3-valid-media-example
92 | - oas3-schema
93 | 'orders.v3.yml':
94 | - oas2-valid-schema-example
95 | - oas2-valid-media-example
96 | - oas2-anyOf
97 | 'settings.v3.yml':
98 | - oas3-valid-media-example
99 | - operation-operationId
100 | 'sites.v3.yml':
101 | - oas2-valid-media-example
102 | - operation-operationId
103 | 'store_information.v2.yml':
104 | - oas2-valid-media-example
105 | - operation-operationId
106 | - oas2-valid-schema-example
107 | 'themes.v3.yml':
108 | - oas3-schema
109 | - operation-operationId
110 | 'webhooks.v3.yml':
111 | - oas3-valid-media-example
112 | 'pages.v3.yml':
113 | - oas3-valid-media-example
114 | - oas3-valid-schema-example
115 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to BigCommerce's API Specifications
2 |
3 | Thanks for your interest in contributing!
4 |
5 | ## Edit
6 |
7 | * **Edit:** Fork the repository and edit with your preferred editor. We recommend [VS Code](https://code.visualstudio.com/).
8 | * **Lint:** Check for errors using [Spectral](https://stoplight.io/open-source/spectral) or another OAS linter.
9 |
10 | * **Commit:** Write good commit messages using the guidelines in the following section.
11 | * **Push** to your fork to ensure that your pull request contains the most up-to-date version of your code.
12 |
13 | ## Write descriptive commit messages
14 |
15 | * Describe the change using at least one verb and one noun.
16 | * Use specific nouns to identify what you changed.
17 | * Use the present tense ("Fix broken link to x" not "Fixed broken link to x").
18 | * Use the imperative mood ("Fix broken link to x" not "Fixes broken link to x").
19 |
20 | ## Pull request
21 |
22 | [What is a pull request?](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request)
23 |
24 | Use the included `pull_request_template.md` to tell us more about the changes you propose.
25 |
26 | ## Tools
27 |
28 | The following tools might be helpful.
29 |
30 | | Tool | Description |
31 | |:-----|:------------|
32 | | [Spectral CLI](https://stoplight.io/open-source/spectral) | Node.js CLI for the Spectral OpenAPI linter |
33 | | [Spectral Linter for VS Code](https://marketplace.visualstudio.com/items?itemName=stoplight.spectral)| The Spectral OpenAPI linter as a VS Code extension |
34 | | [swagger2openapi](https://www.npmjs.com/package/swagger2openapi)| Node.js CLI for converting Swagger to OpenAPI 3.0 |
35 | | [openapi.tools](https://openapi.tools/) | List of open-source OpenAPI tools |
36 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # BigCommerce API Specifications
2 |
3 | **As of December 27, 2023, you can find all the public BigCommerce DevDocs at [https://github.com/bigcommerce/docs](https://github.com/bigcommerce/docs)!**
4 |
5 | This repository is archived and read only. The final commit has been tagged.
6 |
7 | If you maintain API clients, the new [bigcommerce/docs](https://github.com/bigcommerce/docs) repo is now your source for the most up-to-date API specifications.
8 |
9 | This consolidation lets the BigCommerce DX team offer a more streamlined developer experience. [issues](https://github.com/bigcommerce/docs/issues), [discussions](https://github.com/bigcommerce/docs/discussions), and [pull requests](https://github.com/bigcommerce/docs/pulls) at [bigcommerce/docs](https://github.com/bigcommerce/docs)!
10 |
--------------------------------------------------------------------------------
/docs/docs.mdx:
--------------------------------------------------------------------------------
1 | # Documentation in Markdown
2 |
3 | When there are docs in this repo written in Markdown or MDX, this is where they live.
4 |
--------------------------------------------------------------------------------
/models/email_templates/README.md:
--------------------------------------------------------------------------------
1 | # Email Template Objects
2 |
3 | Object schemas for handlebars email templates.
4 |
5 | ## Directory structure
6 |
7 | ```shell
8 | .
9 | ├── data # json data for generating and updating yaml schema
10 | ├── _all.yml # Groups models together for docs
11 | ├── account_details_changed_email.yml # Individual email template models
12 | ├── ...
13 | ```
14 |
15 | ## Updating models
16 |
17 | To generate a new model from json data and overwrite the existing schema file:
18 |
19 | 1. Copy and paste template `data-*.json` from [localization-tools](https://github.com/bigcommerce/localization-tools/blob/master/email-check/modules/email-templates/types/abandoned_cart_email/data-0.json) to `models/_json/email_templates`.
20 | 2. Use `models/json2schema.py` to convert the json data to a yaml schema.
21 |
22 | Example:
23 |
24 | ```bash
25 | cat data.json | python json2schema.py > schema.yml
26 | ```
27 |
28 | Bash for overwriting all email template models:
29 |
30 | ```bash
31 | for f in models/email_templates/data/*.json; do cat $f | python models/json2schema.py > ${f%.*}.yml; mv ${f%.*}.yml models/email_templates/; done
32 | ```
--------------------------------------------------------------------------------
/models/email_templates/account_details_changed_email.yml:
--------------------------------------------------------------------------------
1 | Account Settings Edited:
2 | title: Account Settings Edited Email Template
3 | description: Account settings email triggers when the store admin or a customer edits account settings.
4 | type: object
5 | properties:
6 | details_changed:
7 | type: object
8 | properties:
9 | fields:
10 | type: array
11 | items:
12 | type: string
13 | store:
14 | type: object
15 | properties:
16 | name:
17 | type: string
18 | domain_name:
19 | type: string
20 | logo:
21 | type: object
22 | properties:
23 | title:
24 | type: string
25 | name:
26 | type: string
27 | url:
28 | type: string
29 | ssl_path:
30 | type: string
31 | cdn_path:
32 | type: string
33 | image_directory:
34 | type: string
35 | img_path:
36 | type: string
37 | path_normal:
38 | type: string
39 | description: 'Path to the store (i.e., domain + protocol)'
40 | path:
41 | type: string
42 | address:
43 | type: string
44 | language:
45 | type: object
46 | properties:
47 | code:
48 | type: string
49 | direction:
50 | type: string
51 | description: 'Left to right or right to left, depending on the language'
52 | customer:
53 | type: object
54 | properties:
55 | first_name:
56 | type: string
57 | full_name:
58 | type: string
59 | email:
60 | type: string
61 | group:
62 | type: array
63 | items:
64 | type: object
65 | properties:
66 | name:
67 | type: string
68 | misc:
69 | type: object
70 | properties:
71 | year:
72 | type: integer
73 | translations:
74 | type: object
75 | properties:
76 | en:
77 | type: object
78 | properties:
79 | title:
80 | type: string
81 | hello:
82 | type: string
83 | message:
84 | type: string
85 | warning:
86 | type: string
87 | thanks:
88 | type: string
89 | security:
90 | type: string
91 | go_shopping:
92 | type: string
93 | examples:
94 | details_changed:
95 | fields:
96 | Email
97 | Password
98 | store:
99 | name: My Dev Store 97434969
100 | domain_name: 'my-dev-store-97434969.store.bcdev'
101 | logo:
102 | title: '[= My Dev Store 97434969 =]'
103 | name: avatar-2020_1612860757__16350.jpeg
104 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
105 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
106 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
107 | image_directory: product_images
108 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
109 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
110 | path: 'https://my-dev-store-97434969.store.bcdev'
111 | address:
112 | language:
113 | code: en
114 | direction: ltr
115 | customer:
116 | first_name: John
117 | full_name: John Jr
118 | email: 'john.f@example.com'
119 | misc:
120 | year: 2021
121 | translations:
122 | en:
123 | title: Your {{name}} account details have changed
124 | hello: Hello {{name}},
125 | message: 'We wanted to let you know that the following details have been changed on your {{name}} account:'
126 | warning: 'If you made the changes yourself, please disregard this email. If not, please contact the store immediately through their website: {{domain}}.'
127 | thanks: Thanks,
128 | security: The BigCommerce Security Team
129 | go_shopping: Go shopping
130 |
--------------------------------------------------------------------------------
/models/email_templates/account_reset_password_email.yml:
--------------------------------------------------------------------------------
1 | Password Reset:
2 | title: Password Reset Email Template
3 | description: Password reset email triggers when a customer resets their account password on the customer details page.
4 | type: object
5 | properties:
6 | reset_password:
7 | type: object
8 | properties:
9 | link:
10 | type: string
11 | store:
12 | type: object
13 | properties:
14 | name:
15 | type: string
16 | domain_name:
17 | type: string
18 | logo:
19 | type: object
20 | properties:
21 | title:
22 | type: string
23 | name:
24 | type: string
25 | url:
26 | type: string
27 | ssl_path:
28 | type: string
29 | cdn_path:
30 | type: string
31 | image_directory:
32 | type: string
33 | img_path:
34 | type: string
35 | path_normal:
36 | type: string
37 | description: 'Path to the store (i.e., domain + protocol)'
38 | path:
39 | type: string
40 | address:
41 | type: string
42 | language:
43 | type: object
44 | properties:
45 | code:
46 | type: string
47 | direction:
48 | type: string
49 | description: 'Left to right or right to left, depending on the language'
50 | customer:
51 | type: object
52 | properties:
53 | first_name:
54 | type: string
55 | full_name:
56 | type: string
57 | email:
58 | type: string
59 | group:
60 | type: array
61 | items:
62 | type: object
63 | properties:
64 | name:
65 | type: string
66 | misc:
67 | type: object
68 | properties:
69 | year:
70 | type: integer
71 | translations:
72 | type: object
73 | properties:
74 | en:
75 | type: object
76 | properties:
77 | title:
78 | type: string
79 | message:
80 | type: string
81 | go_shopping:
82 | type: string
83 | examples:
84 | reset_password:
85 | link: #reset-password-link
86 | store:
87 | name: My Dev Store 97434969
88 | domain_name: my-dev-store-97434969.store.bcdev
89 | logo:
90 | title: [= My Dev Store 97434969 =]
91 | name: avatar-2020_1612860757__16350.jpeg
92 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
93 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
94 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
95 | image_directory: product_images
96 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
97 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
98 | path: 'https://my-dev-store-97434969.store.bcdev'
99 | address:
100 | language:
101 | code: en
102 | direction: ltr
103 | customer:
104 | first_name: John,
105 | full_name: John Jr,
106 | email: 'john.f@example.com'
107 | misc:
108 | year: 2021
109 | translations:
110 | en:
111 | title: Change your password for {{name}}
112 | message: 'To change your customer account password at {{store}} please click this link or copy and paste it into your browser:'
113 | go_shopping: Go shopping
114 |
--------------------------------------------------------------------------------
/models/email_templates/combined/README.md:
--------------------------------------------------------------------------------
1 | # Email Template Objects
2 |
3 | Object schemas for handlebars email templates.
4 |
5 | ## Directory structure
6 |
7 | ```shell
8 | .
9 | ├── data # json data for generating and updating yaml schema
10 | ├── _all.yml # Groups models together for docs
11 | ├── account_details_changed_email.yml # Individual email template models
12 | ├── ...
13 | ```
14 |
15 | ## Updating models
16 |
17 | To generate a new model from json data and overwrite the existing schema file:
18 |
19 | 1. Copy and paste template `data-*.json` from [localization-tools](https://github.com/bigcommerce/localization-tools/blob/master/email-check/modules/email-templates/types/abandoned_cart_email/data-0.json) to `models/_json/email_templates`.
20 | 2. Use `models/json2schema.py` to convert the json data to a yaml schema.
21 |
22 | Example:
23 |
24 | ```bash
25 | cat data.json | python json2schema.py > schema.yml
26 | ```
27 |
28 | Bash for overwriting all email template models:
29 |
30 | ```bash
31 | for f in models/email_templates/data/*.json; do cat $f | python models/json2schema.py > ${f%.*}.yml; mv ${f%.*}.yml models/email_templates/; done
32 | ```
--------------------------------------------------------------------------------
/models/email_templates/combined/abandoned_cart_email.yml:
--------------------------------------------------------------------------------
1 | title: Abandoned Cart Email Template
2 | description: Abandoned cart email triggers when a shopper doesnʼt complete an order.
3 | type: object
4 | properties:
5 | notification:
6 | type: array
7 | items:
8 | type: object
9 | properties:
10 | unsubscribe_link:
11 | type: string
12 | checkout_link:
13 | type: string
14 | coupon:
15 | type: array
16 | items:
17 | type: object
18 | properties:
19 | code:
20 | type: string
21 | type:
22 | type: array
23 | items:
24 | type: object
25 | properties:
26 | value:
27 | type: string
28 | formatted:
29 | type: string
30 | amount:
31 | type: array
32 | items:
33 | type: object
34 | properties:
35 | value:
36 | type: number
37 | format: float
38 | formatted:
39 | type: string
40 | cart:
41 | type: array
42 | items:
43 | type: object
44 | properties:
45 | products:
46 | type: array
47 | items:
48 | type: object
49 | properties:
50 | type: array
51 | items:
52 | type: object
53 | properties:
54 | id:
55 | type: number
56 | url:
57 | type: string
58 | name:
59 | type: string
60 | quantity:
61 | type: integer
62 | sku:
63 | type: string
64 | thumbnail:
65 | type: string
66 | attributes:
67 | type: array
68 | items:
69 | type: object
70 | properties:
71 | type: array
72 | items:
73 | type: object
74 | properties:
75 | name:
76 | type: string
77 | value:
78 | type: string
79 | price:
80 | type: array
81 | items:
82 | type: object
83 | properties:
84 | value:
85 | type: number
86 | format: float
87 | formatted:
88 | type: string
89 | type:
90 | type: array
91 | items:
92 | type: object
93 | properties:
94 | value:
95 | type: integer
96 | formatted:
97 | type: string
98 | store:
99 | type: array
100 | items:
101 | type: object
102 | properties:
103 | name:
104 | type: string
105 | domain_name:
106 | type: string
107 | logo:
108 | type: array
109 | items:
110 | type: object
111 | properties:
112 | title:
113 | type: string
114 | name:
115 | type: string
116 | url:
117 | type: string
118 | ssl_path:
119 | type: string
120 | cdn_path:
121 | type: string
122 | image_directory:
123 | type: string
124 | img_path:
125 | type: string
126 | path_normal:
127 | type: string
128 | path:
129 | type: string
130 | address:
131 | type: string
132 | phone_number:
133 | type: string
134 | language:
135 | type: array
136 | items:
137 | type: object
138 | properties:
139 | code:
140 | type: string
141 | direction:
142 | type: string
143 | customer:
144 | type: array
145 | items:
146 | type: object
147 | properties:
148 | first_name:
149 | type: string
150 | full_name:
151 | type: string
152 | email:
153 | type: string
154 | group:
155 | type: array
156 | items:
157 | type: object
158 | properties:
159 | id:
160 | type: number
161 | name:
162 | type: string
163 | misc:
164 | type: array
165 | items:
166 | type: object
167 | properties:
168 | year:
169 | type: integer
170 |
--------------------------------------------------------------------------------
/models/email_templates/combined/abandoned_cart_email_deprecated.yml:
--------------------------------------------------------------------------------
1 | title: Abandoned Cart Email Template (Deprecated)
2 | description: Abandoned cart email triggers when a shopper doesnʼt complete an order.
3 | type: object
4 | deprecated: true
5 | properties:
6 | abandoned_cart:
7 | type: object
8 | title: deprecated
9 | deprecated: true
10 | properties:
11 | body:
12 | type: string
13 | unsubscribe_link:
14 | type: string
15 | store:
16 | type: object
17 | deprecated: true
18 | properties:
19 | name:
20 | type: string
21 | domain_name:
22 | type: string
23 | logo:
24 | type: object
25 | deprecated: true
26 | properties:
27 | title:
28 | type: string
29 | name:
30 | type: string
31 | url:
32 | type: string
33 | ssl_path:
34 | type: string
35 | cdn_path:
36 | type: string
37 | image_directory:
38 | type: string
39 | img_path:
40 | type: string
41 | path_normal:
42 | type: string
43 | description: 'Path to the store (i.e., domain + protocol)'
44 | path:
45 | type: string
46 | address:
47 | type: string
48 | language:
49 | type: object
50 | properties:
51 | code:
52 | type: string
53 | direction:
54 | type: string
55 | description: 'Left to right or right to left, depending on the language'
56 | customer:
57 | type: object
58 | deprecated: true
59 | properties:
60 | first_name:
61 | type: string
62 | full_name:
63 | type: string
64 | email:
65 | type: string
66 | group:
67 | type: array
68 | items:
69 | type: object
70 | properties:
71 | name:
72 | type: string
73 | misc:
74 | type: object
75 | deprecated: true
76 | properties:
77 | year:
78 | type: integer
79 | translations:
80 | type: object
81 | deprecated: true
82 | properties:
83 | en:
84 | type: object
85 | properties:
86 | unsubscribe:
87 | type: string
88 | examples:
89 | Abandoned Cart example (deprecated):
90 | value:
91 | abandoned_cart:
92 | body: You recently visited our online store and we noticed that you didnʼt complete your order.\n
To complete your order right now, just click on the link below:\n Complete your order
93 | unsubscribe_link: 'example.com/unsubscribe'
94 | store:
95 | name: My Dev Store 97434969
96 | domain_name: my-dev-store-97434969.store.bcdev
97 | logo:
98 | title: [= My Dev Store 97434969 =]
99 | name: avatar-2020_1612860757__16350.jpeg
100 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
101 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
102 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
103 | image_directory: product_images
104 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
105 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
106 | path: 'https://my-dev-store-97434969.store.bcdev'
107 | address: '123 Fake St, Dallas, TX 75225'
108 | language:
109 | code: en
110 | direction: ltr
111 | customer:
112 | first_name: John
113 | full_name: John Jr
114 | email: 'john.f@example.com'
115 | misc:
116 | year: 2021
117 | translations:
118 | en:
119 | unsubscribe: 'Unsubscribe from future emails like this.'
120 |
--------------------------------------------------------------------------------
/models/email_templates/combined/account_details_changed_email.yml:
--------------------------------------------------------------------------------
1 | title: Account Settings Edited Email Template
2 | description: Account settings email triggers when the store admin or a customer edits account settings.
3 | type: object
4 | properties:
5 | details_changed:
6 | type: object
7 | properties:
8 | fields:
9 | type: array
10 | items:
11 | type: string
12 | store:
13 | type: object
14 | properties:
15 | name:
16 | type: string
17 | domain_name:
18 | type: string
19 | logo:
20 | type: object
21 | properties:
22 | title:
23 | type: string
24 | name:
25 | type: string
26 | url:
27 | type: string
28 | ssl_path:
29 | type: string
30 | cdn_path:
31 | type: string
32 | image_directory:
33 | type: string
34 | img_path:
35 | type: string
36 | path_normal:
37 | type: string
38 | description: 'Path to the store (i.e., domain + protocol)'
39 | path:
40 | type: string
41 | address:
42 | type: string
43 | language:
44 | type: object
45 | properties:
46 | code:
47 | type: string
48 | direction:
49 | type: string
50 | description: 'Left to right or right to left, depending on the language'
51 | customer:
52 | type: object
53 | properties:
54 | first_name:
55 | type: string
56 | full_name:
57 | type: string
58 | email:
59 | type: string
60 | group:
61 | type: array
62 | items:
63 | type: object
64 | properties:
65 | name:
66 | type: string
67 | misc:
68 | type: object
69 | properties:
70 | year:
71 | type: integer
72 | translations:
73 | type: object
74 | properties:
75 | en:
76 | type: object
77 | properties:
78 | title:
79 | type: string
80 | hello:
81 | type: string
82 | message:
83 | type: string
84 | warning:
85 | type: string
86 | thanks:
87 | type: string
88 | security:
89 | type: string
90 | go_shopping:
91 | type: string
92 | example:
93 | details_changed:
94 | fields:
95 | - Email
96 | - Password
97 | store:
98 | name: My Dev Store 97434969
99 | domain_name: 'my-dev-store-97434969.store.bcdev'
100 | logo:
101 | title: '[= My Dev Store 97434969 =]'
102 | name: avatar-2020_1612860757__16350.jpeg
103 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
104 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
105 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
106 | image_directory: product_images
107 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
108 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
109 | path: 'https://my-dev-store-97434969.store.bcdev'
110 | address:
111 | language:
112 | code: en
113 | direction: ltr
114 | customer:
115 | first_name: John
116 | full_name: John Jr
117 | email: 'john.f@example.com'
118 | misc:
119 | year: 2021
120 | translations:
121 | en:
122 | title: Your {{name}} account details have changed
123 | hello: Hello {{name}},
124 | message: 'We wanted to let you know that the following details have been changed on your {{name}} account:'
125 | warning: 'If you made the changes yourself, please disregard this email. If not, please contact the store immediately through their website: {{domain}}.'
126 | thanks: Thanks,
127 | security: The BigCommerce Security Team
128 | go_shopping: Go shopping
129 |
--------------------------------------------------------------------------------
/models/email_templates/combined/account_reset_password_email.yml:
--------------------------------------------------------------------------------
1 | title: Password Reset Email Template
2 | description: Password reset email triggers when a customer resets their account password on the customer details page.
3 | type: object
4 | properties:
5 | reset_password:
6 | type: object
7 | properties:
8 | link:
9 | type: string
10 | store:
11 | type: object
12 | properties:
13 | name:
14 | type: string
15 | domain_name:
16 | type: string
17 | logo:
18 | type: object
19 | properties:
20 | title:
21 | type: string
22 | name:
23 | type: string
24 | url:
25 | type: string
26 | ssl_path:
27 | type: string
28 | cdn_path:
29 | type: string
30 | image_directory:
31 | type: string
32 | img_path:
33 | type: string
34 | path_normal:
35 | type: string
36 | description: 'Path to the store (i.e., domain + protocol)'
37 | path:
38 | type: string
39 | address:
40 | type: string
41 | language:
42 | type: object
43 | properties:
44 | code:
45 | type: string
46 | direction:
47 | type: string
48 | description: 'Left to right or right to left, depending on the language'
49 | customer:
50 | type: object
51 | properties:
52 | first_name:
53 | type: string
54 | full_name:
55 | type: string
56 | email:
57 | type: string
58 | group:
59 | type: array
60 | items:
61 | type: object
62 | properties:
63 | name:
64 | type: string
65 | misc:
66 | type: object
67 | properties:
68 | year:
69 | type: integer
70 | translations:
71 | type: object
72 | properties:
73 | en:
74 | type: object
75 | properties:
76 | title:
77 | type: string
78 | message:
79 | type: string
80 | go_shopping:
81 | type: string
82 | example:
83 | reset_password:
84 | link: #reset-password-link
85 | store:
86 | name: My Dev Store 97434969
87 | domain_name: my-dev-store-97434969.store.bcdev
88 | logo:
89 | title: [= My Dev Store 97434969 =]
90 | name: avatar-2020_1612860757__16350.jpeg
91 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
92 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
93 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
94 | image_directory: product_images
95 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
96 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
97 | path: 'https://my-dev-store-97434969.store.bcdev'
98 | address: '123 Fake St, Dallas, TX 75225'
99 | language:
100 | code: en
101 | direction: ltr
102 | customer:
103 | first_name: John,
104 | full_name: John Jr,
105 | email: 'john.f@example.com'
106 | misc:
107 | year: 2021
108 | translations:
109 | en:
110 | title: Change your password for {{name}}
111 | message: 'To change your customer account password at {{store}} please click this link or copy and paste it into your browser:'
112 | go_shopping: Go shopping
113 |
--------------------------------------------------------------------------------
/models/email_templates/combined/create_account_email.yml:
--------------------------------------------------------------------------------
1 | title: Account Created Email Template
2 | description: Account created email triggers when a customer or store admin creates their account.
3 | type: object
4 | properties:
5 | store:
6 | type: object
7 | properties:
8 | name:
9 | type: string
10 | domain_name:
11 | type: string
12 | logo:
13 | type: object
14 | properties:
15 | title:
16 | type: string
17 | name:
18 | type: string
19 | url:
20 | type: string
21 | ssl_path:
22 | type: string
23 | cdn_path:
24 | type: string
25 | image_directory:
26 | type: string
27 | img_path:
28 | type: string
29 | path_normal:
30 | type: string
31 | description: 'Path to the store (i.e., domain + protocol)'
32 | path:
33 | type: string
34 | address:
35 | type: string
36 | language:
37 | type: object
38 | properties:
39 | code:
40 | type: string
41 | direction:
42 | type: string
43 | description: 'Left to right or right to left, depending on the language'
44 | customer:
45 | type: object
46 | properties:
47 | first_name:
48 | type: string
49 | full_name:
50 | type: string
51 | email:
52 | type: string
53 | group:
54 | type: array
55 | items:
56 | type: object
57 | properties:
58 | name:
59 | type: string
60 | misc:
61 | type: object
62 | properties:
63 | year:
64 | type: integer
65 | translations:
66 | type: object
67 | properties:
68 | en:
69 | type: object
70 | properties:
71 | title:
72 | type: string
73 | hello:
74 | type: string
75 | message:
76 | type: string
77 | details_title:
78 | type: string
79 | email_label:
80 | type: string
81 | password_label:
82 | type: string
83 | password_placeholder:
84 | type: string
85 | sign_in:
86 | type: string
87 | help:
88 | type: string
89 | go_shopping:
90 | type: string
91 | example:
92 | store:
93 | name: My Dev Store 97434969
94 | domain_name: my-dev-store-97434969.store.bcdev
95 | logo:
96 | title: [= My Dev Store 97434969 =]
97 | name: avatar-2020_1612860757__16350.jpeg
98 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
99 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
100 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
101 | image_directory: product_images
102 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
103 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
104 | path: 'https://my-dev-store-97434969.store.bcdev'
105 | address: '123 Fake St, Dallas, TX 75225'
106 | language:
107 | code: en
108 | direction: ltr
109 | customer:
110 | first_name: John
111 | full_name: John Jr
112 | email: john.f@example.com
113 | misc:
114 | year: 2021
115 | translations:
116 | en:
117 | title: Thanks for registering at {{store}}
118 | hello: Hello {{name}}.
119 | message: Thank you for creating your account at {{name}}.
120 | details_title: Account details
121 | email_label: 'Email Address:'
122 | password_label: 'Password:'
123 | password_placeholder: [The password you specified]
124 | sign_in: Sign in to account
125 | help: If you have any questions regarding your account, click 'Reply' in your email client and we'll be only too happy to help.
126 | go_shopping: Go shopping
127 |
128 |
129 |
--------------------------------------------------------------------------------
/models/email_templates/combined/create_guest_account_email.yml:
--------------------------------------------------------------------------------
1 | title: Create Guest Account Email Template
2 | description: Guest account created email triggers when a customer or store admin creates a guest account.
3 | type: object
4 | properties:
5 | guest_account:
6 | type: object
7 | properties:
8 | link:
9 | type: string
10 | store:
11 | type: object
12 | properties:
13 | name:
14 | type: string
15 | domain_name:
16 | type: string
17 | logo:
18 | type: object
19 | properties:
20 | title:
21 | type: string
22 | name:
23 | type: string
24 | url:
25 | type: string
26 | ssl_path:
27 | type: string
28 | cdn_path:
29 | type: string
30 | image_directory:
31 | type: string
32 | img_path:
33 | type: string
34 | path_normal:
35 | type: string
36 | description: 'Path to the store (i.e., domain + protocol)'
37 | path:
38 | type: string
39 | address:
40 | type: string
41 | language:
42 | type: object
43 | properties:
44 | code:
45 | type: string
46 | direction:
47 | type: string
48 | description: 'Left to right or right to left, depending on the language'
49 | customer:
50 | type: object
51 | properties:
52 | first_name:
53 | type: string
54 | full_name:
55 | type: string
56 | email:
57 | type: string
58 | misc:
59 | type: object
60 | properties:
61 | year:
62 | type: integer
63 | translations:
64 | type: object
65 | properties:
66 | en:
67 | type: object
68 | properties:
69 | title:
70 | type: string
71 | hello:
72 | type: string
73 | message:
74 | type: string
75 | instruction:
76 | type: string
77 | help:
78 | type: string
79 | go_shopping:
80 | type: string
81 | examples:
82 | guest_account:
83 | link: 'https://example.com/reset-password'
84 | store:
85 | name: My Dev Store 97434969
86 | domain_name: my-dev-store-97434969.store.bcdev
87 | logo:
88 | title: [= My Dev Store 97434969 =]
89 | name: avatar-2020_1612860757__16350.jpeg
90 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
91 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
92 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
93 | image_directory: product_images
94 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
95 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
96 | path: 'https://my-dev-store-97434969.store.bcdev'
97 | address: '123 Fake St, Dallas, TX 75225'
98 | language:
99 | code: en
100 | direction: ltr
101 | customer:
102 | first_name: John
103 | full_name: John Jr
104 | email: 'john.f@example.com'
105 | misc:
106 | year: 2021
107 | translations:
108 | en:
109 | title: Welcome to {{name}}
110 | hello: Hello {{name}},
111 | message: For your convenience, we've created you an account on {{store}} so you can check the status of your order and checkout quicker in the future.
112 | instruction: 'To login you will need to follow the link below to nominate your password:'
113 | help: If you have any questions regarding your account, click 'Reply' in your email client and we'll be only too happy to help.
114 | go_shopping: Go shopping
115 |
--------------------------------------------------------------------------------
/models/email_templates/combined/global.yml:
--------------------------------------------------------------------------------
1 | title: Global Email Template Object
2 | description: Data objects across all email templates.
3 | type: object
4 | properties:
5 | store:
6 | type: object
7 | properties:
8 | name:
9 | type: string
10 | domain_name:
11 | type: string
12 | logo:
13 | type: object
14 | properties:
15 | title:
16 | type: string
17 | name:
18 | type: string
19 | url:
20 | type: string
21 | ssl_path:
22 | type: string
23 | cdn_path:
24 | type: string
25 | image_directory:
26 | type: string
27 | img_path:
28 | type: string
29 | path_normal:
30 | type: string
31 | description: 'Path to the store (i.e., domain + protocol)'
32 | path:
33 | type: string
34 | address:
35 | type: string
36 | language:
37 | type: object
38 | properties:
39 | code:
40 | type: string
41 | direction:
42 | type: string
43 | description: 'Left to right or right to left, depending on the language'
44 | customer:
45 | type: object
46 | properties:
47 | first_name:
48 | type: string
49 | full_name:
50 | type: string
51 | email:
52 | type: string
53 | group:
54 | type: array
55 | items:
56 | type: object
57 | properties:
58 | name:
59 | type: string
60 | misc:
61 | type: object
62 | properties:
63 | year:
64 | type: integer
65 | example:
66 | store:
67 | name: string,
68 | domain_name: string
69 | logo:
70 | title: string
71 | name: string
72 | url: string
73 | ssl_path: string
74 | cdn_path: string
75 | image_directory: string
76 | img_path: string
77 | path_normal: string
78 | path: string
79 | address: string
80 | language:
81 | code: string
82 | direction: string
83 | customer:
84 | first_name: string
85 | full_name: string
86 | email: string
87 | misc:
88 | year: int
89 |
--------------------------------------------------------------------------------
/models/email_templates/combined/order_message_notification.yml:
--------------------------------------------------------------------------------
1 | title: Order Notification Email Template
2 | description: Order notification email triggers when a retailer or store admin adds a message to an order.
3 | type: object
4 | properties:
5 | notification:
6 | type: object
7 | properties:
8 | message:
9 | type: string
10 | link:
11 | type: string
12 | subject:
13 | type: string
14 | store:
15 | type: object
16 | properties:
17 | name:
18 | type: string
19 | domain_name:
20 | type: string
21 | logo:
22 | type: object
23 | properties:
24 | title:
25 | type: string
26 | name:
27 | type: string
28 | url:
29 | type: string
30 | ssl_path:
31 | type: string
32 | cdn_path:
33 | type: string
34 | image_directory:
35 | type: string
36 | img_path:
37 | type: string
38 | path_normal:
39 | type: string
40 | description: 'Path to the store (i.e., domain + protocol)'
41 | path:
42 | type: string
43 | address:
44 | type: string
45 | language:
46 | type: object
47 | properties:
48 | code:
49 | type: string
50 | direction:
51 | type: string
52 | description: 'Left to right or right to left, depending on the language'
53 | customer:
54 | type: object
55 | properties:
56 | first_name:
57 | type: string
58 | full_name:
59 | type: string
60 | email:
61 | type: string
62 | group:
63 | type: array
64 | items:
65 | type: object
66 | properties:
67 | name:
68 | type: string
69 | misc:
70 | type: object
71 | properties:
72 | year:
73 | type: integer
74 | translations:
75 | type: object
76 | properties:
77 | en:
78 | type: object
79 | properties:
80 | title:
81 | type: string
82 | hello:
83 | type: string
84 | message:
85 | type: string
86 | reply:
87 | type: string
88 | go_shopping:
89 | type: string
90 | example:
91 | notification:
92 | message: Message from the retailer
93 | link: 'https://my-dev-store-97434969.store.bcdev/account.php?action=inbox'
94 | store:
95 | name: My Dev Store 97434969
96 | domain_name: my-dev-store-97434969.store.bcdev
97 | logo:
98 | title: [= My Dev Store 97434969 =]
99 | name: avatar-2020_1612860757__16350.jpeg
100 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
101 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
102 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
103 | image_directory: product_images
104 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
105 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
106 | path: 'https://my-dev-store-97434969.store.bcdev'
107 | address: '123 Fake St, Dallas, TX 75225'
108 | language:
109 | code: en
110 | direction: ltr
111 | customer:
112 | first_name: John
113 | full_name: John Jr
114 | email: 'john.f@example.com'
115 | misc:
116 | year: 2021
117 | translations:
118 | en:
119 | title: New Reply to your Order Message
120 | hello: Hello {{name}}.
121 | message: '{{name}} has sent you a message about your order.'
122 | reply: Reply
123 | go_shopping: Go shopping
124 |
--------------------------------------------------------------------------------
/models/email_templates/combined/passwordless_login_email.yml:
--------------------------------------------------------------------------------
1 | title: Sign in Link Request Email Template
2 | description: Sign-in request email triggers when an existing customer requests passwordless login while checking out.
3 | type: object
4 | properties:
5 | passwordless_login:
6 | type: object
7 | properties:
8 | link:
9 | type: string
10 | store:
11 | type: object
12 | properties:
13 | name:
14 | type: string
15 | domain_name:
16 | type: string
17 | logo:
18 | type: object
19 | properties:
20 | title:
21 | type: string
22 | name:
23 | type: string
24 | url:
25 | type: string
26 | ssl_path:
27 | type: string
28 | cdn_path:
29 | type: string
30 | image_directory:
31 | type: string
32 | img_path:
33 | type: string
34 | path_normal:
35 | type: string
36 | description: 'Path to the store (i.e., domain + protocol)'
37 | path:
38 | type: string
39 | address:
40 | type: string
41 | language:
42 | type: object
43 | properties:
44 | code:
45 | type: string
46 | direction:
47 | type: string
48 | description: 'Left to right or right to left, depending on the language'
49 | customer:
50 | type: object
51 | properties:
52 | first_name:
53 | type: string
54 | full_name:
55 | type: string
56 | email:
57 | type: string
58 | group:
59 | type: array
60 | items:
61 | type: object
62 | properties:
63 | name:
64 | type: string
65 | misc:
66 | type: object
67 | properties:
68 | year:
69 | type: integer
70 | translations:
71 | type: object
72 | properties:
73 | en:
74 | type: object
75 | properties:
76 | title:
77 | type: string
78 | message:
79 | type: string
80 | alternatively:
81 | type: string
82 | login_request:
83 | type: string
84 | secure:
85 | type: string
86 | go_shopping:
87 | type: string
88 | example:
89 | passwordless_login: '"link": "#sign-in-link"'
90 | store:
91 | name: My Dev Store 97434969
92 | domain_name: 'my-dev-store-97434969.store.bcdev'
93 | logo:
94 | title: [= My Dev Store 97434969 =]
95 | name: avatar-2020_1612860757__16350.jpeg
96 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
97 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
98 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
99 | image_directory: product_images
100 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
101 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
102 | path: 'https://my-dev-store-97434969.store.bcdev'
103 | address: '123 Fake St, Dallas, TX 75225'
104 | language:
105 | code: en
106 | direction: ltr
107 | customer:
108 | first_name: John
109 | full_name: John Jr
110 | email: 'john.f@example.com'
111 | misc:
112 | year: 2021
113 | translations:
114 | en:
115 | title: Please click the link below to sign in to your account with {{name}}
116 | message: 'You have requested a sign-in link. Please click here to sign in and continue.'
117 | alternatively: 'Alternatively, paste the following link in your browser:'
118 | login_request: This login is for {{name}} if you did not request this link, please ignore this email.
119 | secure: Your account is still secure.
120 | go_shopping: Go shopping
121 |
--------------------------------------------------------------------------------
/models/email_templates/combined/product_review_email.yml:
--------------------------------------------------------------------------------
1 | title: Product Review Email Template
2 | description: Product review request email triggers after a customer purchases a product.
3 | type: object
4 | properties:
5 | review:
6 | type: object
7 | properties:
8 | products:
9 | type: array
10 | items:
11 | type: object
12 | properties:
13 | name:
14 | type: string
15 | sku:
16 | type: string
17 | link:
18 | type: string
19 | price:
20 | type: string
21 | thumbnail:
22 | type: string
23 | unsubscribe_link:
24 | type: string
25 | store:
26 | type: object
27 | properties:
28 | name:
29 | type: string
30 | domain_name:
31 | type: string
32 | logo:
33 | type: object
34 | properties:
35 | title:
36 | type: string
37 | name:
38 | type: string
39 | url:
40 | type: string
41 | ssl_path:
42 | type: string
43 | cdn_path:
44 | type: string
45 | image_directory:
46 | type: string
47 | img_path:
48 | type: string
49 | path_normal:
50 | type: string
51 | description: 'Path to the store (i.e., domain + protocol)'
52 | path:
53 | type: string
54 | address:
55 | type: string
56 | language:
57 | type: object
58 | properties:
59 | code:
60 | type: string
61 | direction:
62 | type: string
63 | description: 'Left to right or right to left, depending on the language'
64 | customer:
65 | type: object
66 | properties:
67 | first_name:
68 | type: string
69 | full_name:
70 | type: string
71 | email:
72 | type: string
73 | group:
74 | type: array
75 | items:
76 | type: object
77 | properties:
78 | name:
79 | type: string
80 | misc:
81 | type: object
82 | properties:
83 | year:
84 | type: integer
85 | translations:
86 | type: object
87 | properties:
88 | en:
89 | type: object
90 | properties:
91 | title:
92 | type: string
93 | hello:
94 | type: string
95 | message:
96 | type: string
97 | instruction:
98 | type: string
99 | review_text:
100 | type: string
101 | thanks:
102 | type: string
103 | go_shopping:
104 | type: string
105 | examples:
106 | review:
107 | products:
108 | - name: Name of Product
109 | sku: FA44
110 | link: '#review-link'
111 | unsubscribe_link: '#unsubscribe-link'
112 | store:
113 | name: My Dev Store 97434969
114 | domain_name: my-dev-store-97434969.store.bcdev
115 | logo:
116 | title: [= My Dev Store 97434969 =]
117 | name: avatar-2020_1612860757__16350.jpeg
118 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
119 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
120 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
121 | image_directory: product_images
122 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
123 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
124 | path: 'https://my-dev-store-97434969.store.bcdev'
125 | address: '123 Fake St, Dallas, TX 75225'
126 | language:
127 | code: en
128 | direction: ltr
129 | customer:
130 | first_name: John
131 | full_name: John Jr
132 | email: 'john.f@example.com'
133 | misc:
134 | year: 2021
135 | translations:
136 | en:
137 | title: Review products you've recently purchased
138 | hello: Hello {{name}},
139 | message: Thanks for your recent order with us!,
140 | instruction: If you have a few minutes, we'd like to invite you to review the products you ordered. Just click on the link below to write a review and share your opinion with other shoppers.
141 | review_text: Review product
142 | thanks: Thanks in advance for taking the time to review the products you purchased!
143 | go_shopping: Go shopping
144 |
--------------------------------------------------------------------------------
/models/email_templates/combined/return_confirmation_email.yml:
--------------------------------------------------------------------------------
1 | title: Return Requested Email Template
2 | description: 'Return requested email triggers after a customer’s return is approved.'
3 | type: object
4 | properties:
5 | return:
6 | type: object
7 | properties:
8 | return_id:
9 | type: string
10 | reason:
11 | type: string
12 | action:
13 | type: string
14 | comments:
15 | type: string
16 | products:
17 | type: array
18 | items:
19 | type: object
20 | properties:
21 | name:
22 | type: string
23 | quantity:
24 | type: integer
25 | price:
26 | type: string
27 | sku:
28 | type: string
29 | thumbnail:
30 | type: string
31 | order:
32 | type: object
33 | properties:
34 | id:
35 | type: integer
36 | store:
37 | type: object
38 | properties:
39 | name:
40 | type: string
41 | domain_name:
42 | type: string
43 | logo:
44 | type: object
45 | properties:
46 | title:
47 | type: string
48 | name:
49 | type: string
50 | url:
51 | type: string
52 | ssl_path:
53 | type: string
54 | cdn_path:
55 | type: string
56 | image_directory:
57 | type: string
58 | img_path:
59 | type: string
60 | path_normal:
61 | type: string
62 | description: 'Path to the store (i.e., domain + protocol)'
63 | path:
64 | type: string
65 | address:
66 | type: string
67 | language:
68 | type: object
69 | properties:
70 | code:
71 | type: string
72 | direction:
73 | type: string
74 | description: 'Left to right or right to left, depending on the language'
75 | customer:
76 | type: object
77 | properties:
78 | first_name:
79 | type: string
80 | full_name:
81 | type: string
82 | email:
83 | type: string
84 | group:
85 | type: array
86 | items:
87 | type: object
88 | properties:
89 | name:
90 | type: string
91 | misc:
92 | type: object
93 | properties:
94 | year:
95 | type: integer
96 | translations:
97 | type: object
98 | properties:
99 | en:
100 | type: object
101 | properties:
102 | confirmation:
103 | type: string
104 | summary:
105 | type: string
106 | clickHere:
107 | type: string
108 | reason:
109 | type: string
110 | action:
111 | type: string
112 | comments:
113 | type: string
114 | contains:
115 | type: string
116 | items:
117 | type: string
118 | quantity:
119 | type: string
120 | example:
121 | return:
122 | return_id: 123
123 | reason: reason of return
124 | action: action
125 | comments: sample comment
126 | order_id: 321
127 | products:
128 | - name: Shower Gel
129 | quantity: 3
130 | store:
131 | name: My Dev Store 97434969
132 | domain_name: 'my-dev-store-97434969.store.bcdev'
133 | logo:
134 | title: '[= My Dev Store 97434969 =]'
135 | name: avatar-2020_1612860757__16350.jpeg
136 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
137 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
138 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
139 | image_directory: product_images
140 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
141 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
142 | path: 'https://my-dev-store-97434969.store.bcdev'
143 | address: '123 Fake St, Dallas, TX 75225'
144 | language:
145 | code: en
146 | direction: ltr
147 | customer:
148 | first_name: John
149 | full_name: John Jr
150 | email: 'john.f@example.com'
151 | misc:
152 | year: 2021
153 | translations:
154 | en:
155 | confirmation: Confirmation for Return Request for Order ID
156 | summary: A summary of your return is shown below. To view the status of this return
157 | clickHere: click here
158 | reason: Return Reason
159 | action: Return Action
160 | comments: Your Comments
161 | contains: Your Return Request Contains the Following Items...
162 | items: Return Items
163 | quantity: Qty
164 |
--------------------------------------------------------------------------------
/models/email_templates/create_account_email.yml:
--------------------------------------------------------------------------------
1 | Account Created:
2 | title: Account Created Email Template
3 | description: Account created email triggers when a customer or store admin creates their account.
4 | type: object
5 | properties:
6 | store:
7 | type: object
8 | properties:
9 | name:
10 | type: string
11 | domain_name:
12 | type: string
13 | logo:
14 | type: object
15 | properties:
16 | title:
17 | type: string
18 | name:
19 | type: string
20 | url:
21 | type: string
22 | ssl_path:
23 | type: string
24 | cdn_path:
25 | type: string
26 | image_directory:
27 | type: string
28 | img_path:
29 | type: string
30 | path_normal:
31 | type: string
32 | description: 'Path to the store (i.e., domain + protocol)'
33 | path:
34 | type: string
35 | address:
36 | type: string
37 | language:
38 | type: object
39 | properties:
40 | code:
41 | type: string
42 | direction:
43 | type: string
44 | description: 'Left to right or right to left, depending on the language'
45 | customer:
46 | type: object
47 | properties:
48 | first_name:
49 | type: string
50 | full_name:
51 | type: string
52 | email:
53 | type: string
54 | group:
55 | type: array
56 | items:
57 | type: object
58 | properties:
59 | name:
60 | type: string
61 | misc:
62 | type: object
63 | properties:
64 | year:
65 | type: integer
66 | translations:
67 | type: object
68 | properties:
69 | en:
70 | type: object
71 | properties:
72 | title:
73 | type: string
74 | hello:
75 | type: string
76 | message:
77 | type: string
78 | details_title:
79 | type: string
80 | email_label:
81 | type: string
82 | password_label:
83 | type: string
84 | password_placeholder:
85 | type: string
86 | sign_in:
87 | type: string
88 | help:
89 | type: string
90 | go_shopping:
91 | type: string
92 | examples:
93 | store:
94 | name: My Dev Store 97434969
95 | domain_name: my-dev-store-97434969.store.bcdev
96 | logo:
97 | title: [= My Dev Store 97434969 =]
98 | name: avatar-2020_1612860757__16350.jpeg
99 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
100 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
101 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
102 | image_directory: product_images
103 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
104 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
105 | path: 'https://my-dev-store-97434969.store.bcdev'
106 | address:
107 | language:
108 | code: en
109 | direction: ltr
110 | customer:
111 | first_name: John
112 | full_name: John Jr
113 | email: john.f@example.com
114 | misc:
115 | year: 2021
116 | translations:
117 | en:
118 | title: Thanks for registering at {{store}}
119 | hello: Hello {{name}}.
120 | message: Thank you for creating your account at {{name}}.
121 | details_title: Account details
122 | email_label: 'Email Address:'
123 | password_label: 'Password:'
124 | password_placeholder: [The password you specified]
125 | sign_in: Sign in to account
126 | help: If you have any questions regarding your account, click 'Reply' in your email client and we'll be only too happy to help.
127 | go_shopping: Go shopping
128 |
129 |
130 |
--------------------------------------------------------------------------------
/models/email_templates/create_guest_account_email.yml:
--------------------------------------------------------------------------------
1 | Account Created Guest:
2 | title: Create Guest Account Email Template
3 | description: Guest account created email triggers when a customer or store admin creates a guest account.
4 | type: object
5 | properties:
6 | guest_account:
7 | type: object
8 | properties:
9 | link:
10 | type: string
11 | store:
12 | type: object
13 | properties:
14 | name:
15 | type: string
16 | domain_name:
17 | type: string
18 | logo:
19 | type: object
20 | properties:
21 | title:
22 | type: string
23 | name:
24 | type: string
25 | url:
26 | type: string
27 | ssl_path:
28 | type: string
29 | cdn_path:
30 | type: string
31 | image_directory:
32 | type: string
33 | img_path:
34 | type: string
35 | path_normal:
36 | type: string
37 | description: 'Path to the store (i.e., domain + protocol)'
38 | path:
39 | type: string
40 | address:
41 | type: string
42 | language:
43 | type: object
44 | properties:
45 | code:
46 | type: string
47 | direction:
48 | type: string
49 | description: 'Left to right or right to left, depending on the language'
50 | customer:
51 | type: object
52 | properties:
53 | first_name:
54 | type: string
55 | full_name:
56 | type: string
57 | email:
58 | type: string
59 | misc:
60 | type: object
61 | properties:
62 | year:
63 | type: integer
64 | translations:
65 | type: object
66 | properties:
67 | en:
68 | type: object
69 | properties:
70 | title:
71 | type: string
72 | hello:
73 | type: string
74 | message:
75 | type: string
76 | instruction:
77 | type: string
78 | help:
79 | type: string
80 | go_shopping:
81 | type: string
82 | examples:
83 | guest_account:
84 | link: #reset-password-link
85 | store:
86 | name: My Dev Store 97434969
87 | domain_name: my-dev-store-97434969.store.bcdev
88 | logo:
89 | title: [= My Dev Store 97434969 =]
90 | name: avatar-2020_1612860757__16350.jpeg
91 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
92 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
93 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
94 | image_directory: product_images
95 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
96 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
97 | path: 'https://my-dev-store-97434969.store.bcdev'
98 | address:
99 | language:
100 | code: en
101 | direction: ltr
102 | customer:
103 | first_name: John
104 | full_name: John Jr
105 | email: 'john.f@example.com'
106 | misc:
107 | year: 2021
108 | translations:
109 | en:
110 | title: Welcome to {{name}}
111 | hello: Hello {{name}},
112 | message: For your convenience, we've created you an account on {{store}} so you can check the status of your order and checkout quicker in the future.
113 | instruction: 'To login you will need to follow the link below to nominate your password:'
114 | help: If you have any questions regarding your account, click 'Reply' in your email client and we'll be only too happy to help.
115 | go_shopping: Go shopping
116 |
--------------------------------------------------------------------------------
/models/email_templates/data/abandoned_cart_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "abandoned_cart": {
3 | "body": "You recently visited our online store and we noticed that you didn't complete your order.\n
To complete your order right now, just click on the link below:\n Complete your order",
4 | "unsubscribe_link": "#unsubscribe-link"
5 | },
6 | "store": {
7 | "name": "My Dev Store 97434969",
8 | "domain_name": "my-dev-store-97434969.store.bcdev",
9 | "logo": {
10 | "title": "[= My Dev Store 97434969 =]",
11 | "name": "avatar-2020_1612860757__16350.jpeg",
12 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
13 | },
14 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
15 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
16 | "image_directory": "product_images",
17 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
18 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
19 | "path": "https://my-dev-store-97434969.store.bcdev",
20 | "address": "",
21 | "language": {
22 | "code": "en",
23 | "direction": "ltr"
24 | }
25 | },
26 | "customer": {
27 | "first_name": "John",
28 | "full_name": "John Jr",
29 | "email": "john.f@example.com"
30 | },
31 | "misc": {
32 | "year": 2021
33 | },
34 | "translations": {
35 | "en": {
36 | "unsubscribe": "Unsubscribe from future emails like this"
37 | }
38 | }
39 | }
--------------------------------------------------------------------------------
/models/email_templates/data/account_details_changed_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "details_changed": {
3 | "fields": [
4 | "Email",
5 | "Password"
6 | ]
7 | },
8 | "store": {
9 | "name": "My Dev Store 97434969",
10 | "domain_name": "my-dev-store-97434969.store.bcdev",
11 | "logo": {
12 | "title": "[= My Dev Store 97434969 =]",
13 | "name": "avatar-2020_1612860757__16350.jpeg",
14 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
15 | },
16 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
17 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
18 | "image_directory": "product_images",
19 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
20 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
21 | "path": "https://my-dev-store-97434969.store.bcdev",
22 | "address": "",
23 | "language": {
24 | "code": "en",
25 | "direction": "ltr"
26 | }
27 | },
28 | "customer": {
29 | "first_name": "John",
30 | "full_name": "John Jr",
31 | "email": "john.f@example.com"
32 | },
33 | "misc": {
34 | "year": 2021
35 | },
36 | "translations": {
37 | "en": {
38 | "title": "Your {name} account details have changed",
39 | "hello": "Hello {name},",
40 | "message": "We wanted to let you know that the following details have been changed on your {name} account:",
41 | "warning": "If you made the changes yourself, please disregard this email. If not, please contact the store immediately through their website: {domain}.",
42 | "thanks": "Thanks,",
43 | "security": "The BigCommerce Security Team",
44 | "go_shopping": "Go shopping"
45 | }
46 | }
47 | }
--------------------------------------------------------------------------------
/models/email_templates/data/account_reset_password_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "reset_password": {
3 | "link": "#reset-password-link"
4 | },
5 | "store": {
6 | "name": "My Dev Store 97434969",
7 | "domain_name": "my-dev-store-97434969.store.bcdev",
8 | "logo": {
9 | "title": "[= My Dev Store 97434969 =]",
10 | "name": "avatar-2020_1612860757__16350.jpeg",
11 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
12 | },
13 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
14 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
15 | "image_directory": "product_images",
16 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
17 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
18 | "path": "https://my-dev-store-97434969.store.bcdev",
19 | "address": "",
20 | "language": {
21 | "code": "en",
22 | "direction": "ltr"
23 | }
24 | },
25 | "customer": {
26 | "first_name": "John",
27 | "full_name": "John Jr",
28 | "email": "john.f@example.com"
29 | },
30 | "misc": {
31 | "year": 2021
32 | },
33 | "translations": {
34 | "en": {
35 | "title": "Change your password for {name}",
36 | "message": "To change your customer account password at {store} please click this link or copy and paste it into your browser:",
37 | "go_shopping": "Go shopping"
38 | }
39 | }
40 | }
--------------------------------------------------------------------------------
/models/email_templates/data/combined_order_status_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "order": {
3 | "id": 1,
4 | "new_status": "Awaiting Fulfillment",
5 | "total": {
6 | "value": 10,
7 | "formatted": "$10.00 USD"
8 | },
9 | "refund": {
10 | "value": 0,
11 | "formatted": ""
12 | },
13 | "date_placed": {
14 | "value": 1614615796,
15 | "formatted": "03/01/2121"
16 | },
17 | "payment_method": "Store Credit",
18 | "link": "#status-link",
19 | "customer_name": "John Cena",
20 | "downloadable_products": [
21 | {
22 | "name": "Journal",
23 | "options": "",
24 | "quantity": 1,
25 | "link": "#downloadable-link"
26 | }
27 | ],
28 | "products": [
29 | {
30 | "name": "Test product",
31 | "sku": "FA44",
32 | "quantity": 11
33 | }
34 | ],
35 | "tracking": [
36 | {
37 | "id": "123BC",
38 | "shipping_method": "DHL",
39 | "link": "#example.com"
40 | }
41 | ]
42 | },
43 | "store": {
44 | "name": "My Dev Store 97434969",
45 | "domain_name": "my-dev-store-97434969.store.bcdev",
46 | "logo": {
47 | "title": "[= My Dev Store 97434969 =]",
48 | "name": "avatar-2020_1612860757__16350.jpeg",
49 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
50 | },
51 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
52 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
53 | "image_directory": "product_images",
54 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
55 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
56 | "path": "https://my-dev-store-97434969.store.bcdev",
57 | "address": "",
58 | "language": {
59 | "code": "en",
60 | "direction": "ltr"
61 | }
62 | },
63 | "customer": {
64 | "first_name": "John",
65 | "full_name": "John Jr",
66 | "email": "john.f@example.com"
67 | },
68 | "misc": {
69 | "year": 2021
70 | },
71 | "translations": {
72 | "en": {
73 | "title": "Order status changed",
74 | "hello": "Hi {name},",
75 | "message": "The status of your order #{id} has changed to {status}.",
76 | "details_title": "Order details",
77 | "order_total": "Order total:",
78 | "date_placed": "Date placed:",
79 | "payment_method": "Payment method:",
80 | "total_refund": "Total refunded:",
81 | "products_shipped": "Products shipped",
82 | "products_to_be_shipped": "Products to be shipped",
83 | "tracking_title": "Tracking information",
84 | "downloadable_items_title": "Downloadable items",
85 | "quantity": "Qty:",
86 | "download": "Download file",
87 | "tracking_label": "Tracking Link",
88 | "no_tracking_numbers": "No tracking numbers are assigned to your order yet",
89 | "check_status": "Check order status",
90 | "go_shopping": "Go shopping"
91 | }
92 | }
93 | }
--------------------------------------------------------------------------------
/models/email_templates/data/create_account_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "store": {
3 | "name": "My Dev Store 97434969",
4 | "domain_name": "my-dev-store-97434969.store.bcdev",
5 | "logo": {
6 | "title": "[= My Dev Store 97434969 =]",
7 | "name": "avatar-2020_1612860757__16350.jpeg",
8 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
9 | },
10 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
11 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
12 | "image_directory": "product_images",
13 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
14 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
15 | "path": "https://my-dev-store-97434969.store.bcdev",
16 | "address": "",
17 | "language": {
18 | "code": "en",
19 | "direction": "ltr"
20 | }
21 | },
22 | "customer": {
23 | "first_name": "John",
24 | "full_name": "John Jr",
25 | "email": "john.f@example.com"
26 | },
27 | "misc": {
28 | "year": 2021
29 | },
30 | "translations": {
31 | "en": {
32 | "title": "Thanks for registering at {store}",
33 | "hello": "Hello {name},",
34 | "message": "Thank you for creating your account at {name}.",
35 | "details_title": "Account details",
36 | "email_label": "Email Address:",
37 | "password_label": "Password:",
38 | "password_placeholder": "[The password you specified]",
39 | "sign_in": "Sign in to account",
40 | "help": "If you have any questions regarding your account, click 'Reply' in your email client and we'll be only too happy to help.",
41 | "go_shopping": "Go shopping"
42 | }
43 | }
44 | }
--------------------------------------------------------------------------------
/models/email_templates/data/create_guest_account_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "guest_account": {
3 | "link": "#reset-password-link"
4 | },
5 | "store": {
6 | "name": "My Dev Store 97434969",
7 | "domain_name": "my-dev-store-97434969.store.bcdev",
8 | "logo": {
9 | "title": "[= My Dev Store 97434969 =]",
10 | "name": "avatar-2020_1612860757__16350.jpeg",
11 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
12 | },
13 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
14 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
15 | "image_directory": "product_images",
16 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
17 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
18 | "path": "https://my-dev-store-97434969.store.bcdev",
19 | "address": "",
20 | "language": {
21 | "code": "en",
22 | "direction": "ltr"
23 | }
24 | },
25 | "customer": {
26 | "first_name": "John",
27 | "full_name": "John Jr",
28 | "email": "john.f@example.com"
29 | },
30 | "misc": {
31 | "year": 2021
32 | },
33 | "translations": {
34 | "en": {
35 | "title": "Welcome to {name}",
36 | "hello": "Hello {name},",
37 | "message": "For your convenience, we've created you an account on {store} so you can check the status of your order and checkout quicker in the future.",
38 | "instruction": "To login you will need to follow the link below to nominate your password:",
39 | "help": "If you have any questions regarding your account, click 'Reply' in your email client and we'll be only too happy to help.",
40 | "go_shopping": "Go shopping"
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/models/email_templates/data/gift_certificate_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "certificate": {
3 | "code": "FA-21465",
4 | "to_name": "John",
5 | "to_email": "john.f@example.com",
6 | "from_name": "John Wick",
7 | "from_email": "johnwick@example.com",
8 | "amount": "12.34",
9 | "redeem_link": "#redeem-link",
10 | "expiry_date": {
11 | "formatted": "03/01/2121",
12 | "value": 1614615821
13 | }
14 | },
15 | "store": {
16 | "name": "My Dev Store 97434969",
17 | "domain_name": "my-dev-store-97434969.store.bcdev",
18 | "logo": {
19 | "title": "[= My Dev Store 97434969 =]",
20 | "name": "avatar-2020_1612860757__16350.jpeg",
21 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
22 | },
23 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
24 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
25 | "image_directory": "product_images",
26 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
27 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
28 | "path": "https://my-dev-store-97434969.store.bcdev",
29 | "address": "",
30 | "language": {
31 | "code": "en",
32 | "direction": "ltr"
33 | }
34 | },
35 | "customer": {
36 | "first_name": "John",
37 | "full_name": "John Jr",
38 | "email": "john.f@example.com"
39 | },
40 | "misc": {
41 | "year": 2021
42 | },
43 | "translations": {
44 | "en": {
45 | "title": "You have received a Gift Certificate for {name}",
46 | "hello": "Dear {name},",
47 | "message": "{from_name} ({from_email}) has sent you a {amount} gift certificate for {name}.",
48 | "expiry_info": "You have until {date} to use this gift certificate before it expires.",
49 | "instruction": "For instructions on how to redeem your gift certificate please click here.",
50 | "attached": "Your gift certificate is attached to this email.",
51 | "warning": "Please download or print a copy of your gift certificate for safe keeping as gift certificates are non-transferable.",
52 | "go_shopping": "Go shopping"
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/models/email_templates/data/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "store" : {
3 | "name" : "string",
4 | "domain_name" : "string",
5 | "logo" : {
6 | "title" : "string",
7 | "name" : "string",
8 | "url" : "string"
9 | } ,
10 | "ssl_path" : "string",
11 | "cdn_path" : "string",
12 | "image_directory" : "string",
13 | "img_path" : "string",
14 | "path_normal" : "string",
15 | "path" : "string",
16 | "address" : "string",
17 | "language" : {
18 | "code" : "string" ,
19 | "direction" : "string"
20 | }
21 | },
22 | "customer" : {
23 | "first_name" : "string",
24 | "full_name" : "string",
25 | "email" : "string"
26 | },
27 | "misc" : {
28 | "year" : "int"
29 | }
30 | }
--------------------------------------------------------------------------------
/models/email_templates/data/order_message_notification.json:
--------------------------------------------------------------------------------
1 | {
2 | "notification": {
3 | "message": "Message from the merchant",
4 | "link": "https://my-dev-store-97434969.store.bcdev/account.php?action=inbox"
5 | },
6 | "store": {
7 | "name": "My Dev Store 97434969",
8 | "domain_name": "my-dev-store-97434969.store.bcdev",
9 | "logo": {
10 | "title": "[= My Dev Store 97434969 =]",
11 | "name": "avatar-2020_1612860757__16350.jpeg",
12 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
13 | },
14 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
15 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
16 | "image_directory": "product_images",
17 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
18 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
19 | "path": "https://my-dev-store-97434969.store.bcdev",
20 | "address": "",
21 | "language": {
22 | "code": "en",
23 | "direction": "ltr"
24 | }
25 | },
26 | "customer": {
27 | "first_name": "John",
28 | "full_name": "John Jr",
29 | "email": "john.f@example.com"
30 | },
31 | "misc": {
32 | "year": 2021
33 | },
34 | "translations": {
35 | "en": {
36 | "title": "New Reply to your Order Message",
37 | "hello": "Hello {name},",
38 | "message": "{name} has sent you a message about your order.",
39 | "reply": "Reply",
40 | "go_shopping": "Go shopping"
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/models/email_templates/data/passwordless_login_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "passwordless_login": {
3 | "link": "#sign-in-link"
4 | },
5 | "store": {
6 | "name": "My Dev Store 97434969",
7 | "domain_name": "my-dev-store-97434969.store.bcdev",
8 | "logo": {
9 | "title": "[= My Dev Store 97434969 =]",
10 | "name": "avatar-2020_1612860757__16350.jpeg",
11 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
12 | },
13 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
14 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
15 | "image_directory": "product_images",
16 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
17 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
18 | "path": "https://my-dev-store-97434969.store.bcdev",
19 | "address": "",
20 | "language": {
21 | "code": "en",
22 | "direction": "ltr"
23 | }
24 | },
25 | "customer": {
26 | "first_name": "John",
27 | "full_name": "John Jr",
28 | "email": "john.f@example.com"
29 | },
30 | "misc": {
31 | "year": 2021
32 | },
33 | "translations": {
34 | "en": {
35 | "title": "Please click the link below to sign in to your account with {name}",
36 | "message": "You have requested a sign-in link. Please click here to sign in and continue.",
37 | "alternatively": "Alternatively, paste the following link in your browser:",
38 | "login_request": "This login is for {name} if you did not request this link, please ignore this email.",
39 | "secure": "Your account is still secure.",
40 | "go_shopping": "Go shopping"
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/models/email_templates/data/product_review_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "review": {
3 | "products": [
4 | {
5 | "name": "Name of Product",
6 | "sku": "FA44",
7 | "link": "#review-link"
8 | }
9 | ],
10 | "unsubscribe_link": "#unsubscribe-link"
11 | },
12 | "store": {
13 | "name": "My Dev Store 97434969",
14 | "domain_name": "my-dev-store-97434969.store.bcdev",
15 | "logo": {
16 | "title": "[= My Dev Store 97434969 =]",
17 | "name": "avatar-2020_1612860757__16350.jpeg",
18 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
19 | },
20 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
21 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
22 | "image_directory": "product_images",
23 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
24 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
25 | "path": "https://my-dev-store-97434969.store.bcdev",
26 | "address": "",
27 | "language": {
28 | "code": "en",
29 | "direction": "ltr"
30 | }
31 | },
32 | "customer": {
33 | "first_name": "John",
34 | "full_name": "John Jr",
35 | "email": "john.f@example.com"
36 | },
37 | "misc": {
38 | "year": 2021
39 | },
40 | "translations": {
41 | "en": {
42 | "title": "Review products you've recently purchased",
43 | "hello": "Hello {name},",
44 | "message": "Thanks for your recent order with us!",
45 | "instruction": "If you have a few minutes, we'd like to invite you to review the products you ordered. Just click on the link below to write a review and share your opinion with other shoppers.",
46 | "review_text": "Review product",
47 | "thanks": "Thanks in advance for taking the time to review the products you purchased!",
48 | "go_shopping": "Go shopping"
49 | }
50 | }
51 | }
--------------------------------------------------------------------------------
/models/email_templates/data/return_confirmation_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "return": {
3 | "return_id": "123",
4 | "reason": "reason of return",
5 | "action": "action",
6 | "comments": "sample comment",
7 | "order_id": "321",
8 | "products": [
9 | {
10 | "name": "Shower Gel",
11 | "quantity": 3
12 | }
13 | ]
14 | },
15 | "store": {
16 | "name": "My Dev Store 97434969",
17 | "domain_name": "my-dev-store-97434969.store.bcdev",
18 | "logo": {
19 | "title": "[= My Dev Store 97434969 =]",
20 | "name": "avatar-2020_1612860757__16350.jpeg",
21 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
22 | },
23 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
24 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
25 | "image_directory": "product_images",
26 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
27 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
28 | "path": "https://my-dev-store-97434969.store.bcdev",
29 | "address": "",
30 | "language": {
31 | "code": "en",
32 | "direction": "ltr"
33 | }
34 | },
35 | "customer": {
36 | "first_name": "John",
37 | "full_name": "John Jr",
38 | "email": "john.f@example.com"
39 | },
40 | "misc": {
41 | "year": 2021
42 | },
43 | "translations": {
44 | "en": {
45 | "confirmation": "Confirmation for Return Request for Order ID",
46 | "summary": "A summary of your return is shown below. To view the status of this return",
47 | "clickHere": "click here",
48 | "reason": "Return Reason",
49 | "action": "Return Action",
50 | "comments": "Your Comments",
51 | "contains": "Your Return Request Contains the Following Items...",
52 | "items": "Return Items",
53 | "quantity": "Qty"
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/models/email_templates/data/return_status_change_email.json:
--------------------------------------------------------------------------------
1 | {
2 | "return": {
3 | "id": 1,
4 | "reason": "reason of return",
5 | "action": "action",
6 | "comments": "sample comment",
7 | "product": {
8 | "name": "ProductName",
9 | "quantity": 2,
10 | "thumbnail_url": ""
11 | },
12 | "status": {
13 | "value": 1,
14 | "formatted": "Pending"
15 | },
16 | "store_credit": {
17 | "value": 10.1,
18 | "formatted": "$10.1 USD"
19 | },
20 | "link": "https://my-dev-store-97434969.store.bcdev/account.php?action=view_returns",
21 | "instructions": ""
22 | },
23 | "order": {
24 | "id": 1
25 | },
26 | "store": {
27 | "name": "My Dev Store 97434969",
28 | "domain_name": "my-dev-store-97434969.store.bcdev",
29 | "logo": {
30 | "title": "[= My Dev Store 97434969 =]",
31 | "name": "avatar-2020_1612860757__16350.jpeg",
32 | "url": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg"
33 | },
34 | "ssl_path": "https://my-dev-store-97434969.store.bcdev",
35 | "cdn_path": "https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96",
36 | "image_directory": "product_images",
37 | "img_path": "https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images",
38 | "path_normal": "https://my-dev-store-97434969.store.bcdev",
39 | "path": "https://my-dev-store-97434969.store.bcdev",
40 | "address": "",
41 | "language": {
42 | "code": "en",
43 | "direction": "ltr"
44 | }
45 | },
46 | "customer": {
47 | "first_name": "John",
48 | "full_name": "John Jr",
49 | "email": "john.f@example.com"
50 | },
51 | "misc": {
52 | "year": 2021
53 | },
54 | "translations": {
55 | "en": {
56 | "title": "Return request status changed",
57 | "hello": "Hello {name},",
58 | "message": "The status of your return request for order #{id} has changed to {status}.",
59 | "received_credit": "You have received a store credit of {credits} To use it, simply place your order and you will be able to choose store credit as the payment method when it comes time to pay for your order.",
60 | "details_title": "Return details",
61 | "return_reason": "Return reason:",
62 | "return_action": "Return action:",
63 | "return_comments": "Your comments:",
64 | "check_status": "Check return status",
65 | "products_title": "Return items",
66 | "quantity": "Qty:",
67 | "instructions_title": "Return Instructions:",
68 | "go_shopping": "Go shopping"
69 | }
70 | }
71 | }
--------------------------------------------------------------------------------
/models/email_templates/global.yml:
--------------------------------------------------------------------------------
1 | Global Email Template Object:
2 | title: Global Email Template Object
3 | description: Data objects across all email templates.
4 | type: object
5 | properties:
6 | store:
7 | type: object
8 | properties:
9 | name:
10 | type: string
11 | domain_name:
12 | type: string
13 | logo:
14 | type: object
15 | properties:
16 | title:
17 | type: string
18 | name:
19 | type: string
20 | url:
21 | type: string
22 | ssl_path:
23 | type: string
24 | cdn_path:
25 | type: string
26 | image_directory:
27 | type: string
28 | img_path:
29 | type: string
30 | path_normal:
31 | type: string
32 | description: 'Path to the store (i.e., domain + protocol)'
33 | path:
34 | type: string
35 | address:
36 | type: string
37 | language:
38 | type: object
39 | properties:
40 | code:
41 | type: string
42 | direction:
43 | type: string
44 | description: 'Left to right or right to left, depending on the language'
45 | customer:
46 | type: object
47 | properties:
48 | first_name:
49 | type: string
50 | full_name:
51 | type: string
52 | email:
53 | type: string
54 | group:
55 | type: array
56 | items:
57 | type: object
58 | properties:
59 | name:
60 | type: string
61 | misc:
62 | type: object
63 | properties:
64 | year:
65 | type: integer
66 | examples:
67 | store :
68 | name : string,
69 | domain_name : string
70 | logo :
71 | title : string
72 | name : string
73 | url : string
74 | ssl_path : string
75 | cdn_path : string
76 | image_directory : string
77 | img_path : string
78 | path_normal : string
79 | path : string
80 | address : string
81 | language :
82 | code : string
83 | direction : string
84 | customer :
85 | first_name : string
86 | full_name : string
87 | email : string
88 | misc :
89 | year : int
90 |
--------------------------------------------------------------------------------
/models/email_templates/order_message_notification.yml:
--------------------------------------------------------------------------------
1 | Order Notification:
2 | title: Order Notification Email Template
3 | description: Order notification email triggers when a merchant or store admin adds a message to an order.
4 | type: object
5 | properties:
6 | notification:
7 | type: object
8 | properties:
9 | message:
10 | type: string
11 | link:
12 | type: string
13 | subject:
14 | type: string
15 | store:
16 | type: object
17 | properties:
18 | name:
19 | type: string
20 | domain_name:
21 | type: string
22 | logo:
23 | type: object
24 | properties:
25 | title:
26 | type: string
27 | name:
28 | type: string
29 | url:
30 | type: string
31 | ssl_path:
32 | type: string
33 | cdn_path:
34 | type: string
35 | image_directory:
36 | type: string
37 | img_path:
38 | type: string
39 | path_normal:
40 | type: string
41 | description: 'Path to the store (i.e., domain + protocol)'
42 | path:
43 | type: string
44 | address:
45 | type: string
46 | language:
47 | type: object
48 | properties:
49 | code:
50 | type: string
51 | direction:
52 | type: string
53 | description: 'Left to right or right to left, depending on the language'
54 | customer:
55 | type: object
56 | properties:
57 | first_name:
58 | type: string
59 | full_name:
60 | type: string
61 | email:
62 | type: string
63 | group:
64 | type: array
65 | items:
66 | type: object
67 | properties:
68 | name:
69 | type: string
70 | misc:
71 | type: object
72 | properties:
73 | year:
74 | type: integer
75 | translations:
76 | type: object
77 | properties:
78 | en:
79 | type: object
80 | properties:
81 | title:
82 | type: string
83 | hello:
84 | type: string
85 | message:
86 | type: string
87 | reply:
88 | type: string
89 | go_shopping:
90 | type: string
91 | examples:
92 | notification:
93 | message: Message from the merchant
94 | link: 'https://my-dev-store-97434969.store.bcdev/account.php?action=inbox'
95 | store:
96 | name: My Dev Store 97434969
97 | domain_name: my-dev-store-97434969.store.bcdev
98 | logo:
99 | title: [= My Dev Store 97434969 =]
100 | name: avatar-2020_1612860757__16350.jpeg
101 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
102 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
103 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
104 | image_directory: product_images
105 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
106 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
107 | path: 'https://my-dev-store-97434969.store.bcdev'
108 | address:
109 | language:
110 | code: en
111 | direction: ltr
112 | customer:
113 | first_name: John
114 | full_name: John Jr
115 | email: 'john.f@example.com'
116 | misc:
117 | year: 2021
118 | translations:
119 | en:
120 | title: New Reply to your Order Message
121 | hello: Hello {{name}}.
122 | message: '{{name}} has sent you a message about your order.'
123 | reply: Reply
124 | go_shopping: Go shopping
125 |
--------------------------------------------------------------------------------
/models/email_templates/passwordless_login_email.yml:
--------------------------------------------------------------------------------
1 | Sign in Link Request:
2 | title: Sign in Link Request Email Template
3 | description: Sign-in request email triggers when an existing customer requests passwordless login while checking out.
4 | type: object
5 | properties:
6 | passwordless_login:
7 | type: object
8 | properties:
9 | link:
10 | type: string
11 | store:
12 | type: object
13 | properties:
14 | name:
15 | type: string
16 | domain_name:
17 | type: string
18 | logo:
19 | type: object
20 | properties:
21 | title:
22 | type: string
23 | name:
24 | type: string
25 | url:
26 | type: string
27 | ssl_path:
28 | type: string
29 | cdn_path:
30 | type: string
31 | image_directory:
32 | type: string
33 | img_path:
34 | type: string
35 | path_normal:
36 | type: string
37 | description: 'Path to the store (i.e., domain + protocol)'
38 | path:
39 | type: string
40 | address:
41 | type: string
42 | language:
43 | type: object
44 | properties:
45 | code:
46 | type: string
47 | direction:
48 | type: string
49 | description: 'Left to right or right to left, depending on the language'
50 | customer:
51 | type: object
52 | properties:
53 | first_name:
54 | type: string
55 | full_name:
56 | type: string
57 | email:
58 | type: string
59 | group:
60 | type: array
61 | items:
62 | type: object
63 | properties:
64 | name:
65 | type: string
66 | misc:
67 | type: object
68 | properties:
69 | year:
70 | type: integer
71 | translations:
72 | type: object
73 | properties:
74 | en:
75 | type: object
76 | properties:
77 | title:
78 | type: string
79 | message:
80 | type: string
81 | alternatively:
82 | type: string
83 | login_request:
84 | type: string
85 | secure:
86 | type: string
87 | go_shopping:
88 | type: string
89 | examples:
90 | passwordless_login: '"link": "#sign-in-link"'
91 | store:
92 | name: My Dev Store 97434969
93 | domain_name: 'my-dev-store-97434969.store.bcdev'
94 | logo:
95 | title: [= My Dev Store 97434969 =]
96 | name: avatar-2020_1612860757__16350.jpeg
97 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
98 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
99 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
100 | image_directory: product_images
101 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
102 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
103 | path: 'https://my-dev-store-97434969.store.bcdev'
104 | address:
105 | language:
106 | code: en
107 | direction: ltr
108 | customer:
109 | first_name: John
110 | full_name: John Jr
111 | email: 'john.f@example.com'
112 | misc:
113 | year: 2021
114 | translations:
115 | en:
116 | title: Please click the link below to sign in to your account with {{name}}
117 | message: 'You have requested a sign-in link. Please click here to sign in and continue.'
118 | alternatively: 'Alternatively, paste the following link in your browser:'
119 | login_request: This login is for {{name}} if you did not request this link, please ignore this email.
120 | secure: Your account is still secure.
121 | go_shopping: Go shopping
122 |
--------------------------------------------------------------------------------
/models/email_templates/product_review_email.yml:
--------------------------------------------------------------------------------
1 | Product Review Request:
2 | title: Product Review Email Template
3 | description: Product review request email triggers after a customer purchases a product.
4 | type: object
5 | properties:
6 | review:
7 | type: object
8 | properties:
9 | products:
10 | type: array
11 | items:
12 | type: object
13 | properties:
14 | name:
15 | type: string
16 | sku:
17 | type: string
18 | link:
19 | type: string
20 | price:
21 | type: string
22 | thumbnail:
23 | type: string
24 | unsubscribe_link:
25 | type: string
26 | store:
27 | type: object
28 | properties:
29 | name:
30 | type: string
31 | domain_name:
32 | type: string
33 | logo:
34 | type: object
35 | properties:
36 | title:
37 | type: string
38 | name:
39 | type: string
40 | url:
41 | type: string
42 | ssl_path:
43 | type: string
44 | cdn_path:
45 | type: string
46 | image_directory:
47 | type: string
48 | img_path:
49 | type: string
50 | path_normal:
51 | type: string
52 | description: 'Path to the store (i.e., domain + protocol)'
53 | path:
54 | type: string
55 | address:
56 | type: string
57 | language:
58 | type: object
59 | properties:
60 | code:
61 | type: string
62 | direction:
63 | type: string
64 | description: 'Left to right or right to left, depending on the language'
65 | customer:
66 | type: object
67 | properties:
68 | first_name:
69 | type: string
70 | full_name:
71 | type: string
72 | email:
73 | type: string
74 | group:
75 | type: array
76 | items:
77 | type: object
78 | properties:
79 | name:
80 | type: string
81 | misc:
82 | type: object
83 | properties:
84 | year:
85 | type: integer
86 | translations:
87 | type: object
88 | properties:
89 | en:
90 | type: object
91 | properties:
92 | title:
93 | type: string
94 | hello:
95 | type: string
96 | message:
97 | type: string
98 | instruction:
99 | type: string
100 | review_text:
101 | type: string
102 | thanks:
103 | type: string
104 | go_shopping:
105 | type: string
106 | examples:
107 | review:
108 | products:
109 | name: Name of Product
110 | sku: FA44
111 | link: '#review-link'
112 | unsubscribe_link: '#unsubscribe-link'
113 | store:
114 | name: My Dev Store 97434969
115 | domain_name: my-dev-store-97434969.store.bcdev
116 | logo:
117 | title: [= My Dev Store 97434969 =]
118 | name: avatar-2020_1612860757__16350.jpeg
119 | url: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96/product_images/avatar-2020_1612860757__16350.jpeg'
120 | ssl_path: 'https://my-dev-store-97434969.store.bcdev'
121 | cdn_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/store/f1kr2akw96'
122 | image_directory: product_images
123 | img_path: 'https://valeryderived-cloud-dev-vm.store.bcdev/r08d84bb67d250c7624502ed76d8e0bafb1a5cacf/g-themes/ClassicNext/images'
124 | path_normal: 'https://my-dev-store-97434969.store.bcdev'
125 | path: 'https://my-dev-store-97434969.store.bcdev'
126 | address:
127 | language:
128 | code: en
129 | direction: ltr
130 | customer:
131 | first_name: John
132 | full_name: John Jr
133 | email: 'john.f@example.com'
134 | misc:
135 | year: 2021
136 | translations:
137 | en:
138 | title: Review products you've recently purchased
139 | hello: Hello {{name}},
140 | message: Thanks for your recent order with us!,
141 | instruction: If you have a few minutes, we'd like to invite you to review the products you ordered. Just click on the link below to write a review and share your opinion with other shoppers.
142 | review_text: Review product
143 | thanks: Thanks in advance for taking the time to review the products you purchased!
144 | go_shopping: Go shopping
145 |
--------------------------------------------------------------------------------
/models/json2schema.py:
--------------------------------------------------------------------------------
1 | import json
2 | from sys import stdin
3 |
4 | """
5 | json2schema.py - converts json data from stdin to yaml schema
6 |
7 | usage: cat data.json | python json2schema.py > schema.yml
8 | """
9 |
10 | YAML = ""
11 |
12 | def gettype(type):
13 | for i in ['string','boolean','integer']:
14 | if type in i:
15 | return i
16 | return type
17 |
18 | def parser(json_data,indent):
19 | yaml = ""
20 | if type(json_data) is dict:
21 | yaml += (indent + 'type: object\n')
22 | if len(json_data) > 0:
23 | yaml += (indent + 'properties:\n')
24 | for key in json_data:
25 | yaml += (indent + ' %s:\n' % key)
26 | yaml += parser(json_data[key], indent+' ')
27 | elif type(json_data) is list:
28 | yaml += (indent + 'type: array\n')
29 | yaml += (indent + 'items:\n')
30 | if len(json_data) != 0:
31 | yaml += parser(json_data[0], indent+' ')
32 | else:
33 | yaml += (indent + ' type: object\n')
34 | else:
35 | yaml += (indent + 'type: %s\n' % gettype(type(json_data).__name__))
36 | return yaml
37 |
38 |
39 | if stdin:
40 | print(parser(json.load(stdin),''))
41 | else:
42 | print("No input detected. Try again")
--------------------------------------------------------------------------------
/models/webhooks/README.md:
--------------------------------------------------------------------------------
1 | # Webhooks
2 |
3 | Object schemas for Webhook events.
4 |
5 | ## Directory structure
6 |
7 | ```shell
8 | .
9 | ├── data # json data for generating and updating yaml schema
10 | ├── _all.yml # Groups models together for docs
11 | ├── store_app_uninstalled.yml # Individual email template models
12 | ├── ...
13 | ```
14 |
15 | ## Updating models
16 |
17 | To generate a new model from json data and overwrite the existing schema file:
18 |
19 | 1. Copy and paste webhook event `json` into corresponding file in `data/`.
20 | 2. Use `models/json2schema.py` to convert the json data to a yaml schema.
21 |
22 | Example:
23 |
24 | ```bash
25 | cat data.json | python json2schema.py > schema.yml
26 | ```
27 |
28 | Bash for overwriting all webhook event models:
29 |
30 | ```bash
31 | for f in models/webhooks/data/*.json; do cat $f | python models/json2schema.py > ${f%.*}.yml; mv ${f%.*}.yml models/webhooks/; done
32 | ```
--------------------------------------------------------------------------------
/models/webhooks/data/list.txt:
--------------------------------------------------------------------------------
1 | store_app_uninstalled.json
2 | store_cart_abandoned.json
3 | store_cart_converted.json
4 | store_cart_couponApplied.json
5 | store_cart_created.json
6 | store_cart_deleted.json
7 | store_cart_lineItem_created.json
8 | store_cart_lineItem_deleted.json
9 | store_cart_lineItem_updated.json
10 | store_cart_updated.json
11 | store_category_created.json
12 | store_category_deleted.json
13 | store_category_updated.json
14 | store_customer_address_created.json
15 | store_customer_address_deleted.json
16 | store_customer_address_updated.json
17 | store_customer_created.json
18 | store_customer_deleted.json
19 | store_customer_payment_instrument_default_updated.json
20 | store_customer_updated.json
21 | store_information_updated.json
22 | store_order_archived.json
23 | store_order_created.json
24 | store_order_message_created.json
25 | store_order_refund_created.json
26 | store_order_statusUpdated.json
27 | store_order_updated.json
28 | store_product_created.json
29 | store_product_deleted.json
30 | store_product_inventory_order_updated.json
31 | store_product_inventory_updated.json
32 | store_product_updated.json
33 | store_shipment_created.json
34 | store_shipment_deleted.json
35 | store_shipment_updated.json
36 | store_sku_created.json
37 | store_sku_deleted.json
38 | store_sku_inventory_order_updated.json
39 | store_sku_inventory_updated.json
40 | store_sku_updated.json
41 | store_subscriber_created.json
42 | store_subscriber_deleted.json
43 | store_subscriber_updated.json
--------------------------------------------------------------------------------
/models/webhooks/data/store_app_uninstalled.json:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/api-specs/dcf48407308710b882374ffafbeefdb0b3598abe/models/webhooks/data/store_app_uninstalled.json
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_abandoned.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/abandoned",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart",
6 | "id": "09346904-4175-44fd-be53-f7e598531b6c",
7 | "token": "1eed6d2d979776ff18e695ceeb10ea61"
8 | },
9 | "hash": "352e4afc6dd3fc85ea26bfdf3f91852604d57528",
10 | "created_at": 1561482670,
11 | "producer": "stores/{store_hash}"
12 | }
13 |
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_converted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/converted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart",
6 | "id": "d30016e2-23c0-4a90-884f-2e92ac135476",
7 | "orderId": 252
8 | },
9 | "hash": "b86db7c77d7ef8f90d6a8aefa56de32ccd776923",
10 | "created_at": 1561486893,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_couponApplied.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/couponApplied",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart",
6 | "id": "09346904-4175-44fd-be53-f7e598531b6c",
7 | "couponId": 1
8 | },
9 | "hash": "4b7297d295141b660e8db5a0d99dfcdf459fe825",
10 | "created_at": 1561482761,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart",
6 | "id": "09346904-4175-44fd-be53-f7e598531b6c"
7 | },
8 | "hash": "352e4afc6dd3fc85ea26bfdf3f91852604d57528",
9 | "created_at": 1561482670,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart",
6 | "id": "09346904-4175-44fd-be53-f7e598531b6c"
7 | },
8 | "hash": "352e4afc6dd3fc85ea26bfdf3f91852604d57528",
9 | "created_at": 1561482670,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_lineItem_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/lineItem/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart_line_item",
6 | "id": "743bfd94-d5dd-47c5-9c19-6eec32ca6119",
7 | "cartId": "b0386708-fef3-45de-9d8b-fbe3031450a4"
8 | },
9 | "hash": "399321a1bf1ac1331e12826fb89f264b4c8d21a6",
10 | "created_at": 1561481786,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_lineItem_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/lineItem/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart_line_item",
6 | "id": "743bfd94-d5dd-47c5-9c19-6eec32ca6119",
7 | "cartId": "b0386708-fef3-45de-9d8b-fbe3031450a4"
8 | },
9 | "hash": "399321a1bf1ac1331e12826fb89f264b4c8d21a6",
10 | "created_at": 1561481786,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_lineItem_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/lineItem/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart_line_item",
6 | "id": "743bfd94-d5dd-47c5-9c19-6eec32ca6119",
7 | "cartId": "b0386708-fef3-45de-9d8b-fbe3031450a4"
8 | },
9 | "hash": "399321a1bf1ac1331e12826fb89f264b4c8d21a6",
10 | "created_at": 1561481786,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_cart_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/cart/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "cart",
6 | "id": "09346904-4175-44fd-be53-f7e598531b6c"
7 | },
8 | "hash": "352e4afc6dd3fc85ea26bfdf3f91852604d57528",
9 | "created_at": 1561482670,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_category_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/category/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "category",
6 | "id": 42
7 | },
8 | "hash": "dc3a47c15425d2c895dba674f86fe71a8f3b6459",
9 | "created_at": 1561480214,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_category_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/category/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "category",
6 | "id": 42
7 | },
8 | "hash": "dc3a47c15425d2c895dba674f86fe71a8f3b6459",
9 | "created_at": 1561480214,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_category_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/category/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "category",
6 | "id": 42
7 | },
8 | "hash": "dc3a47c15425d2c895dba674f86fe71a8f3b6459",
9 | "created_at": 1561480214,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_address_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/address/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 60,
7 | "address": {
8 | "customer_id": 32
9 | }
10 | },
11 | "hash": "416ca9c01779515de91824aa1cac9012ee691e7a",
12 | "created_at": 1561481620,
13 | "producer": "stores/{store_hash}"
14 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_address_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/address/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 60,
7 | "address": {
8 | "customer_id": 32
9 | }
10 | },
11 | "hash": "416ca9c01779515de91824aa1cac9012ee691e7a",
12 | "created_at": 1561481620,
13 | "producer": "stores/{store_hash}"
14 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_address_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/address/update",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 60,
7 | "address": {
8 | "customer_id": 32
9 | }
10 | },
11 | "hash": "416ca9c01779515de91824aa1cac9012ee691e7a",
12 | "created_at": 1561481620,
13 | "producer": "stores/{store_hash}"
14 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 32
7 | },
8 | "hash": "8768ab15aa86c6d73c7e4c3efbaee072110ad1d2",
9 | "created_at": 1561481571,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 32
7 | },
8 | "hash": "8768ab15aa86c6d73c7e4c3efbaee072110ad1d2",
9 | "created_at": 1561481571,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_payment_instrument_default_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/payment/instrument/default/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 32
7 | },
8 | "hash": "8768ab15aa86c6d73c7e4c3efbaee072110ad1d2",
9 | "created_at": 1561481571,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_customer_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/customer/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "customer",
6 | "id": 32
7 | },
8 | "hash": "8768ab15aa86c6d73c7e4c3efbaee072110ad1d2",
9 | "created_at": 1561481571,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_information_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/information/updated",
3 | "store_id": "123446",
4 | "data": {
5 | "type": "store"
6 | },
7 | "hash": "c553845e0a5e28dc8b0ea494458692a25586a294",
8 | "created_at": 1535489273,
9 | "producer": "stores/{store_hash}"
10 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_metafield_created.json:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/models/webhooks/data/store_order_archived.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/order/archived",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "order",
6 | "id": 250
7 | },
8 | "hash": "dd70c0976e06b67aaf671e73f49dcb79230ebf9d",
9 | "created_at": 1561479335,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_order_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/order/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "order",
6 | "id": 250
7 | },
8 | "hash": "dd70c0976e06b67aaf671e73f49dcb79230ebf9d",
9 | "created_at": 1561479335,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_order_message_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/order/message/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "order",
6 | "id": 250,
7 | "message": {
8 | "order_message_id": 3
9 | }
10 | },
11 | "hash": "cb07cdbdda8b1965e812693d5988154807eeed02",
12 | "created_at": 1561479923,
13 | "producer": "stores/{store_hash}"
14 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_order_refund_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/order/refund/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "order",
6 | "id": 250,
7 | "refund": {
8 | "refund_id": 3
9 | }
10 | },
11 | "hash": "cb07cdbdda8b1965e812693d5988154807eeed02",
12 | "created_at": 1561479923,
13 | "producer": "stores/{store_hash}"
14 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_order_statusUpdated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/order/statusUpdated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "order",
6 | "id": 250,
7 | "status": {
8 | "previous_status_id": 0,
9 | "new_status_id": 11
10 | }
11 | },
12 | "hash": "7ee67cd1cf2ca60bc1aa9e5fe957d2de373be4ca",
13 | "created_at": 1561479335,
14 | "producer": "stores/{store_hash}"
15 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_order_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/order/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "order",
6 | "id": 250
7 | },
8 | "hash": "dd70c0976e06b67aaf671e73f49dcb79230ebf9d",
9 | "created_at": 1561479335,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_product_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/product/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "product",
6 | "id": 205
7 | },
8 | "hash": "a833a57fadd56a32dc752fb6ca0841dc9602a495",
9 | "created_at": 1561479233,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_product_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/product/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "product",
6 | "id": 205
7 | },
8 | "hash": "a833a57fadd56a32dc752fb6ca0841dc9602a495",
9 | "created_at": 1561479233,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_product_inventory_order_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/product/inventory/order/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "product",
6 | "id": 167,
7 | "inventory": {
8 | "product_id": 167,
9 | "method": "absolute",
10 | "value": 100000000
11 | }
12 | },
13 | "hash": "cba9eef399fbd6d384489bca6cacad24794b1086",
14 | "created_at": 1561478843,
15 | "producer": "stores/{store_hash}"
16 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_product_inventory_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/product/inventory/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "product",
6 | "id": 167,
7 | "inventory": {
8 | "product_id": 167,
9 | "method": "absolute",
10 | "value": 100000000
11 | }
12 | },
13 | "hash": "cba9eef399fbd6d384489bca6cacad24794b1086",
14 | "created_at": 1561478843,
15 | "producer": "stores/{store_hash}"
16 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_product_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/product/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "product",
6 | "id": 205
7 | },
8 | "hash": "a833a57fadd56a32dc752fb6ca0841dc9602a495",
9 | "created_at": 1561479233,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_shipment_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/shipment/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "shipment",
6 | "id": 12,
7 | "orderId": 251
8 | },
9 | "hash": "8b98021cb0faa7e3a58a0e4182d3696a4bdd24ab",
10 | "created_at": 1561482857,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_shipment_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/shipment/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "shipment",
6 | "id": 12,
7 | "orderId": 251
8 | },
9 | "hash": "8b98021cb0faa7e3a58a0e4182d3696a4bdd24ab",
10 | "created_at": 1561482857,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_shipment_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/shipment/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "shipment",
6 | "id": 12,
7 | "orderId": 251
8 | },
9 | "hash": "8b98021cb0faa7e3a58a0e4182d3696a4bdd24ab",
10 | "created_at": 1561482857,
11 | "producer": "stores/{store_hash}"
12 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_sku_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/sku/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "sku",
6 | "id": 461,
7 | "sku": {
8 | "product_id": 206,
9 | "variant_id": 509
10 | }
11 | },
12 | "hash": "7a0866943b1f46cfda31c3218931f5aab83a4c73",
13 | "created_at": 1561480465,
14 | "producer": "stores/{store_hash}"
15 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_sku_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/sku/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "sku",
6 | "id": 461,
7 | "sku": {
8 | "product_id": 206,
9 | "variant_id": 509
10 | }
11 | },
12 | "hash": "7a0866943b1f46cfda31c3218931f5aab83a4c73",
13 | "created_at": 1561480465,
14 | "producer": "stores/{store_hash}"
15 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_sku_inventory_order_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/sku/inventory/order/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "sku",
6 | "id": 461,
7 | "inventory": {
8 | "product_id": 206,
9 | "method": "absolute",
10 | "value": 5,
11 | "variant_id": 509
12 | }
13 | },
14 | "hash": "116ddb29d7bc1b2322cc1a4dc295221ee3637d4b",
15 | "created_at": 1561480673,
16 | "producer": "stores/{store_hash}"
17 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_sku_inventory_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/sku/inventory/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "sku",
6 | "id": 461,
7 | "inventory": {
8 | "product_id": 206,
9 | "method": "absolute",
10 | "value": 5,
11 | "variant_id": 509
12 | }
13 | },
14 | "hash": "116ddb29d7bc1b2322cc1a4dc295221ee3637d4b",
15 | "created_at": 1561480673,
16 | "producer": "stores/{store_hash}"
17 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_sku_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/sku/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "sku",
6 | "id": 461,
7 | "sku": {
8 | "product_id": 206,
9 | "variant_id": 509
10 | }
11 | },
12 | "hash": "7a0866943b1f46cfda31c3218931f5aab83a4c73",
13 | "created_at": 1561480465,
14 | "producer": "stores/{store_hash}"
15 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_subscriber_created.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/subscriber/created",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "subscriber",
6 | "id": 5
7 | },
8 | "hash": "bdb6c9c2d17ca7036538e483db0bdd7debc4beb4",
9 | "created_at": 1561482953,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_subscriber_deleted.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/subscriber/updated",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "subscriber",
6 | "id": 5
7 | },
8 | "hash": "bdb6c9c2d17ca7036538e483db0bdd7debc4beb4",
9 | "created_at": 1561482953,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/data/store_subscriber_updated.json:
--------------------------------------------------------------------------------
1 | {
2 | "scope": "store/subscriber/deleted",
3 | "store_id": "1025646",
4 | "data": {
5 | "type": "subscriber",
6 | "id": 5
7 | },
8 | "hash": "bdb6c9c2d17ca7036538e483db0bdd7debc4beb4",
9 | "created_at": 1561482953,
10 | "producer": "stores/{store_hash}"
11 | }
--------------------------------------------------------------------------------
/models/webhooks/store_app_uninstalled.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/app/uninstalled:
4 | description: Fires when a client store is cancelled and uninstalled from the platform.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_brand_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/brand/metafield/created:
4 | description: Fires when a new metafield on any object is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_brand_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/brand/metafield/deleted:
4 | description: Fires when a brand metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_brand_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/brand/metafield/updated:
4 | description: Fires when a brand metafield is modified.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_abandoned.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/abandoned:
4 | description: Fires when a cart is abandoned. A cart is considered abandoned when no changes have been made to its properties or contents for one hour. This webhook is available for all store plans, regardless of whether the Abandoned Cart Saver feature is enabled.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | token:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_converted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/converted:
4 | description: Fires when a cart is converted into an order, which typically follows the payment step of checkout. At this point, the cart is no longer accessible and has been deleted. This webhook returns both the cart ID and the order ID for correlation purposes.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | orderId:
19 | type: integer
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_couponApplied.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/couponApplied:
4 | description: Fires when a new coupon code is applied to a cart. The payload includes the ID of the coupon code.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | couponId:
19 | type: integer
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/created:
4 | description: |-
5 | Fires when a new cart is created, which happens with the following two events:
6 |
7 | * A storefront shopper adds the first item to their cart
8 | * A new cart is created using any of the APIs that can create carts
9 |
10 | The store/cart/updated webhook fires simultaneously with store/cart/created.
11 | type: object
12 | properties:
13 | scope:
14 | type: string
15 | store_id:
16 | type: string
17 | data:
18 | type: object
19 | properties:
20 | type:
21 | type: string
22 | id:
23 | type: string
24 | hash:
25 | type: string
26 | created_at:
27 | type: integer
28 | producer:
29 | type: string
30 |
31 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/deleted:
4 | description: |-
5 | Fires when a cart is deleted. This ends the lifecycle of the cart. Events include the following:
6 |
7 | * When a storefront shopper or API call removes all items from the cart
8 | * When the cart is explicitly removed by API using a DELETE request
9 |
10 | The store/cart/updated webhook fires simultaneously with store/cart/deleted.
11 | type: object
12 | properties:
13 | scope:
14 | type: string
15 | store_id:
16 | type: string
17 | data:
18 | type: object
19 | properties:
20 | type:
21 | type: string
22 | id:
23 | type: string
24 | hash:
25 | type: string
26 | created_at:
27 | type: integer
28 | producer:
29 | type: string
30 |
31 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_lineItem_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/lineItem/created:
4 | description: Fires when a new item is added to a cart.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | cartId:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_lineItem_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/lineItem/deleted:
4 | description: Fires when an item is deleted from a cart.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | cartId:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_lineItem_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/lineItem/updated:
4 | description: Fires when a line item’s quantity or product options change.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: string
18 | cartId:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/metafield/created:
4 | description: Fires when a new cart metafield is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/metafield/deleted:
4 | description: Fires when a cart metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/metafield/updated:
4 | description: Fires when a cart metafield is modified through the changes in its line items.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_cart_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/cart/updated:
4 | description: |-
5 | Fires when a cart is modified, including in the following cases:
6 |
7 | * When a new item is added to a cart
8 | * When an existing item’s quantity is updated
9 | * When an existing item is deleted
10 | * When the email is changed during guest checkout
11 | * When the store/cart/created webhook fires
12 | * When the store/cart/deleted webhook fires
13 |
14 | The payload includes the ID of the cart being updated.
15 | type: object
16 | properties:
17 | scope:
18 | type: string
19 | store_id:
20 | type: string
21 | data:
22 | type: object
23 | properties:
24 | type:
25 | type: string
26 | id:
27 | type: string
28 | hash:
29 | type: string
30 | created_at:
31 | type: integer
32 | producer:
33 | type: string
34 |
35 |
--------------------------------------------------------------------------------
/models/webhooks/store_category_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/category/created:
4 | description: Fires when a category is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_category_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/category/deleted:
4 | description: Fires when a category is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_category_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/category/metafield/created:
4 | description: Fires if a category metafield is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_category_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/category/metafield/deleted:
4 | description: Fires if a category metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_category_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/category/metafield/updated:
4 | description: Fires if a category metafield is updated.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_category_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/category/updated:
4 | description: Fires when a category is updated
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_channel_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/channel/metafield/created:
4 | description: Fires when a metafield is created per a specified channel.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_channel_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/channel/metafield/deleted:
4 | description: Fires when a metafield is deleted per a specified channel.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_channel_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/channel/metafield/updated:
4 | description: Fires when a metafield is updated per a specified channel.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_address_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/address/created:
4 | description: Fires when a customer address is created
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | address:
19 | type: object
20 | properties:
21 | customer_id:
22 | type: integer
23 | hash:
24 | type: string
25 | created_at:
26 | type: integer
27 | producer:
28 | type: string
29 |
30 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_address_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/address/deleted:
4 | description: Fires when a customer address is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | address:
19 | type: object
20 | properties:
21 | customer_id:
22 | type: integer
23 | hash:
24 | type: string
25 | created_at:
26 | type: integer
27 | producer:
28 | type: string
29 |
30 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_address_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/address/updated:
4 | description: Fires when a customer address is updated
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | address:
19 | type: object
20 | properties:
21 | customer_id:
22 | type: integer
23 | hash:
24 | type: string
25 | created_at:
26 | type: integer
27 | producer:
28 | type: string
29 |
30 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/created:
4 | description: A new customer is created
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/deleted:
4 | description: Fires when a customer is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_payment_instrument_default_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/payment/instrument/default/updated:
4 | description: Fires when a customer default payment instrument is updated
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_customer_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/customer/updated:
4 | description: |-
5 | Fires when a customer is updated. It does not currently track changes to the customer address.
6 |
7 |
8 | Tracks changes to customer attributes only if you make the changes through the control panel. This change triggers the same event `type` and payload as updating a customer; the payload does not include customer attributes.
9 |
10 | type: object
11 | properties:
12 | scope:
13 | type: string
14 | store_id:
15 | type: string
16 | data:
17 | type: object
18 | properties:
19 | type:
20 | type: string
21 | id:
22 | type: integer
23 | hash:
24 | type: string
25 | created_at:
26 | type: integer
27 | producer:
28 | type: string
29 |
30 |
--------------------------------------------------------------------------------
/models/webhooks/store_information_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/information/updated:
4 | description: Fires when changes are made to store settings. For a full list of fields that can trigger this event, see the store information updated events that follow.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | hash:
17 | type: string
18 | created_at:
19 | type: integer
20 | producer:
21 | type: string
22 |
23 |
--------------------------------------------------------------------------------
/models/webhooks/store_inventory_location_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/inventory/location/created:
4 | description: Location is created.
5 | type: object
6 | properties:
7 | producer:
8 | type: string
9 | hash:
10 | type: string
11 | created_at:
12 | type: integer
13 | store_id:
14 | type: string
15 | scope:
16 | type: string
17 | data:
18 | type: object
19 | properties:
20 | location_id:
21 | type: integer
22 |
--------------------------------------------------------------------------------
/models/webhooks/store_inventory_location_metafield_created.yml:
--------------------------------------------------------------------------------
1 | properties:
2 | store/inventory/location/metafield/created:
3 | description: Fires when a new inventory location metafield is created.
4 | type: object
5 | properties:
6 | scope:
7 | type: string
8 | store_id:
9 | type: string
10 | data:
11 | type: object
12 | properties:
13 | metafield_id:
14 | type: integer
15 | resource_id:
16 | type: string
17 | hash:
18 | type: string
19 | created_at:
20 | type: integer
21 | producer:
22 | type: string
23 |
--------------------------------------------------------------------------------
/models/webhooks/store_inventory_location_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | properties:
2 | store/inventory/location/metafield/deleted:
3 | description: Fires when a inventory location metafield is deleted.
4 | type: object
5 | properties:
6 | scope:
7 | type: string
8 | store_id:
9 | type: string
10 | data:
11 | type: object
12 | properties:
13 | metafield_id:
14 | type: integer
15 | resource_id:
16 | type: string
17 | hash:
18 | type: string
19 | created_at:
20 | type: integer
21 | producer:
22 | type: string
23 |
--------------------------------------------------------------------------------
/models/webhooks/store_inventory_location_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/inventory/location/metafield/updated:
4 | description: Fires when an existing inventory location metafield is updated.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_inventory_location_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/inventory/location/updated:
4 | description: Location is updated.
5 | type: object
6 | properties:
7 | producer:
8 | type: string
9 | hash:
10 | type: string
11 | created_at:
12 | type: integer
13 | store_id:
14 | type: string
15 | scope:
16 | type: string
17 | data:
18 | type: object
19 | properties:
20 | location_id:
21 | type: integer
22 |
--------------------------------------------------------------------------------
/models/webhooks/store_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/metafield/created:
4 | description: This webhook will fire whenever a new metafield on any object is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/metafield/deleted:
4 | description: When a metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/metafield/updated:
4 | description: Fires when an already created metafield is updated. Any changes to an existing metafield on any object (such as inventory, carts, brands, categories, channels, orders, ShipperHQ, etc.) will fire this webhook.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_archived.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/archived:
4 | description: Order is archived
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/created:
4 | description: Fires when an order is created either in the control panel or by API.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_message_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/message/created:
4 | description: Order message is created by customer or in control panel
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | message:
19 | type: object
20 | properties:
21 | order_message_id:
22 | type: integer
23 | hash:
24 | type: string
25 | created_at:
26 | type: integer
27 | producer:
28 | type: string
29 |
30 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/metafield/created:
4 | description: Fires if an order metafield is created using the control panel, an app, or the API.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/metafield/deleted:
4 | description: An order metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/metafield/updated:
4 | description: Fires when an existing order metafield is updated. Any changes to an existing order metafield will fire this webhook.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_refund_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/refund/created:
4 | description: A refund has been submitted against an order
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | refund:
19 | type: object
20 | properties:
21 | refund_id:
22 | type: integer
23 | hash:
24 | type: string
25 | created_at:
26 | type: integer
27 | producer:
28 | type: string
29 |
30 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_statusUpdated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/statusUpdated:
4 | description: Fires when the order status has changed, such as from Pending to Awaiting Payment.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | status:
19 | type: object
20 | properties:
21 | previous_status_id:
22 | type: integer
23 | new_status_id:
24 | type: integer
25 | hash:
26 | type: string
27 | created_at:
28 | type: integer
29 | producer:
30 | type: string
31 |
32 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_transaction_created.yml:
--------------------------------------------------------------------------------
1 | properties:
2 | store/order/transaction/created:
3 | description: Fires when a new order transaction is created.
4 | type: object
5 | properties:
6 | scope:
7 | type: string
8 | store_id:
9 | type: string
10 | data:
11 | type: object
12 | properties:
13 | type:
14 | type: string
15 | order_id:
16 | type: integer
17 | transaction_id:
18 | type: string
19 | hash:
20 | type: string
21 | created_at:
22 | type: integer
23 | producer:
24 | type: string
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_transaction_updated.yml:
--------------------------------------------------------------------------------
1 | properties:
2 | store/order/transaction/updated:
3 | description: Fires when a new order transaction is updated.
4 | type: object
5 | properties:
6 | scope:
7 | type: string
8 | store_id:
9 | type: string
10 | data:
11 | type: object
12 | properties:
13 | type:
14 | type: string
15 | order_id:
16 | type: integer
17 | transaction_id:
18 | type: string
19 | hash:
20 | type: string
21 | created_at:
22 | type: integer
23 | producer:
24 | type: string
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_order_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/order/updated:
4 | description: Fires when an already created order is updated. Any change to an existing order fires this webhook. Updates can include changing the status, updating a coupon, or changing an address.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/created:
4 | description: A new product is created
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/deleted:
4 | description: Product is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_inventory_order_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/inventory/order/updated:
4 | description: |-
5 | Fires when _base product_ inventory levels change in response to the order-related events configured in [Inventory settings](/docs/rest-management/settings/inventory#get-inventory-settings). For example, stock levels can change when you either place or complete/ship an order. Stock levels can also change when you refund or cancel an order. Global settings apply when inventory changes through a [manual order](https://support.bigcommerce.com/s/article/Creating-a-Manual-Order?language=en_US). The settings for a channel apply when inventory changes through an order in a channel.
6 |
7 | The webhook always fires for products without variants. For products with variants, the webhook only fires when the product's inventory properties are configured to track by _product_.
8 | type: object
9 | properties:
10 | scope:
11 | type: string
12 | store_id:
13 | type: string
14 | data:
15 | type: object
16 | properties:
17 | type:
18 | type: string
19 | id:
20 | type: integer
21 | inventory:
22 | type: object
23 | properties:
24 | product_id:
25 | type: integer
26 | method:
27 | type: string
28 | value:
29 | type: integer
30 | hash:
31 | type: string
32 | created_at:
33 | type: integer
34 | producer:
35 | type: string
36 |
37 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_inventory_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/inventory/updated:
4 | description: |-
5 | Fires when inventory levels change for a _base product_. For products without variants, the webhook fires regardless of how you track inventory.
6 |
7 | For products with variants, the webhook only fires when the product's inventory properties are configured to track by _product_ and the _product-level_ inventory changes.
8 |
9 | Inventory updates made in the control panel and by API trigger the webhook. This includes changes made by apps. In the control panel, you can bulk import inventory updates or make inventory updates to single products on the **Products > View** page.
10 | type: object
11 | properties:
12 | scope:
13 | type: string
14 | store_id:
15 | type: string
16 | data:
17 | type: object
18 | properties:
19 | type:
20 | type: string
21 | id:
22 | type: integer
23 | inventory:
24 | type: object
25 | properties:
26 | product_id:
27 | type: integer
28 | method:
29 | type: string
30 | value:
31 | type: integer
32 | hash:
33 | type: string
34 | created_at:
35 | type: integer
36 | producer:
37 | type: string
38 |
39 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/metafield/created:
4 | description: Fires when a new product metafield is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/metafield/deleted:
4 | description: Occurs when a product metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/metafield/updated:
4 | description: Occurs when product metafield details are edited.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_product_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/product/updated:
4 | description: Fires when product details are edited. For a full list of product fields that trigger an updated event, see the product updated events that follow.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_shipment_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/shipment/created:
4 | description: Shipment is created
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | orderId:
19 | type: integer
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_shipment_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/shipment/deleted:
4 | description: Shipment is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | orderId:
19 | type: integer
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_shipment_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/shipment/updated:
4 | description: Shipment is updated
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | orderId:
19 | type: integer
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
27 |
--------------------------------------------------------------------------------
/models/webhooks/store_sku_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/sku/created:
4 | description: A new sku is created
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | sku:
19 | type: object
20 | properties:
21 | product_id:
22 | type: integer
23 | variant_id:
24 | type: integer
25 | hash:
26 | type: string
27 | created_at:
28 | type: integer
29 | producer:
30 | type: string
31 |
32 |
--------------------------------------------------------------------------------
/models/webhooks/store_sku_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/sku/deleted:
4 | description: SKU is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | sku:
19 | type: object
20 | properties:
21 | product_id:
22 | type: integer
23 | variant_id:
24 | type: integer
25 | hash:
26 | type: string
27 | created_at:
28 | type: integer
29 | producer:
30 | type: string
31 |
32 |
--------------------------------------------------------------------------------
/models/webhooks/store_sku_inventory_order_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/sku/inventory/order/updated:
4 | description: |-
5 | Fires when _variant_ inventory levels change in response to the order-related events configured in [Inventory settings](/docs/rest-management/settings/inventory#get-inventory-settings). For example, stock levels can change when you either place or complete/ship an order. Stock levels can also change when you refund or cancel an order. Global settings apply when inventory changes through a [manual order](https://support.bigcommerce.com/s/article/Creating-a-Manual-Order?language=en_US). The settings for a channel apply when inventory changes through an order in a channel.
6 |
7 | The webhook does not fire for products without variants. For products with variants, the webhook only fires when the product's inventory properties are configured to track by _variant_.
8 | type: object
9 | properties:
10 | scope:
11 | type: string
12 | store_id:
13 | type: string
14 | data:
15 | type: object
16 | properties:
17 | type:
18 | type: string
19 | id:
20 | type: integer
21 | inventory:
22 | type: object
23 | properties:
24 | product_id:
25 | type: integer
26 | method:
27 | type: string
28 | value:
29 | type: integer
30 | variant_id:
31 | type: integer
32 | hash:
33 | type: string
34 | created_at:
35 | type: integer
36 | producer:
37 | type: string
38 |
39 |
--------------------------------------------------------------------------------
/models/webhooks/store_sku_inventory_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/sku/inventory/updated:
4 | description: |-
5 | Fires when inventory levels change for a _variant_. This webhook does not fire for products without variants.
6 |
7 | For products with variants, the webhook only fires when the product's inventory properties are configured to track by _variant_ and the _variant-level_ inventory changes.
8 |
9 | Inventory updates made in the control panel and by API trigger the webhook. This includes changes made by apps. In the control panel, you can bulk import inventory updates or make inventory updates to single products on the **Products > View** page.
10 | type: object
11 | properties:
12 | scope:
13 | type: string
14 | store_id:
15 | type: string
16 | data:
17 | type: object
18 | properties:
19 | type:
20 | type: string
21 | id:
22 | type: integer
23 | inventory:
24 | type: object
25 | properties:
26 | product_id:
27 | type: integer
28 | method:
29 | type: string
30 | value:
31 | type: integer
32 | variant_id:
33 | type: integer
34 | hash:
35 | type: string
36 | created_at:
37 | type: integer
38 | producer:
39 | type: string
40 |
41 |
--------------------------------------------------------------------------------
/models/webhooks/store_sku_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/sku/updated:
4 | description: SKU is updated
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | sku:
19 | type: object
20 | properties:
21 | product_id:
22 | type: integer
23 | variant_id:
24 | type: integer
25 | hash:
26 | type: string
27 | created_at:
28 | type: integer
29 | producer:
30 | type: string
31 |
32 |
--------------------------------------------------------------------------------
/models/webhooks/store_subscriber_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/subscriber/created:
4 | description: Subscriber is created
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_subscriber_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/subscriber/deleted:
4 | description: Subscriber is deleted
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_subscriber_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/subscriber/updated:
4 | description: Subscriber is updated
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | type:
15 | type: string
16 | id:
17 | type: integer
18 | hash:
19 | type: string
20 | created_at:
21 | type: integer
22 | producer:
23 | type: string
24 |
25 |
--------------------------------------------------------------------------------
/models/webhooks/store_variant_metafield_created.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/variant/metafield/created:
4 | description: Occurs when a new product variant metafield is created.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_variant_metafield_deleted.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/variant/metafield/deleted:
4 | description: Occurs when a product variant metafield is deleted.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/models/webhooks/store_variant_metafield_updated.yml:
--------------------------------------------------------------------------------
1 | type: object
2 | properties:
3 | store/variant/metafield/updated:
4 | description: Occurs when product variant metafield details are edited.
5 | type: object
6 | properties:
7 | scope:
8 | type: string
9 | store_id:
10 | type: string
11 | data:
12 | type: object
13 | properties:
14 | metafield_id:
15 | type: integer
16 | resource_id:
17 | type: string
18 | resource_type:
19 | type: string
20 | hash:
21 | type: string
22 | created_at:
23 | type: integer
24 | producer:
25 | type: string
26 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mdx-linter-devdocs",
3 | "version": "1.0.0",
4 | "description": "Lints and otherwise helps improve DevDocs in MDX format.",
5 | "main": "index.js",
6 | "directories": {
7 | "example": "examples"
8 | },
9 | "engines": {
10 | "node": ">= 14.0.0"
11 | },
12 | "scripts": {
13 | "lint": "eslint ./docs --ext mdx --max-warnings 0"
14 | },
15 | "repository": {
16 | "type": "git",
17 | "url": "null"
18 | },
19 | "keywords": [
20 | "lint",
21 | "mdx",
22 | "eslint",
23 | "docs-as-code"
24 | ],
25 | "devDependencies": {
26 | "eslint": "^8.34.0",
27 | "eslint-plugin-mdx": "^2.0.5"
28 | },
29 | "author": "Matthew Volk"
30 | }
31 |
--------------------------------------------------------------------------------
/pull_request_template.md:
--------------------------------------------------------------------------------
1 | # [DEVDOCS-]
2 | {Ticket number or summary of work}
3 |
4 | ## What changed?
5 | Provide a bulleted list in the present tense
6 | *
7 |
8 | ## Anything else?
9 | Add related PRs, salient notes, ticket numbers, etc.
10 |
11 | ping {names}
12 |
--------------------------------------------------------------------------------
/reference/.spectral.yaml:
--------------------------------------------------------------------------------
1 | extends:
2 | - spectral:oas
3 | - ../.spectral.yaml
4 | rules:
5 | info-contact: off
6 | oas3-unused-components: off
7 | oas2-unused-definition: off
--------------------------------------------------------------------------------
/reference/consent.sf.yml:
--------------------------------------------------------------------------------
1 | openapi: '3.0.1'
2 | servers:
3 | - url: 'https://{store_domain}/api/storefront'
4 | variables:
5 | store_domain:
6 | default: your_store.example.com
7 | description: 'The [URL authority](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/Web_mechanics/What_is_a_URL#authority) of the storefront.'
8 | info:
9 | title: Storefront Cookie Consent
10 | description: |-
11 | Specify shopper cookie consent preferences.
12 |
13 | For info about API accounts, see our [Guide to API Accounts](/docs/start/authentication/api-accounts).
14 |
15 | For info about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#same-origin-cors-authentication).
16 | version: Storefront
17 | tags:
18 | - name: Consent
19 | paths:
20 | /consent:
21 | post:
22 | summary: Set Cookie Consent Preferences
23 | tags:
24 | - Consent
25 | responses:
26 | '200':
27 | description: Consent Settings Saved
28 | '400':
29 | description: Invalid input
30 | requestBody:
31 | content:
32 | application/json:
33 | schema:
34 | $ref: '#/components/schemas/ConsentPreferences'
35 | examples:
36 | Example:
37 | value:
38 | allow:
39 | - 2
40 | - 3
41 | deny:
42 | - 4
43 | description: 'Data sent to the [Update customer consent](/docs/rest-management/customers/customer-consent#update-customer-consent) endpoint when creating a customer during checkout.'
44 | required: true
45 | description: |
46 | Sets the status of a customer's consent to allow data collection by cookies and scripts according to the following consent categories:
47 |
48 |
49 | 2. Analytics — These cookies provide statistical information on site usage so the store owner can improve the website over time.
50 | 3. Functional — These cookies enable enhanced functionality, such as videos and live chat. If a shopper does not allow these, then some or all of these functions may not work properly.
51 | 4. Targeting; Advertising — These cookies allow merchants to create profiles or personalize content to enhance users' shopping experience.
52 |
53 |
54 | This endpoint only works if the cookie consent feature is enabled. It is assumed the shopper has not consented to anything until a value is explicitly set. The request body must be populated with a complete set of allowed and denied categories.
55 |
56 | Once set, consent preferences will be saved as a cookie for guest shoppers. Consent preferences will be persisted to a shopper's account to be used for future sessions once they have logged in. Consent preferences can also be managed using the [Update customer consent](/docs/rest-management/customers/customer-consent#update-customer-consent) endpoint.
57 |
58 | > #### Note
59 | > * Substitute your storefront domain for `yourstore.example.com`.
60 | operationId: postConsent
61 | parameters: []
62 | components:
63 | schemas:
64 | ConsentPreferences:
65 | type: object
66 | title: ConsentPreferences
67 | description: |-
68 | List of allowed and denied consent categories. Must be populated with a complete set of allowed and denied categories.
69 |
70 | Configurable categories are:
71 |
72 | 2 - Functional
73 | 3 - Analytics
74 | 4 - Targeting; Advertising
75 |
76 | For further definition of these categories, see [Scripts API](/docs/integrations/scripts).
77 | properties:
78 | allow:
79 | type: array
80 | description: 'Explicitly allowed consent categories. Allowed values are 2, 3, 4.'
81 | items:
82 | type: integer
83 | enum:
84 | - 2
85 | - 3
86 | - 4
87 | example: 3
88 | deny:
89 | type: array
90 | description: 'Denied consent categories. Allowed values are 2, 3, 4.'
91 | items:
92 | type: integer
93 | enum:
94 | - 2
95 | - 3
96 | - 4
97 | example: 4
98 | required:
99 | - allow
100 | - deny
101 | x-internal: false
102 |
--------------------------------------------------------------------------------
/reference/customer_login.yml:
--------------------------------------------------------------------------------
1 | openapi: '3.0.1'
2 | info:
3 | title: Customer Login (SSO)
4 | description: |-
5 | Enable single sign-on for shoppers on BigCommerce hosted storefronts.
6 |
7 | [Learn more about the customer login API](/docs/start/authentication/customer-login).
8 |
9 | For info about API accounts, see our [Guide to API Accounts](/docs/start/authentication/api-accounts).
10 |
11 | For info about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#user-generated-jwts).
12 | termsOfService: 'https://www.bigcommerce.com/terms'
13 | contact:
14 | name: BigCommerce
15 | url: 'https://www.bigcommerce.com'
16 | email: support@bigcommerce.com
17 | version: ''
18 | servers:
19 | - url: 'https://{store_domain}'
20 | variables:
21 | store_domain:
22 | default: your_store.example.com
23 | description: 'The [URL authority](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/Web_mechanics/What_is_a_URL#authority) of the storefront.'
24 | tags:
25 | - name: Login Token
26 | paths:
27 | /login/token/{jwt_token}:
28 | get:
29 | tags:
30 | - Login Token
31 | summary: Login Token
32 | description: |-
33 | The customer login access point URL.
34 |
35 | [Learn more about the Customer Login API](/docs/start/authentication/customer-login).
36 |
37 | ## Example
38 |
39 | ```
40 | https://yourstore.example.com/login/token/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ7Y2xpZW50X2lkfSIsImlhdCI6MTUzNTM5MzExMywianRpIjoie3V1aWR9Iiwib3BlcmF0aW9uIjoiY3VzdG9tZXJfbG9naW4iLCJzdG9yZV9oYXNoIjoie3N0b3JlX2hhc2h9IiwiY3VzdG9tZXJfaWQiOjJ9.J-fAtbjRFGdLsT744DhoprFEDqIfVq72HbDzrbFy6Is
41 | ```
42 | parameters:
43 | - name: jwt_token
44 | in: path
45 | required: true
46 | schema:
47 | type: string
48 | responses:
49 | '200':
50 | description: OK
51 | content:
52 | '*/*':
53 | schema:
54 | type: object
55 | components:
56 | schemas:
57 | customerLoginSSO:
58 | title: Customer Login SSO
59 | type: object
60 | properties:
61 | iss:
62 | type: string
63 | description: Indicates the token’s issuer. This is your application’s client
64 | ID, which is obtained during application registration in Developer Portal.
65 | example: '"1234r5t6y7u8i9o0p"'
66 | iat:
67 | type: integer
68 | description: Time when the token was generated. This is a numeric value
69 | indicating the number of seconds since the [Unix epoch](https://en.wikipedia.org/wiki/Unix_time).
70 | example: 1535393113
71 | jti:
72 | type: string
73 | description: Request ID string that must be unique across all requests made
74 | by your app. A UUID or other random string would be an appropriate value.
75 | Most libraries contain a method for generating a uuid. For testing a [UUID
76 | generator](https://www.uuidgenerator.net/) can be used, but it recommended
77 | to use built in libraries.
78 | example: '"20b7c03e-00da-4d29-91bf-2aa06a57575b"'
79 | operation:
80 | type: string
81 | description: Must contain the string “customer_login”.
82 | example: '"customer_login"'
83 | store_hash:
84 | type: string
85 | description: |
86 | Store hash identifying the store you are logging into.
87 | example: '"abc123"'
88 | customer_id:
89 | type: integer
90 | description: |
91 | ID of the customer you are logging in, as obtained through the Customer API.
92 | example: 2
93 | redirect_to:
94 | type: string
95 | description: |
96 | Optional field containing a relative path for the shopper’s destination after login. Will default to `/account.php`.
97 | default: /account.php
98 | request_ip:
99 | type: string
100 | description: |
101 | **(Optional)** Field containing the expected IP address for the request. If provided, BigCommerce will check that it matches the browser trying to log in. If there is not a match, it will be rejected.
102 | example: '"111.222.333.444"'
103 | x-internal: false
104 |
105 |
--------------------------------------------------------------------------------
/reference/customers.sf.yml:
--------------------------------------------------------------------------------
1 | openapi: '3.0.1'
2 | info:
3 | version: Storefront
4 | title: Storefront Customers
5 | description: |-
6 | Manage customers and data via front-end JavaScript on BigCommerce Stencil-powered storefronts.
7 |
8 | For info about API accounts, see our [Guide to API Accounts](/docs/start/authentication/api-accounts).
9 |
10 | For info about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#same-origin-cors-authentication).
11 | servers:
12 | - url: 'https://{store_domain}/api/storefront'
13 | variables:
14 | store_domain:
15 | default: your_store.example.com
16 | description: 'The [URL authority](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/Web_mechanics/What_is_a_URL#authority) of the storefront.'
17 | tags:
18 | - name: Customers
19 | paths:
20 | /customers:
21 | post:
22 | tags:
23 | - Customers
24 | description: |-
25 | Create a *Customer*.
26 |
27 | > #### Note
28 | > * Substitute your storefront domain for `yourstore.example.com`.
29 | > * The Send a Test Request feature is not currently supported for this endpoint.
30 | responses:
31 | '204':
32 | description: Customer successfully created.
33 | '400':
34 | description: Could not create customer.
35 | '409':
36 | description: Thereʼs already an account for the provided email. Please enter a different email address or sign in.
37 | '422':
38 | description: Missing Required Fields.
39 | '429':
40 | description: Spam Protection Failed.
41 | summary: Create a Customer
42 | operationId: createACustomer
43 | requestBody:
44 | content:
45 | application/json:
46 | schema:
47 | $ref: '#/components/schemas/CustomerCreateData'
48 | examples:
49 | application/json:
50 | value:
51 | firstName: Jane
52 | lastName: Doe
53 | email: janedoe@example.com
54 | password: string
55 | acceptsMarketingEmails: true
56 | customFields:
57 | - fieldId: '25'
58 | fieldValue: Leave in backyard
59 | description: Data sent the the customer endpoint when creating a customer during checkout.
60 | components:
61 | schemas:
62 | CustomerCreateData:
63 | title: CustomerCreateData
64 | type: object
65 | properties:
66 | firstName:
67 | type: string
68 | description: First name of customer.
69 | lastName:
70 | type: string
71 | description: Last name of customer.
72 | email:
73 | type: string
74 | description: Email of customer.
75 | password:
76 | type: string
77 | description: Password of customer.
78 | acceptsMarketingEmails:
79 | type: boolean
80 | description: Indicates whether customer provided consent to receive marketing emails.
81 | customFields:
82 | type: array
83 | items:
84 | $ref: '#/components/schemas/CustomFields'
85 | x-internal: false
86 | CustomFields:
87 | title: CustomFields
88 | type: object
89 | x-internal: false
90 | properties:
91 | fieldId:
92 | type: string
93 | fieldValue:
94 | oneOf:
95 | - type: string
96 | - type: number
97 | - type: array
98 | items:
99 | type: string
--------------------------------------------------------------------------------
/reference/subscriptions.sf.yml:
--------------------------------------------------------------------------------
1 | openapi: '3.0.1'
2 | info:
3 | title: Storefront Subscriptions
4 | description: |-
5 | Manage newsletter and marketing email subscriptions on the storefront.
6 |
7 | For info about API accounts, see our [Guide to API Accounts](/docs/start/authentication/api-accounts).
8 |
9 | For info about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#same-origin-cors-authentication).
10 |
11 | ## Additional Information
12 |
13 | * [Collecting Newsletter Subscriptions](https://support.bigcommerce.com/s/article/Collecting-Newsletter-Subscriptions) (support.bigcommerce.com)
14 | * [Customers Overview](/docs/store-operations/customers/customers-subscribers-overview)
15 | * [Working with Storefront APIs](/docs/storefront/cart-checkout/guide/rest-storefront)
16 | termsOfService: 'https://www.bigcommerce.com/terms'
17 | contact:
18 | name: BigCommerce
19 | url: 'https://www.bigcommerce.com'
20 | email: support@bigcommerce.com
21 | version: ''
22 | servers:
23 | - url: 'https://{store_domain}/api/storefront'
24 | variables:
25 | store_domain:
26 | default: your_store.example.com
27 | description: 'The [URL authority](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/Web_mechanics/What_is_a_URL#authority) of the storefront.'
28 | tags:
29 | - name: Subscription
30 | paths:
31 | /subscriptions:
32 | post:
33 | tags:
34 | - Subscription
35 | summary: Create a Subscription
36 | operationId: createASubscription
37 | description: |-
38 | Creates or updates an email subscription.
39 |
40 | By default, customers receive abandoned cart emails as soon as they provide their email address in the checkout flow. They can opt out using this endpoint.
41 |
42 | However, if **Store Settings > Miscellaneous > Require Consent** is enabled, Abandoned Cart Emails are not sent by default, and the customer should opt-in.
43 |
44 | > #### Note
45 | > * Substitute your storefront domain for `yourstore.example.com`.
46 | > * The Send a Test Request feature is not currently supported for this endpoint.
47 | requestBody:
48 | content:
49 | application/json:
50 | schema:
51 | $ref: '#/components/schemas/SubscriptionRequest'
52 | required: false
53 | responses:
54 | '200':
55 | description: ''
56 | content:
57 | application/json:
58 | schema:
59 | $ref: '#/components/schemas/Subscription'
60 | components:
61 | schemas:
62 | SubscriptionRequest:
63 | type: object
64 | properties:
65 | email:
66 | type: string
67 | description: Email of subscriber
68 | acceptsMarketingNewsletter:
69 | type: boolean
70 | description: Describes whether subscriber has consented to receive Marketing emails.
71 | acceptsAbandonedCartEmails:
72 | type: boolean
73 | description: Describes whether subscriber has consented to receive Abandoned Cart emails.
74 | x-internal: false
75 | Subscription:
76 | type: object
77 | properties:
78 | id:
79 | type: integer
80 | description: |
81 | The unique numeric ID of the subscriber; increments sequentially.
82 | email:
83 | type: string
84 | description: |
85 | The email of the subscriber. Must be unique.
86 | firstName:
87 | maxLength: 255
88 | minLength: 0
89 | type: string
90 | description: |
91 | The first name of the subscriber.
92 | lastName:
93 | maxLength: 255
94 | minLength: 0
95 | type: string
96 | description: |
97 | The last name of the subscriber.
98 | source:
99 | maxLength: 255
100 | minLength: 0
101 | type: string
102 | description: |
103 | The source of the subscriber. Values are: `storefront`, `order`, or `custom`.
104 | orderId:
105 | maximum: 2147483647
106 | minimum: 1
107 | type: integer
108 | description: |
109 | The ID of the source order, if source was an order.
110 | nullable: true
111 | consents:
112 | type: array
113 | items: {}
114 | description: |
115 | The collection of consents the shopper is subscribing to.
116 | description: Subscription properties.
117 | x-internal: false
118 |
--------------------------------------------------------------------------------