Files
medusa-store/www/apps/api-reference/specs/store/openapi.full.yaml
2024-07-17 08:34:42 +01:00

8820 lines
290 KiB
YAML

openapi: 3.0.0
info:
version: 2.0.0
title: Medusa Storefront API
license:
name: MIT
url: https://github.com/medusajs/medusa/blob/master/LICENSE
servers:
- url: http://localhost:9000
- url: https://api.medusa-commerce.com
tags:
- name: Carts
description: |
A cart is a virtual shopping bag that customers can use to add items they want to purchase.
A cart is then used to checkout and place an order.
externalDocs:
description: How to implement cart functionality in your storefront
url: https://docs.medusajs.com/modules/carts-and-checkout/storefront/implement-cart
- name: Collections
- name: Currencies
- name: Customers
- name: Orders
- name: Payment Collections
description: |
A payment collection is useful for managing additional payments, such as for Order Edits, or installment payments.
- name: Payment Providers
- name: Product Categories
x-associatedSchema:
$ref: '#/components/schemas/StoreProductCategory'
- name: Products
x-associatedSchema:
$ref: '#/components/schemas/StoreProduct'
- name: Regions
description: |
Regions are different countries or geographical regions that the commerce store serves customers in.
Customers can choose what region they're in, which can be used to change the prices shown based on the region and its currency.
externalDocs:
description: How to use regions in a storefront
url: https://docs.medusajs.com/modules/regions-and-currencies/storefront/use-regions
- name: Return
- name: Return Reasons
- name: Shipping Options
paths:
/store/carts:
post:
operationId: PostCarts
summary: Create Cart
description: Create a cart.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCartWorkflowInput'
x-codeSamples:
- lang: Shell
label: cURL
source: curl -X POST '{backend_url}/store/carts'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}:
get:
operationId: GetCartsId
summary: Get a Cart
description: Retrieve a cart by its ID. You can expand the cart's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/carts/{id}'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
post:
operationId: PostCartsId
summary: Update a Cart
description: Update a cart's details.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCartData'
x-codeSamples:
- lang: Shell
label: cURL
source: curl -X POST '{backend_url}/store/carts/{id}'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}/complete:
post:
operationId: PostCartsIdComplete
summary: Add Completes to Cart
description: Add a list of completes to a cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
properties:
idempotency_key:
type: string
title: idempotency_key
description: The cart's idempotency key.
x-codeSamples:
- lang: Shell
label: cURL
source: curl -X POST '{backend_url}/store/carts/{id}/complete'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}/line-items:
post:
operationId: PostCartsIdLineItems
summary: Add Line Items to Cart
description: Add a list of line items to a cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StoreAddCartLineItem'
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/carts/{id}/line-items' \
-H 'Content-Type: application/json' \
--data-raw '{
"variant_id": "{value}",
"quantity": 3360689747918848,
"metadata": {}
}'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}/line-items/{line_id}:
post:
operationId: PostCartsIdLineItemsLine_id
summary: Add Line Items to Cart
description: Add a list of line items to a cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: line_id
in: path
description: The cart's line id.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StoreUpdateCartLineItem'
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/carts/{id}/line-items/{line_id}' \
-H 'Content-Type: application/json' \
--data-raw '{
"quantity": 8980402259623936,
"metadata": {}
}'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
delete:
operationId: DeleteCartsIdLineItemsLine_id
summary: Remove Line Items from Cart
description: Remove a list of line items from a cart. This doesn't delete the Line Item, only the association between the Line Item and the cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: line_id
in: path
description: The cart's line id.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl -X DELETE '{backend_url}/store/carts/{id}/line-items/{line_id}'
tags:
- Carts
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The cart's ID.
object:
type: string
title: object
description: The cart's object.
deleted:
type: boolean
title: deleted
description: The cart's deleted.
parent:
type: object
description: The cart's parent.
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}/promotions:
post:
operationId: PostCartsIdPromotions
summary: Add Promotions to Cart
description: Add a list of promotions to a cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- promo_codes
properties:
promo_codes:
type: array
description: The cart's promo codes.
items:
type: string
title: promo_codes
description: The promo code's promo codes.
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/carts/{id}/promotions' \
-H 'Content-Type: application/json' \
--data-raw '{
"promo_codes": [
"{value}"
]
}'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
delete:
operationId: DeleteCartsIdPromotions
summary: Remove Promotions from Cart
description: Remove a list of promotions from a cart. This doesn't delete the Promotion, only the association between the Promotion and the cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl -X DELETE '{backend_url}/store/carts/{id}/promotions'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}/shipping-methods:
post:
operationId: PostCartsIdShippingMethods
summary: Add Shipping Methods to Cart
description: Add a list of shipping methods to a cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- option_id
properties:
option_id:
type: string
title: option_id
description: The cart's option id.
data:
type: object
description: The cart's data.
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/carts/{id}/shipping-methods' \
-H 'Content-Type: application/json' \
--data-raw '{
"option_id": "{value}"
}'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/carts/{id}/taxes:
post:
operationId: PostCartsIdTaxes
summary: Add Taxes to Cart
description: Add a list of taxes to a cart.
x-authenticated: false
parameters:
- name: id
in: path
description: The cart's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StoreCalculateCartTaxes'
x-codeSamples:
- lang: Shell
label: cURL
source: curl -X POST '{backend_url}/store/carts/{id}/taxes'
tags:
- Carts
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/collections:
get:
operationId: GetCollections
summary: List Collections
description: Retrieve a list of collections. The collections can be filtered by fields such as `id`. The collections can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/collections'
tags:
- Collections
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/collections/{id}:
get:
operationId: GetCollectionsId
summary: Get a Collection
description: Retrieve a collection by its ID. You can expand the collection's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The collection's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/collections/{id}'
tags:
- Collections
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/currencies:
get:
operationId: GetCurrencies
summary: List Currencies
description: Retrieve a list of currencies. The currencies can be filtered by fields such as `id`. The currencies can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/currencies'
tags:
- Currencies
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/currencies/{code}:
get:
operationId: GetCurrenciesCode
summary: Get a Currency
description: Retrieve a currency by its ID. You can expand the currency's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: code
in: path
description: The currency's code.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/currencies/{code}'
tags:
- Currencies
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/customers:
post:
operationId: PostCustomers
summary: Create Customer
description: Create a customer.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StoreCreateCustomer'
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/customers' \
-H 'Content-Type: application/json' \
--data-raw '{
"email": "Monserrate.Leannon88@yahoo.com",
"company_name": "{value}",
"first_name": "{value}",
"last_name": "{value}",
"phone": "{value}"
}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/customers/me:
get:
operationId: GetCustomersMe
summary: List Customers
description: Retrieve a list of customers. The customers can be filtered by fields such as `id`. The customers can also be sorted or paginated.
x-authenticated: true
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
security:
- cookie_auth: []
- jwt_token: []
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl '{backend_url}/store/customers/me' \
-H 'Authorization: Bearer {access_token}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
post:
operationId: PostCustomersMe
summary: Create Customer
description: Create a customer.
x-authenticated: true
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
security:
- cookie_auth: []
- jwt_token: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StoreUpdateCustomer'
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/customers/me' \
-H 'Authorization: Bearer {access_token}' \
-H 'Content-Type: application/json' \
--data-raw '{
"company_name": "{value}",
"first_name": "{value}",
"last_name": "{value}",
"phone": "{value}"
}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/customers/me/addresses:
get:
operationId: GetCustomersMeAddresses
summary: List Customers
description: Retrieve a list of customers. The customers can be filtered by fields such as `id`. The customers can also be sorted or paginated.
x-authenticated: true
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: metadata
in: query
description: The customer's metadata.
required: true
schema:
type: object
description: The customer's metadata.
- name: first_name
in: query
description: The customer's first name.
required: true
schema:
type: string
title: first_name
description: The customer's first name.
- name: last_name
in: query
description: The customer's last name.
required: true
schema:
type: string
title: last_name
description: The customer's last name.
- name: phone
in: query
description: The customer's phone.
required: true
schema:
type: string
title: phone
description: The customer's phone.
- name: company
in: query
description: The customer's company.
required: true
schema:
type: string
title: company
description: The customer's company.
- name: address_1
in: query
description: The customer's address 1.
required: true
schema:
type: string
title: address_1
description: The customer's address 1.
- name: address_2
in: query
description: The customer's address 2.
required: true
schema:
type: string
title: address_2
description: The customer's address 2.
- name: city
in: query
description: The customer's city.
required: true
schema:
type: string
title: city
description: The customer's city.
- name: country_code
in: query
description: The customer's country code.
required: true
schema:
type: string
title: country_code
description: The customer's country code.
- name: province
in: query
description: The customer's province.
required: true
schema:
type: string
title: province
description: The customer's province.
- name: postal_code
in: query
description: The customer's postal code.
required: true
schema:
type: string
title: postal_code
description: The customer's postal code.
- name: address_name
in: query
description: The customer's address name.
required: true
schema:
type: string
title: address_name
description: The customer's address name.
- name: is_default_shipping
in: query
description: The customer's is default shipping.
required: false
schema:
type: boolean
title: is_default_shipping
description: The customer's is default shipping.
- name: is_default_billing
in: query
description: The customer's is default billing.
required: false
schema:
type: boolean
title: is_default_billing
description: The customer's is default billing.
security:
- cookie_auth: []
- jwt_token: []
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl '{backend_url}/store/customers/me/addresses' \
-H 'Authorization: Bearer {access_token}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
post:
operationId: PostCustomersMeAddresses
summary: Create Customer
description: Create a customer.
x-authenticated: true
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
security:
- cookie_auth: []
- jwt_token: []
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- metadata
- first_name
- last_name
- phone
- company
- address_1
- address_2
- city
- country_code
- province
- postal_code
- address_name
properties:
metadata:
type: object
description: The customer's metadata.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
phone:
type: string
title: phone
description: The customer's phone.
company:
type: string
title: company
description: The customer's company.
address_1:
type: string
title: address_1
description: The customer's address 1.
address_2:
type: string
title: address_2
description: The customer's address 2.
city:
type: string
title: city
description: The customer's city.
country_code:
type: string
title: country_code
description: The customer's country code.
province:
type: string
title: province
description: The customer's province.
postal_code:
type: string
title: postal_code
description: The customer's postal code.
address_name:
type: string
title: address_name
description: The customer's address name.
is_default_shipping:
type: boolean
title: is_default_shipping
description: The customer's is default shipping.
is_default_billing:
type: boolean
title: is_default_billing
description: The customer's is default billing.
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/customers/me/addresses' \
-H 'Authorization: Bearer {access_token}' \
-H 'Content-Type: application/json' \
--data-raw '{
"metadata": {},
"first_name": "{value}",
"last_name": "{value}",
"phone": "{value}",
"company": "{value}",
"address_1": "{value}",
"address_2": "{value}",
"city": "{value}",
"country_code": "{value}",
"province": "{value}",
"postal_code": "{value}",
"address_name": "{value}"
}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/customers/me/addresses/{address_id}:
get:
operationId: GetCustomersMeAddressesAddress_id
summary: List Addresses
description: Retrieve a list of addresses in a customer. The addresses can be filtered by fields like FILTER FIELDS. The addresses can also be paginated.
x-authenticated: true
parameters:
- name: address_id
in: path
description: The customer's address id.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
security:
- cookie_auth: []
- jwt_token: []
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl '{backend_url}/store/customers/me/addresses/{address_id}' \
-H 'Authorization: Bearer {access_token}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
post:
operationId: PostCustomersMeAddressesAddress_id
summary: Add Addresses to Customer
description: Add a list of addresses to a customer.
x-authenticated: true
parameters:
- name: address_id
in: path
description: The customer's address id.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
security:
- cookie_auth: []
- jwt_token: []
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- metadata
- first_name
- last_name
- phone
- company
- address_1
- address_2
- city
- country_code
- province
- postal_code
- address_name
properties:
metadata:
type: object
description: The customer's metadata.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
phone:
type: string
title: phone
description: The customer's phone.
company:
type: string
title: company
description: The customer's company.
address_1:
type: string
title: address_1
description: The customer's address 1.
address_2:
type: string
title: address_2
description: The customer's address 2.
city:
type: string
title: city
description: The customer's city.
country_code:
type: string
title: country_code
description: The customer's country code.
province:
type: string
title: province
description: The customer's province.
postal_code:
type: string
title: postal_code
description: The customer's postal code.
address_name:
type: string
title: address_name
description: The customer's address name.
is_default_shipping:
type: boolean
title: is_default_shipping
description: The customer's is default shipping.
is_default_billing:
type: boolean
title: is_default_billing
description: The customer's is default billing.
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/customers/me/addresses/{address_id}' \
-H 'Authorization: Bearer {access_token}' \
-H 'Content-Type: application/json' \
--data-raw '{
"metadata": {},
"first_name": "{value}",
"last_name": "{value}",
"phone": "{value}",
"company": "{value}",
"address_1": "{value}",
"address_2": "{value}",
"city": "{value}",
"country_code": "{value}",
"province": "{value}",
"postal_code": "{value}",
"address_name": "{value}"
}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
delete:
operationId: DeleteCustomersMeAddressesAddress_id
summary: Remove Addresses from Customer
description: Remove a list of addresses from a customer. This doesn't delete the Address, only the association between the Address and the customer.
x-authenticated: true
parameters:
- name: address_id
in: path
description: The customer's address id.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
security:
- cookie_auth: []
- jwt_token: []
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X DELETE '{backend_url}/store/customers/me/addresses/{address_id}' \
-H 'Authorization: Bearer {access_token}'
tags:
- Customers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/orders:
get:
operationId: GetOrders
summary: List Orders
description: Retrieve a list of orders. The orders can be filtered by fields such as `id`. The orders can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: id
in: query
required: false
schema:
oneOf:
- type: string
title: id
description: The order's ID.
- type: array
description: The order's ID.
items:
type: string
title: id
description: The id's ID.
- name: name
in: query
required: false
schema:
oneOf:
- type: string
title: name
description: The order's name.
- type: array
description: The order's name.
items:
type: string
title: name
description: The name's details.
- name: $and
in: query
required: false
schema: {}
- name: $or
in: query
required: false
schema: {}
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/orders'
tags:
- Orders
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/orders/{id}:
get:
operationId: GetOrdersId
summary: Get a Order
description: Retrieve a order by its ID. You can expand the order's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The order's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: id
in: query
required: false
schema:
oneOf:
- type: string
title: id
description: The order's ID.
- type: array
description: The order's ID.
items:
type: string
title: id
description: The id's ID.
- name: status
in: query
required: false
schema:
oneOf:
- type: string
title: status
description: The order's status.
- type: array
description: The order's status.
items:
type: string
title: status
description: The status's details.
- name: $and
in: query
required: false
schema: {}
- name: $or
in: query
required: false
schema: {}
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/orders/{id}'
tags:
- Orders
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/payment-collections:
post:
operationId: PostPaymentCollections
summary: Create Payment Collection
description: Create a payment collection.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- cart_id
- region_id
- currency_code
- amount
properties:
cart_id:
type: string
title: cart_id
description: The payment collection's cart id.
region_id:
type: string
title: region_id
description: The payment collection's region id.
currency_code:
type: string
title: currency_code
description: The payment collection's currency code.
amount:
type: number
title: amount
description: The payment collection's amount.
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/payment-collections' \
-H 'Content-Type: application/json' \
--data-raw '{
"cart_id": "{value}",
"region_id": "{value}",
"currency_code": "{value}",
"amount": 8468325826822144
}'
tags:
- Payment Collections
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/payment-collections/{id}/payment-sessions:
post:
operationId: PostPaymentCollectionsIdPaymentSessions
summary: Add Payment Sessions to Payment Collection
description: Add a list of payment sessions to a payment collection.
x-authenticated: false
parameters:
- name: id
in: path
description: The payment collection's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
type: object
description: SUMMARY
required:
- provider_id
properties:
provider_id:
type: string
title: provider_id
description: The payment collection's provider id.
context:
type: object
description: The payment collection's context.
data:
type: object
description: The payment collection's data.
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/payment-collections/{id}/payment-sessions' \
-H 'Content-Type: application/json' \
--data-raw '{
"provider_id": "{value}"
}'
tags:
- Payment Collections
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/payment-providers:
get:
operationId: GetPaymentProviders
summary: List Payment Providers
description: Retrieve a list of payment providers. The payment providers can be filtered by fields such as `id`. The payment providers can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: region_id
in: query
description: The payment provider's region id.
required: true
schema:
type: string
title: region_id
description: The payment provider's region id.
- name: id
in: query
required: false
schema:
oneOf:
- type: string
title: id
description: The payment provider's ID.
- type: array
description: The payment provider's ID.
items:
type: string
title: id
description: The id's ID.
- name: is_enabled
in: query
description: The payment provider's is enabled.
required: false
schema:
type: boolean
title: is_enabled
description: The payment provider's is enabled.
- name: $and
in: query
required: false
schema: {}
- name: $or
in: query
required: false
schema: {}
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/payment-providers'
tags:
- Payment Providers
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/product-categories:
get:
operationId: GetProductCategories
summary: List Product Categories
description: Retrieve a list of product categories. The product categories can be filtered by fields such as `id`. The product categories can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: q
in: query
description: The product category's q.
required: false
schema:
type: string
title: q
description: The product category's q.
- name: id
in: query
required: false
schema:
oneOf:
- type: string
title: id
description: The product category's ID.
- type: array
description: The product category's ID.
items:
type: string
title: id
description: The id's ID.
- name: description
in: query
required: false
schema:
oneOf:
- type: string
title: description
description: The product category's description.
- type: array
description: The product category's description.
items:
type: string
title: description
description: The description's details.
- name: handle
in: query
required: false
schema:
oneOf:
- type: string
title: handle
description: The product category's handle.
- type: array
description: The product category's handle.
items:
type: string
title: handle
description: The handle's details.
- name: parent_category_id
in: query
required: false
schema:
oneOf:
- type: string
title: parent_category_id
description: The product category's parent category id.
- type: array
description: The product category's parent category id.
items:
type: string
title: parent_category_id
description: The parent category id's details.
- name: include_ancestors_tree
in: query
description: The product category's include ancestors tree.
required: true
schema:
type: boolean
title: include_ancestors_tree
description: The product category's include ancestors tree.
- name: include_descendants_tree
in: query
description: The product category's include descendants tree.
required: true
schema:
type: boolean
title: include_descendants_tree
description: The product category's include descendants tree.
- name: created_at
in: query
description: The product category's created at.
required: false
schema:
type: object
description: The product category's created at.
required:
- $eq
- $ne
- $in
- $nin
- $like
- $ilike
- $re
- $contains
- $gt
- $gte
- $lt
- $lte
properties:
$eq: {}
$ne: {}
$in: {}
$nin: {}
$like: {}
$ilike: {}
$re: {}
$contains: {}
$gt: {}
$gte: {}
$lt: {}
$lte: {}
- name: updated_at
in: query
description: The product category's updated at.
required: false
schema:
type: object
description: The product category's updated at.
required:
- $eq
- $ne
- $in
- $nin
- $like
- $ilike
- $re
- $contains
- $gt
- $gte
- $lt
- $lte
properties:
$eq: {}
$ne: {}
$in: {}
$nin: {}
$like: {}
$ilike: {}
$re: {}
$contains: {}
$gt: {}
$gte: {}
$lt: {}
$lte: {}
- name: deleted_at
in: query
description: The product category's deleted at.
required: false
schema:
type: object
description: The product category's deleted at.
required:
- $eq
- $ne
- $in
- $nin
- $like
- $ilike
- $re
- $contains
- $gt
- $gte
- $lt
- $lte
properties:
$eq: {}
$ne: {}
$in: {}
$nin: {}
$like: {}
$ilike: {}
$re: {}
$contains: {}
$gt: {}
$gte: {}
$lt: {}
$lte: {}
- name: $and
in: query
required: false
schema: {}
- name: $or
in: query
required: false
schema: {}
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/product-categories'
tags:
- Product Categories
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/StoreProductCategoryListResponse'
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/product-categories/{id}:
get:
operationId: GetProductCategoriesId
summary: Get a Product Category
description: Retrieve a product category by its ID. You can expand the product category's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The product category's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: include_ancestors_tree
in: query
description: The product category's include ancestors tree.
required: true
schema:
type: boolean
title: include_ancestors_tree
description: The product category's include ancestors tree.
- name: include_descendants_tree
in: query
description: The product category's include descendants tree.
required: true
schema:
type: boolean
title: include_descendants_tree
description: The product category's include descendants tree.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/product-categories/{id}'
tags:
- Product Categories
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/StoreProductCategoryResponse'
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/products:
get:
operationId: GetProducts
summary: List Products
description: Retrieve a list of products. The products can be filtered by fields such as `id`. The products can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: region_id
in: query
description: The product's region id.
required: false
schema:
type: string
title: region_id
description: The product's region id.
- name: $and
in: query
required: false
schema: {}
- name: $or
in: query
required: false
schema: {}
- name: variants
in: query
description: The product's variants.
required: false
schema:
type: object
description: The product's variants.
properties:
status:
type: array
description: The variant's status.
items:
type: string
enum:
- draft
- proposed
- published
- rejected
options:
type: object
description: The variant's options.
required:
- value
- option_id
properties:
value:
type: string
title: value
description: The option's value.
option_id:
type: string
title: option_id
description: The option's option id.
$and: {}
$or: {}
- name: q
in: query
description: The product's q.
required: false
schema:
type: string
title: q
description: The product's q.
- name: id
in: query
required: false
schema:
oneOf:
- type: string
title: id
description: The product's ID.
- type: array
description: The product's ID.
items:
type: string
title: id
description: The id's ID.
- name: title
in: query
description: The product's title.
required: true
schema:
type: string
title: title
description: The product's title.
- name: handle
in: query
description: The product's handle.
required: true
schema:
type: string
title: handle
description: The product's handle.
- name: is_giftcard
in: query
description: The product's is giftcard.
required: true
schema:
type: boolean
title: is_giftcard
description: The product's is giftcard.
- name: category_id
in: query
description: The product's category id.
required: true
schema:
type: array
description: The product's category id.
items:
type: string
title: category_id
description: The category id's details.
- name: sales_channel_id
in: query
description: The product's sales channel id.
required: true
schema:
type: array
description: The product's sales channel id.
items:
type: string
title: sales_channel_id
description: The sales channel id's details.
- name: collection_id
in: query
description: The product's collection id.
required: true
schema:
type: array
description: The product's collection id.
items:
type: string
title: collection_id
description: The collection id's details.
- name: tags
in: query
description: The product's tags.
required: false
schema:
type: array
description: The product's tags.
items:
type: string
title: tags
description: The tag's tags.
- name: type_id
in: query
description: The product's type id.
required: false
schema:
type: array
description: The product's type id.
items:
type: string
title: type_id
description: The type id's details.
- name: created_at
in: query
description: The product's created at.
required: false
schema:
type: object
description: The product's created at.
required:
- $eq
- $ne
- $in
- $nin
- $like
- $ilike
- $re
- $contains
- $gt
- $gte
- $lt
- $lte
properties:
$eq: {}
$ne: {}
$in: {}
$nin: {}
$like: {}
$ilike: {}
$re: {}
$contains: {}
$gt: {}
$gte: {}
$lt: {}
$lte: {}
- name: updated_at
in: query
description: The product's updated at.
required: false
schema:
type: object
description: The product's updated at.
required:
- $eq
- $ne
- $in
- $nin
- $like
- $ilike
- $re
- $contains
- $gt
- $gte
- $lt
- $lte
properties:
$eq: {}
$ne: {}
$in: {}
$nin: {}
$like: {}
$ilike: {}
$re: {}
$contains: {}
$gt: {}
$gte: {}
$lt: {}
$lte: {}
- name: deleted_at
in: query
description: The product's deleted at.
required: false
schema:
type: object
description: The product's deleted at.
required:
- $eq
- $ne
- $in
- $nin
- $like
- $ilike
- $re
- $contains
- $gt
- $gte
- $lt
- $lte
properties:
$eq: {}
$ne: {}
$in: {}
$nin: {}
$like: {}
$ilike: {}
$re: {}
$contains: {}
$gt: {}
$gte: {}
$lt: {}
$lte: {}
- name: country_code
in: query
description: The product's country code.
required: false
schema:
type: string
title: country_code
description: The product's country code.
- name: province
in: query
description: The product's province.
required: false
schema:
type: string
title: province
description: The product's province.
- name: cart_id
in: query
description: The product's cart id.
required: false
schema:
type: string
title: cart_id
description: The product's cart id.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/products'
tags:
- Products
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/products/{id}:
get:
operationId: GetProductsId
summary: Get a Product
description: Retrieve a product by its ID. You can expand the product's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The product's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
- name: region_id
in: query
description: The product's region id.
required: false
schema:
type: string
title: region_id
description: The product's region id.
- name: country_code
in: query
description: The product's country code.
required: false
schema:
type: string
title: country_code
description: The product's country code.
- name: province
in: query
description: The product's province.
required: false
schema:
type: string
title: province
description: The product's province.
- name: cart_id
in: query
description: The product's cart id.
required: false
schema:
type: string
title: cart_id
description: The product's cart id.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/products/{id}'
tags:
- Products
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/regions:
get:
operationId: GetRegions
summary: List Regions
description: Retrieve a list of regions. The regions can be filtered by fields such as `id`. The regions can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/regions'
tags:
- Regions
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/regions/{id}:
get:
operationId: GetRegionsId
summary: Get a Region
description: Retrieve a region by its ID. You can expand the region's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The region's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/regions/{id}'
tags:
- Regions
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/return:
post:
operationId: PostReturn
summary: Create Return
description: Create a return.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StorePostReturnsReqSchema'
x-codeSamples:
- lang: Shell
label: cURL
source: |-
curl -X POST '{backend_url}/store/return' \
-H 'Content-Type: application/json' \
--data-raw '{
"order_id": "{value}",
"items": [
{
"id": "id_XbfptxUVo2io9EI",
"quantity": 7916429753974784,
"reason_id": "{value}",
"note": "{value}"
}
],
"return_shipping": {
"option_id": "{value}",
"price": 1068364080349184
},
"note": "{value}",
"location_id": "{value}"
}'
tags:
- Return
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/return-reasons:
get:
operationId: GetReturnReasons
summary: List Return Reasons
description: Retrieve a list of return reasons. The return reasons can be filtered by fields such as `id`. The return reasons can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/return-reasons'
tags:
- Return Reasons
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/return-reasons/{id}:
get:
operationId: GetReturnReasonsId
summary: Get a Return Reason
description: Retrieve a return reason by its ID. You can expand the return reason's relations or select the fields that should be returned.
x-authenticated: false
parameters:
- name: id
in: path
description: The return reason's ID.
required: true
schema:
type: string
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/return-reasons/{id}'
tags:
- Return Reasons
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
/store/shipping-options:
get:
operationId: GetShippingOptions
summary: List Shipping Options
description: Retrieve a list of shipping options. The shipping options can be filtered by fields such as `id`. The shipping options can also be sorted or paginated.
x-authenticated: false
parameters:
- name: expand
in: query
description: Comma-separated relations that should be expanded in the returned data.
required: false
schema:
type: string
title: expand
description: Comma-separated relations that should be expanded in the returned data.
- name: fields
in: query
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
required: false
schema:
type: string
title: fields
description: Comma-separated fields that should be included in the returned data. if a field is prefixed with `+` it will be added to the default fields, using `-` will remove it from the default fields. without prefix it will replace the entire default fields.
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
- name: order
in: query
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
required: false
schema:
type: string
title: order
description: The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with `-`.
x-codeSamples:
- lang: Shell
label: cURL
source: curl '{backend_url}/store/shipping-options'
tags:
- Shipping Options
responses:
'400':
$ref: '#/components/responses/400_error'
'401':
$ref: '#/components/responses/unauthorized'
'404':
$ref: '#/components/responses/not_found_error'
'409':
$ref: '#/components/responses/invalid_state_error'
'422':
$ref: '#/components/responses/invalid_request_error'
'500':
$ref: '#/components/responses/500_error'
components:
responses:
default_error:
description: Default Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: unknown_error
message: An unknown error occurred.
type: unknown_error
invalid_state_error:
description: Invalid State Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: unknown_error
message: The request conflicted with another request. You may retry the request with the provided Idempotency-Key.
type: QueryRunnerAlreadyReleasedError
invalid_request_error:
description: Invalid Request Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: invalid_request_error
message: Discount with code TEST already exists.
type: duplicate_error
not_found_error:
description: Not Found Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
message: Entity with id 1 was not found
type: not_found
400_error:
description: Client Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
not_allowed:
$ref: '#/components/examples/not_allowed_error'
invalid_data:
$ref: '#/components/examples/invalid_data_error'
500_error:
description: Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
database:
$ref: '#/components/examples/database_error'
unexpected_state:
$ref: '#/components/examples/unexpected_state_error'
invalid_argument:
$ref: '#/components/examples/invalid_argument_error'
default_error:
$ref: '#/components/examples/default_error'
unauthorized:
description: User is not authorized. Must log in first
content:
text/plain:
schema:
type: string
default: Unauthorized
example: Unauthorized
incorrect_credentials:
description: User does not exist or incorrect credentials
content:
text/plain:
schema:
type: string
default: Unauthorized
example: Unauthorized
examples:
not_allowed_error:
summary: Not Allowed Error
value:
message: Discount must be set to dynamic
type: not_allowed
invalid_data_error:
summary: Invalid Data Error
value:
message: first_name must be a string
type: invalid_data
multiple_errors:
summary: Multiple Errors
value:
message: Provided request body contains errors. Please check the data and retry the request
errors:
- message: first_name must be a string
type: invalid_data
- message: Discount must be set to dynamic
type: not_allowed
database_error:
summary: Database Error
value:
code: api_error
message: An error occured while hashing password
type: database_error
unexpected_state_error:
summary: Unexpected State Error
value:
message: cart.total must be defined
type: unexpected_state
invalid_argument_error:
summary: Invalid Argument Error
value:
message: cart.total must be defined
type: unexpected_state
default_error:
summary: Default Error
value:
code: unknown_error
message: An unknown error occurred.
type: unknown_error
securitySchemes:
jwt_token:
type: http
x-displayName: JWT Token
scheme: bearer
cookie_auth:
type: apiKey
x-displayName: Cookie Session ID
in: cookie
name: connect.sid
description: |
Use a cookie session to send authenticated requests.
### How to Obtain the Cookie Session
If you're sending requests through a browser, using JS Client, or using tools like Postman, the cookie session should be automatically set when the customer is logged in.
If you're sending requests using cURL, you must set the Session ID in the cookie manually.
To do that, send a request to [authenticate the customer](#tag/Auth/operation/PostAuth) and pass the cURL option `-v`:
```bash
curl -v --location --request POST 'https://medusa-url.com/store/auth' \
--header 'Content-Type: application/json' \
--data-raw '{
"email": "user@example.com",
"password": "supersecret"
}'
```
The headers will be logged in the terminal as well as the response. You should find in the headers a Cookie header similar to this:
```bash
Set-Cookie: connect.sid=s%3A2Bu8BkaP9JUfHu9rG59G16Ma0QZf6Gj1.WT549XqX37PN8n0OecqnMCq798eLjZC5IT7yiDCBHPM;
```
Copy the value after `connect.sid` (without the `;` at the end) and pass it as a cookie in subsequent requests as the following:
```bash
curl --location --request GET 'https://medusa-url.com/store/customers/me/orders' \
--header 'Cookie: connect.sid={sid}'
```
Where `{sid}` is the value of `connect.sid` that you copied.
schemas:
AdminArchiveOrder:
type: object
description: SUMMARY
x-schemaName: AdminArchiveOrder
required:
- order_id
properties:
order_id:
type: string
title: order_id
description: The order's order id.
AdminBatchProductRequest:
type: object
description: SUMMARY
x-schemaName: AdminBatchProductRequest
properties:
create:
type: array
description: The product's create.
items:
$ref: '#/components/schemas/AdminCreateProduct'
update:
type: array
description: The product's update.
items:
$ref: '#/components/schemas/AdminUpdateProduct'
delete:
type: array
description: The product's delete.
items:
type: string
title: delete
description: The delete's details.
AdminBatchProductResponse:
type: object
description: SUMMARY
x-schemaName: AdminBatchProductResponse
required:
- created
- updated
- deleted
properties:
created:
type: array
description: The product's created.
items:
$ref: '#/components/schemas/AdminProduct'
updated:
type: array
description: The product's updated.
items:
$ref: '#/components/schemas/AdminProduct'
deleted:
type: object
description: The product's deleted.
required:
- ids
- object
- deleted
properties:
ids:
type: array
description: The deleted's ids.
items:
type: string
title: ids
description: The id's ids.
object:
type: string
title: object
description: The deleted's object.
deleted:
type: boolean
title: deleted
description: The deleted's details.
AdminBatchProductVariantRequest:
type: object
description: SUMMARY
x-schemaName: AdminBatchProductVariantRequest
properties:
create:
type: array
description: The product's create.
items:
$ref: '#/components/schemas/AdminCreateProductVariant'
update:
type: array
description: The product's update.
items:
$ref: '#/components/schemas/AdminUpdateProductVariant'
delete:
type: array
description: The product's delete.
items:
type: string
title: delete
description: The delete's details.
AdminBatchProductVariantResponse:
type: object
description: SUMMARY
x-schemaName: AdminBatchProductVariantResponse
required:
- created
- updated
- deleted
properties:
created:
type: array
description: The product's created.
items:
$ref: '#/components/schemas/AdminProductVariant'
updated:
type: array
description: The product's updated.
items:
$ref: '#/components/schemas/AdminProductVariant'
deleted:
type: object
description: The product's deleted.
required:
- ids
- object
- deleted
properties:
ids:
type: array
description: The deleted's ids.
items:
type: string
title: ids
description: The id's ids.
object:
type: string
title: object
description: The deleted's object.
deleted:
type: boolean
title: deleted
description: The deleted's details.
AdminCancelFulfillment:
type: object
description: SUMMARY
x-schemaName: AdminCancelFulfillment
AdminCollection:
type: object
description: The parent's collection.
x-schemaName: AdminCollection
required:
- id
- title
- handle
- created_at
- updated_at
- deleted_at
- metadata
properties:
id:
type: string
title: id
description: The collection's ID.
title:
type: string
title: title
description: The collection's title.
handle:
type: string
title: handle
description: The collection's handle.
created_at:
type: string
format: date-time
title: created_at
description: The collection's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The collection's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The collection's deleted at.
products:
type: array
description: The collection's products.
items:
type: object
metadata:
type: object
description: The collection's metadata.
AdminCompleteOrder:
type: object
description: SUMMARY
x-schemaName: AdminCompleteOrder
required:
- order_id
properties:
order_id:
type: string
title: order_id
description: The order's order id.
AdminCreateApiKey:
type: object
description: SUMMARY
x-schemaName: AdminCreateApiKey
required:
- title
- type
properties:
title:
type: string
title: title
description: The api key's title.
type:
type: string
enum:
- publishable
- secret
AdminCreateCollection:
type: object
description: SUMMARY
x-schemaName: AdminCreateCollection
required:
- title
- metadata
properties:
title:
type: string
title: title
description: The collection's title.
handle:
type: string
title: handle
description: The collection's handle.
metadata:
type: object
description: The collection's metadata.
AdminCreateCustomer:
type: object
description: SUMMARY
x-schemaName: AdminCreateCustomer
required:
- email
- company_name
- first_name
- last_name
- phone
- metadata
properties:
email:
type: string
title: email
description: The customer's email.
format: email
company_name:
type: string
title: company_name
description: The customer's company name.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
phone:
type: string
title: phone
description: The customer's phone.
metadata:
type: object
description: The customer's metadata.
AdminCreateCustomerAddress:
type: object
description: SUMMARY
x-schemaName: AdminCreateCustomerAddress
required:
- address_name
- company
- first_name
- last_name
- address_1
- address_2
- city
- country_code
- province
- postal_code
- phone
- metadata
properties:
address_name:
type: string
title: address_name
description: The customer's address name.
is_default_shipping:
type: boolean
title: is_default_shipping
description: The customer's is default shipping.
is_default_billing:
type: boolean
title: is_default_billing
description: The customer's is default billing.
company:
type: string
title: company
description: The customer's company.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
address_1:
type: string
title: address_1
description: The customer's address 1.
address_2:
type: string
title: address_2
description: The customer's address 2.
city:
type: string
title: city
description: The customer's city.
country_code:
type: string
title: country_code
description: The customer's country code.
province:
type: string
title: province
description: The customer's province.
postal_code:
type: string
title: postal_code
description: The customer's postal code.
phone:
type: string
title: phone
description: The customer's phone.
metadata:
type: object
description: The customer's metadata.
AdminCreateCustomerGroup:
type: object
description: SUMMARY
x-schemaName: AdminCreateCustomerGroup
required:
- name
- metadata
properties:
name:
type: string
title: name
description: The customer group's name.
metadata:
type: object
description: The customer group's metadata.
AdminCreateFulfillment:
type: object
description: SUMMARY
x-schemaName: AdminCreateFulfillment
required:
- location_id
- provider_id
- delivery_address
- items
- labels
- order
- order_id
- shipping_option_id
- data
- packed_at
- shipped_at
- delivered_at
- canceled_at
- metadata
properties:
location_id:
type: string
title: location_id
description: The fulfillment's location id.
provider_id:
type: string
title: provider_id
description: The fulfillment's provider id.
delivery_address:
type: object
description: The fulfillment's delivery address.
required:
- first_name
- last_name
- phone
- company
- address_1
- address_2
- city
- country_code
- province
- postal_code
- metadata
properties:
first_name:
type: string
title: first_name
description: The delivery address's first name.
last_name:
type: string
title: last_name
description: The delivery address's last name.
phone:
type: string
title: phone
description: The delivery address's phone.
company:
type: string
title: company
description: The delivery address's company.
address_1:
type: string
title: address_1
description: The delivery address's address 1.
address_2:
type: string
title: address_2
description: The delivery address's address 2.
city:
type: string
title: city
description: The delivery address's city.
country_code:
type: string
title: country_code
description: The delivery address's country code.
province:
type: string
title: province
description: The delivery address's province.
postal_code:
type: string
title: postal_code
description: The delivery address's postal code.
metadata:
type: object
description: The delivery address's metadata.
items:
type: array
description: The fulfillment's items.
items:
type: object
description: The item's items.
required:
- title
- sku
- quantity
- barcode
- line_item_id
- inventory_item_id
properties:
title:
type: string
title: title
description: The item's title.
sku:
type: string
title: sku
description: The item's sku.
quantity:
type: number
title: quantity
description: The item's quantity.
barcode:
type: string
title: barcode
description: The item's barcode.
line_item_id:
type: string
title: line_item_id
description: The item's line item id.
inventory_item_id:
type: string
title: inventory_item_id
description: The item's inventory item id.
labels:
type: array
description: The fulfillment's labels.
items:
type: object
description: The label's labels.
required:
- tracking_number
- tracking_url
- label_url
properties:
tracking_number:
type: string
title: tracking_number
description: The label's tracking number.
tracking_url:
type: string
title: tracking_url
description: The label's tracking url.
label_url:
type: string
title: label_url
description: The label's label url.
order:
type: object
description: The fulfillment's order.
order_id:
type: string
title: order_id
description: The fulfillment's order id.
shipping_option_id:
type: string
title: shipping_option_id
description: The fulfillment's shipping option id.
data:
type: object
description: The fulfillment's data.
packed_at:
type: string
title: packed_at
description: The fulfillment's packed at.
format: date-time
shipped_at:
type: string
title: shipped_at
description: The fulfillment's shipped at.
format: date-time
delivered_at:
type: string
title: delivered_at
description: The fulfillment's delivered at.
format: date-time
canceled_at:
type: string
title: canceled_at
description: The fulfillment's canceled at.
format: date-time
metadata:
type: object
description: The fulfillment's metadata.
AdminCreatePriceList:
type: object
description: SUMMARY
x-schemaName: AdminCreatePriceList
required:
- title
- description
- starts_at
- ends_at
properties:
title:
type: string
title: title
description: The price list's title.
description:
type: string
title: description
description: The price list's description.
starts_at:
type: string
title: starts_at
description: The price list's starts at.
ends_at:
type: string
title: ends_at
description: The price list's ends at.
status:
type: string
enum:
- active
- draft
type:
type: string
enum:
- sale
- override
rules:
type: object
description: The price list's rules.
prices:
type: array
description: The price list's prices.
items:
type: object
description: The price's prices.
required:
- currency_code
- amount
- variant_id
- min_quantity
- max_quantity
properties:
currency_code:
type: string
title: currency_code
description: The price's currency code.
amount:
type: number
title: amount
description: The price's amount.
variant_id:
type: string
title: variant_id
description: The price's variant id.
min_quantity:
type: number
title: min_quantity
description: The price's min quantity.
max_quantity:
type: number
title: max_quantity
description: The price's max quantity.
rules:
type: object
description: The price's rules.
AdminCreatePricePreference:
type: object
description: SUMMARY
x-schemaName: AdminCreatePricePreference
properties:
attribute:
type: string
title: attribute
description: The price preference's attribute.
value:
type: string
title: value
description: The price preference's value.
is_tax_inclusive:
type: boolean
title: is_tax_inclusive
description: The price preference's is tax inclusive.
AdminCreateProduct:
type: object
description: The create's details.
x-schemaName: AdminCreateProduct
required:
- title
properties:
title:
type: string
title: title
description: The create's title.
subtitle:
type: string
title: subtitle
description: The create's subtitle.
description:
type: string
title: description
description: The create's description.
is_giftcard:
type: boolean
title: is_giftcard
description: The create's is giftcard.
discountable:
type: boolean
title: discountable
description: The create's discountable.
images:
type: array
description: The create's images.
items:
type: object
description: The image's images.
required:
- url
properties:
url:
type: string
title: url
description: The image's url.
thumbnail:
type: string
title: thumbnail
description: The create's thumbnail.
handle:
type: string
title: handle
description: The create's handle.
status:
type: string
enum:
- draft
- proposed
- published
- rejected
type_id:
type: string
title: type_id
description: The create's type id.
collection_id:
type: string
title: collection_id
description: The create's collection id.
categories:
type: array
description: The create's categories.
items:
type: object
description: The category's categories.
required:
- id
properties:
id:
type: string
title: id
description: The category's ID.
tags:
type: array
description: The create's tags.
items:
type: object
description: The tag's tags.
properties:
id:
type: string
title: id
description: The tag's ID.
value:
type: string
title: value
description: The tag's value.
options:
type: array
description: The create's options.
items:
$ref: '#/components/schemas/AdminCreateProductOption'
variants:
type: array
description: The create's variants.
items:
$ref: '#/components/schemas/AdminCreateProductVariant'
sales_channels:
type: array
description: The create's sales channels.
items:
type: object
description: The sales channel's sales channels.
required:
- id
properties:
id:
type: string
title: id
description: The sales channel's ID.
weight:
type: number
title: weight
description: The create's weight.
length:
type: number
title: length
description: The create's length.
height:
type: number
title: height
description: The create's height.
width:
type: number
title: width
description: The create's width.
hs_code:
type: string
title: hs_code
description: The create's hs code.
mid_code:
type: string
title: mid_code
description: The create's mid code.
origin_country:
type: string
title: origin_country
description: The create's origin country.
material:
type: string
title: material
description: The create's material.
metadata:
type: object
description: The create's metadata.
AdminCreateProductOption:
type: object
description: SUMMARY
x-schemaName: AdminCreateProductOption
required:
- title
- values
properties:
title:
type: string
title: title
description: The product's title.
values:
type: array
description: The product's values.
items:
type: string
title: values
description: The value's values.
AdminCreateProductVariant:
type: object
description: The create's details.
x-schemaName: AdminCreateProductVariant
required:
- title
- prices
properties:
title:
type: string
title: title
description: The create's title.
sku:
type: string
title: sku
description: The create's sku.
ean:
type: string
title: ean
description: The create's ean.
upc:
type: string
title: upc
description: The create's upc.
barcode:
type: string
title: barcode
description: The create's barcode.
hs_code:
type: string
title: hs_code
description: The create's hs code.
mid_code:
type: string
title: mid_code
description: The create's mid code.
allow_backorder:
type: boolean
title: allow_backorder
description: The create's allow backorder.
manage_inventory:
type: boolean
title: manage_inventory
description: The create's manage inventory.
variant_rank:
type: number
title: variant_rank
description: The create's variant rank.
weight:
type: number
title: weight
description: The create's weight.
length:
type: number
title: length
description: The create's length.
height:
type: number
title: height
description: The create's height.
width:
type: number
title: width
description: The create's width.
origin_country:
type: string
title: origin_country
description: The create's origin country.
material:
type: string
title: material
description: The create's material.
metadata:
type: object
description: The create's metadata.
prices:
type: array
description: The create's prices.
items:
$ref: '#/components/schemas/AdminCreateProductVariantPrice'
options:
type: object
description: The create's options.
AdminCreateProductVariantPrice:
type: object
description: The price's prices.
x-schemaName: AdminCreateProductVariantPrice
required:
- currency_code
- amount
properties:
currency_code:
type: string
title: currency_code
description: The price's currency code.
amount:
type: number
title: amount
description: The price's amount.
min_quantity:
type: number
title: min_quantity
description: The price's min quantity.
max_quantity:
type: number
title: max_quantity
description: The price's max quantity.
rules:
type: object
description: The price's rules.
AdminCreateSalesChannel:
type: object
description: SUMMARY
x-schemaName: AdminCreateSalesChannel
required:
- name
- description
- metadata
properties:
name:
type: string
title: name
description: The sales channel's name.
description:
type: string
title: description
description: The sales channel's description.
is_disabled:
type: boolean
title: is_disabled
description: The sales channel's is disabled.
metadata:
type: object
description: The sales channel's metadata.
AdminCreateShipment:
type: object
description: SUMMARY
x-schemaName: AdminCreateShipment
required:
- labels
properties:
labels:
type: array
description: The fulfillment's labels.
items:
type: object
description: The label's labels.
required:
- tracking_number
- tracking_url
- label_url
properties:
tracking_number:
type: string
title: tracking_number
description: The label's tracking number.
tracking_url:
type: string
title: tracking_url
description: The label's tracking url.
label_url:
type: string
title: label_url
description: The label's label url.
AdminCreateStockLocation:
type: object
description: SUMMARY
x-schemaName: AdminCreateStockLocation
required:
- name
- address_id
- metadata
properties:
name:
type: string
title: name
description: The stock location's name.
address:
type: object
description: The stock location's address.
required:
- address_1
- address_2
- company
- city
- country_code
- phone
- postal_code
- province
properties:
address_1:
type: string
title: address_1
description: The address's address 1.
address_2:
type: string
title: address_2
description: The address's address 2.
company:
type: string
title: company
description: The address's company.
city:
type: string
title: city
description: The address's city.
country_code:
type: string
title: country_code
description: The address's country code.
phone:
type: string
title: phone
description: The address's phone.
postal_code:
type: string
title: postal_code
description: The address's postal code.
province:
type: string
title: province
description: The address's province.
address_id:
type: string
title: address_id
description: The stock location's address id.
metadata:
type: object
description: The stock location's metadata.
AdminCreateTaxRate:
type: object
description: SUMMARY
x-schemaName: AdminCreateTaxRate
required:
- name
- tax_region_id
- metadata
properties:
rate:
type: number
title: rate
description: The tax rate's rate.
code:
type: string
title: code
description: The tax rate's code.
rules:
type: array
description: The tax rate's rules.
items:
type: object
description: The rule's rules.
required:
- reference
- reference_id
properties:
reference:
type: string
title: reference
description: The rule's reference.
reference_id:
type: string
title: reference_id
description: The rule's reference id.
name:
type: string
title: name
description: The tax rate's name.
is_default:
type: boolean
title: is_default
description: The tax rate's is default.
is_combinable:
type: boolean
title: is_combinable
description: The tax rate's is combinable.
tax_region_id:
type: string
title: tax_region_id
description: The tax rate's tax region id.
metadata:
type: object
description: The tax rate's metadata.
AdminCreateTaxRateRule:
type: object
description: SUMMARY
x-schemaName: AdminCreateTaxRateRule
required:
- reference
- reference_id
properties:
reference:
type: string
title: reference
description: The tax rate's reference.
reference_id:
type: string
title: reference_id
description: The tax rate's reference id.
AdminCreateTaxRegion:
type: object
description: SUMMARY
x-schemaName: AdminCreateTaxRegion
required:
- country_code
- province_code
- parent_id
- metadata
properties:
country_code:
type: string
title: country_code
description: The tax region's country code.
province_code:
type: string
title: province_code
description: The tax region's province code.
parent_id:
type: string
title: parent_id
description: The tax region's parent id.
default_tax_rate:
type: object
description: The tax region's default tax rate.
required:
- name
- metadata
properties:
rate:
type: number
title: rate
description: The default tax rate's rate.
code:
type: string
title: code
description: The default tax rate's code.
name:
type: string
title: name
description: The default tax rate's name.
is_combinable:
type: boolean
title: is_combinable
description: The default tax rate's is combinable.
metadata:
type: object
description: The default tax rate's metadata.
metadata:
type: object
description: The tax region's metadata.
AdminCreateVariantInventoryItem:
type: object
description: SUMMARY
x-schemaName: AdminCreateVariantInventoryItem
required:
- required_quantity
- inventory_item_id
properties:
required_quantity:
type: number
title: required_quantity
description: The product's required quantity.
inventory_item_id:
type: string
title: inventory_item_id
description: The product's inventory item id.
AdminCreateWorkflowsAsyncResponse:
type: object
description: SUMMARY
x-schemaName: AdminCreateWorkflowsAsyncResponse
required:
- transaction_id
- step_id
properties:
transaction_id:
type: string
title: transaction_id
description: The workflows execution's transaction id.
step_id:
type: string
title: step_id
description: The workflows execution's step id.
response: {}
compensate_input: {}
action:
type: string
enum:
- invoke
- compensate
AdminCreateWorkflowsRun:
type: object
description: SUMMARY
x-schemaName: AdminCreateWorkflowsRun
properties:
input: {}
transaction_id:
type: string
title: transaction_id
description: The workflows execution's transaction id.
AdminCustomer:
type: object
description: The customer's details.
x-schemaName: AdminCustomer
required:
- has_account
- id
- email
- default_billing_address_id
- default_shipping_address_id
- company_name
- first_name
- last_name
- addresses
properties:
has_account:
type: boolean
title: has_account
description: The customer's has account.
groups:
type: array
description: The customer's groups.
items:
$ref: '#/components/schemas/AdminCustomerGroup'
id:
type: string
title: id
description: The customer's ID.
email:
type: string
title: email
description: The customer's email.
format: email
default_billing_address_id:
type: string
title: default_billing_address_id
description: The customer's default billing address id.
default_shipping_address_id:
type: string
title: default_shipping_address_id
description: The customer's default shipping address id.
company_name:
type: string
title: company_name
description: The customer's company name.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
addresses:
type: array
description: The customer's addresses.
items:
$ref: '#/components/schemas/BaseCustomerAddress'
phone:
type: string
title: phone
description: The customer's phone.
metadata:
type: object
description: The customer's metadata.
created_by:
type: string
title: created_by
description: The customer's created by.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The customer's deleted at.
created_at:
type: string
format: date-time
title: created_at
description: The customer's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The customer's updated at.
AdminCustomerGroup:
type: object
description: The group's groups.
x-schemaName: AdminCustomerGroup
required:
- id
- name
- customers
- metadata
- created_at
- updated_at
properties:
id:
type: string
title: id
description: The group's ID.
name:
type: string
title: name
description: The group's name.
customers:
type: array
description: The group's customers.
items:
$ref: '#/components/schemas/BaseCustomer'
metadata:
type: object
description: The group's metadata.
created_at:
type: string
format: date-time
title: created_at
description: The group's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The group's updated at.
AdminFulfillmentProvider:
type: object
description: The shipping option's provider.
x-schemaName: AdminFulfillmentProvider
AdminFulfillmentSet:
type: object
description: The fulfillment set's details.
x-schemaName: AdminFulfillmentSet
required:
- id
- name
- type
- service_zones
- created_at
- updated_at
- deleted_at
properties:
id:
type: string
title: id
description: The fulfillment set's ID.
name:
type: string
title: name
description: The fulfillment set's name.
type:
type: string
title: type
description: The fulfillment set's type.
service_zones:
type: array
description: The fulfillment set's service zones.
items:
$ref: '#/components/schemas/AdminServiceZone'
created_at:
type: string
format: date-time
title: created_at
description: The fulfillment set's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The fulfillment set's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The fulfillment set's deleted at.
AdminFulfillmentSetDeleteResponse:
type: object
description: SUMMARY
x-schemaName: AdminFulfillmentSetDeleteResponse
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The fulfillment set's ID.
object:
type: string
title: object
description: The fulfillment set's object.
default: fulfillment_set
deleted:
type: boolean
title: deleted
description: The fulfillment set's deleted.
parent:
type: object
description: The fulfillment set's parent.
AdminFulfillmentSetResponse:
type: object
description: SUMMARY
x-schemaName: AdminFulfillmentSetResponse
required:
- fulfillment_set
properties:
fulfillment_set:
$ref: '#/components/schemas/AdminFulfillmentSet'
AdminGeoZone:
type: object
description: The geo zone's geo zones.
x-schemaName: AdminGeoZone
AdminGetUploadParams:
type: object
description: SUMMARY
x-schemaName: AdminGetUploadParams
properties:
fields:
type: string
title: fields
description: The upload's fields.
AdminOrderCancelFulfillment:
type: object
description: SUMMARY
x-schemaName: AdminOrderCancelFulfillment
properties:
no_notification:
type: boolean
title: no_notification
description: The order's no notification.
AdminOrderCreateFulfillment:
type: object
description: SUMMARY
x-schemaName: AdminOrderCreateFulfillment
required:
- items
- location_id
- metadata
properties:
items:
type: array
description: The order's items.
items:
type: object
description: The item's items.
required:
- id
- quantity
properties:
id:
type: string
title: id
description: The item's ID.
quantity:
type: number
title: quantity
description: The item's quantity.
location_id:
type: string
title: location_id
description: The order's location id.
no_notification:
type: boolean
title: no_notification
description: The order's no notification.
metadata:
type: object
description: The order's metadata.
AdminOrderCreateShipment:
type: object
description: SUMMARY
x-schemaName: AdminOrderCreateShipment
required:
- items
- metadata
properties:
items:
type: array
description: The order's items.
items:
type: object
description: The item's items.
required:
- id
- quantity
properties:
id:
type: string
title: id
description: The item's ID.
quantity:
type: number
title: quantity
description: The item's quantity.
labels:
type: array
description: The order's labels.
items:
type: object
description: The label's labels.
required:
- tracking_number
- tracking_url
- label_url
properties:
tracking_number:
type: string
title: tracking_number
description: The label's tracking number.
tracking_url:
type: string
title: tracking_url
description: The label's tracking url.
label_url:
type: string
title: label_url
description: The label's label url.
no_notification:
type: boolean
title: no_notification
description: The order's no notification.
metadata:
type: object
description: The order's metadata.
AdminPostReceiveReturnsReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReceiveReturnsReqSchema
required:
- return_id
- items
- internal_note
properties:
return_id:
type: string
title: return_id
description: The return's return id.
items:
type: array
description: The return's items.
items:
type: object
description: The item's items.
required:
- id
- quantity
- reason_id
properties:
id:
type: string
title: id
description: The item's ID.
quantity:
type: number
title: quantity
description: The item's quantity.
reason_id:
type: string
title: reason_id
description: The item's reason id.
note:
type: string
title: note
description: The item's note.
internal_note:
type: string
title: internal_note
description: The return's internal note.
AdminPostReturnsConfirmRequestReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReturnsConfirmRequestReqSchema
properties:
no_notification:
type: boolean
title: no_notification
description: The return's no notification.
AdminPostReturnsReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReturnsReqSchema
required:
- order_id
- metadata
properties:
order_id:
type: string
title: order_id
description: The return's order id.
location_id:
type: string
title: location_id
description: The return's location id.
description:
type: string
title: description
description: The return's description.
internal_note:
type: string
title: internal_note
description: The return's internal note.
no_notification:
type: boolean
title: no_notification
description: The return's no notification.
metadata:
type: object
description: The return's metadata.
AdminPostReturnsRequestItemsActionReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReturnsRequestItemsActionReqSchema
properties:
quantity:
type: number
title: quantity
description: The return's quantity.
internal_note:
type: string
title: internal_note
description: The return's internal note.
AdminPostReturnsRequestItemsReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReturnsRequestItemsReqSchema
properties:
items:
type: array
description: The return's items.
items:
type: object
description: The item's items.
required:
- id
- quantity
properties:
id:
type: string
title: id
description: The item's ID.
quantity:
type: number
title: quantity
description: The item's quantity.
description:
type: string
title: description
description: The item's description.
internal_note:
type: string
title: internal_note
description: The item's internal note.
metadata:
type: object
description: The item's metadata.
AdminPostReturnsShippingActionReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReturnsShippingActionReqSchema
properties:
custom_price:
type: number
title: custom_price
description: The return's custom price.
internal_note:
type: string
title: internal_note
description: The return's internal note.
metadata:
type: object
description: The return's metadata.
AdminPostReturnsShippingReqSchema:
type: object
description: SUMMARY
x-schemaName: AdminPostReturnsShippingReqSchema
required:
- shipping_option_id
properties:
shipping_option_id:
type: string
title: shipping_option_id
description: The return's shipping option id.
custom_price:
type: number
title: custom_price
description: The return's custom price.
description:
type: string
title: description
description: The return's description.
internal_note:
type: string
title: internal_note
description: The return's internal note.
metadata:
type: object
description: The return's metadata.
AdminPrice:
type: object
description: The price's prices.
x-schemaName: AdminPrice
required:
- id
- title
- currency_code
- amount
- raw_amount
- min_quantity
- max_quantity
- price_set_id
- created_at
- updated_at
- deleted_at
properties:
id:
type: string
title: id
description: The price's ID.
title:
type: string
title: title
description: The price's title.
currency_code:
type: string
title: currency_code
description: The price's currency code.
amount:
type: number
title: amount
description: The price's amount.
raw_amount:
type: object
description: The price's raw amount.
min_quantity:
type: number
title: min_quantity
description: The price's min quantity.
max_quantity:
type: number
title: max_quantity
description: The price's max quantity.
price_set_id:
type: string
title: price_set_id
description: The price's price set id.
created_at:
type: string
format: date-time
title: created_at
description: The price's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The price's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The price's deleted at.
AdminProduct:
type: object
description: The product's parent.
x-schemaName: AdminProduct
required:
- type
- title
- status
- length
- options
- description
- id
- handle
- hs_code
- weight
- height
- width
- origin_country
- mid_code
- material
- thumbnail
- created_at
- updated_at
- deleted_at
- subtitle
- is_giftcard
- collection_id
- type_id
- images
- discountable
- external_id
properties:
collection:
$ref: '#/components/schemas/AdminCollection'
categories:
type: array
description: The parent's categories.
items:
$ref: '#/components/schemas/AdminProductCategory'
sales_channels:
type: array
description: The parent's sales channels.
items:
$ref: '#/components/schemas/AdminSalesChannel'
variants:
type: array
description: The parent's variants.
items:
$ref: '#/components/schemas/AdminProductVariant'
type:
type: object
tags:
type: array
description: The parent's tags.
items:
$ref: '#/components/schemas/AdminProductTag'
title:
type: string
title: title
description: The parent's title.
status:
type: string
enum:
- draft
- proposed
- published
- rejected
length:
type: number
title: length
description: The parent's length.
options:
type: array
description: The parent's options.
items:
$ref: '#/components/schemas/BaseProductOption'
description:
type: string
title: description
description: The parent's description.
id:
type: string
title: id
description: The parent's ID.
handle:
type: string
title: handle
description: The parent's handle.
metadata:
type: object
description: The parent's metadata.
hs_code:
type: string
title: hs_code
description: The parent's hs code.
weight:
type: number
title: weight
description: The parent's weight.
height:
type: number
title: height
description: The parent's height.
width:
type: number
title: width
description: The parent's width.
origin_country:
type: string
title: origin_country
description: The parent's origin country.
mid_code:
type: string
title: mid_code
description: The parent's mid code.
material:
type: string
title: material
description: The parent's material.
thumbnail:
type: string
title: thumbnail
description: The parent's thumbnail.
created_at:
type: string
format: date-time
title: created_at
description: The parent's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The parent's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The parent's deleted at.
subtitle:
type: string
title: subtitle
description: The parent's subtitle.
is_giftcard:
type: boolean
title: is_giftcard
description: The parent's is giftcard.
collection_id:
type: string
title: collection_id
description: The parent's collection id.
type_id:
type: string
title: type_id
description: The parent's type id.
images:
type: array
description: The parent's images.
items:
$ref: '#/components/schemas/BaseProductImage'
discountable:
type: boolean
title: discountable
description: The parent's discountable.
external_id:
type: string
title: external_id
description: The parent's external id.
AdminProductCategory:
type: object
description: The category's categories.
x-schemaName: AdminProductCategory
required:
- category_children
- parent_category
- name
- description
- id
- handle
- created_at
- updated_at
- deleted_at
- parent_category_id
- is_internal
- is_active
- rank
properties:
category_children:
type: array
description: The category's category children.
items:
type: object
parent_category:
type: object
products:
type: array
description: The category's products.
items:
type: object
name:
type: string
title: name
description: The category's name.
description:
type: string
title: description
description: The category's description.
id:
type: string
title: id
description: The category's ID.
handle:
type: string
title: handle
description: The category's handle.
created_at:
type: string
format: date-time
title: created_at
description: The category's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The category's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The category's deleted at.
parent_category_id:
type: string
title: parent_category_id
description: The category's parent category id.
is_internal:
type: boolean
title: is_internal
description: The category's is internal.
is_active:
type: boolean
title: is_active
description: The category's is active.
rank:
type: number
title: rank
description: The category's rank.
AdminProductCategoryListResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductCategoryListResponse
required:
- limit
- offset
- count
- product_categories
properties:
limit:
type: number
title: limit
description: The product category's limit.
offset:
type: number
title: offset
description: The product category's offset.
count:
type: number
title: count
description: The product category's count.
product_categories:
type: array
description: The product category's product categories.
items:
$ref: '#/components/schemas/AdminProductCategory'
AdminProductCategoryResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductCategoryResponse
required:
- product_category
properties:
product_category:
$ref: '#/components/schemas/AdminProductCategory'
AdminProductDeleteResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductDeleteResponse
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The product's ID.
object:
type: string
title: object
description: The product's object.
default: product
deleted:
type: boolean
title: deleted
description: The product's deleted.
parent:
type: object
description: The product's parent.
AdminProductOption:
type: object
description: The product's product option.
x-schemaName: AdminProductOption
required:
- id
- title
properties:
id:
type: string
title: id
description: The product option's ID.
title:
type: string
title: title
description: The product option's title.
product:
$ref: '#/components/schemas/BaseProduct'
product_id:
type: string
title: product_id
description: The product option's product id.
values:
type: array
description: The product option's values.
items:
$ref: '#/components/schemas/BaseProductOptionValue'
metadata:
type: object
description: The product option's metadata.
created_at:
type: string
format: date-time
title: created_at
description: The product option's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The product option's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The product option's deleted at.
AdminProductOptionDeleteResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductOptionDeleteResponse
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The product's ID.
object:
type: string
title: object
description: The product's object.
default: product_option
deleted:
type: boolean
title: deleted
description: The product's deleted.
parent:
$ref: '#/components/schemas/AdminProduct'
AdminProductOptionResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductOptionResponse
required:
- product_option
properties:
product_option:
$ref: '#/components/schemas/AdminProductOption'
AdminProductResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductResponse
required:
- product
properties:
product:
$ref: '#/components/schemas/AdminProduct'
AdminProductTag:
type: object
description: The tag's tags.
x-schemaName: AdminProductTag
required:
- id
- value
- created_at
- updated_at
properties:
id:
type: string
title: id
description: The tag's ID.
value:
type: string
title: value
description: The tag's value.
created_at:
type: string
format: date-time
title: created_at
description: The tag's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The tag's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The tag's deleted at.
metadata:
type: object
description: The tag's metadata.
AdminProductVariant:
type: object
description: The updated's details.
x-schemaName: AdminProductVariant
required:
- prices
- id
- title
- sku
- barcode
- ean
- upc
- allow_backorder
- manage_inventory
- hs_code
- origin_country
- mid_code
- material
- weight
- length
- height
- width
- options
- created_at
- updated_at
- deleted_at
properties:
prices:
type: array
description: The updated's prices.
items:
$ref: '#/components/schemas/AdminPrice'
id:
type: string
title: id
description: The updated's ID.
title:
type: string
title: title
description: The updated's title.
sku:
type: string
title: sku
description: The updated's sku.
barcode:
type: string
title: barcode
description: The updated's barcode.
ean:
type: string
title: ean
description: The updated's ean.
upc:
type: string
title: upc
description: The updated's upc.
allow_backorder:
type: boolean
title: allow_backorder
description: The updated's allow backorder.
manage_inventory:
type: boolean
title: manage_inventory
description: The updated's manage inventory.
hs_code:
type: string
title: hs_code
description: The updated's hs code.
origin_country:
type: string
title: origin_country
description: The updated's origin country.
mid_code:
type: string
title: mid_code
description: The updated's mid code.
material:
type: string
title: material
description: The updated's material.
weight:
type: number
title: weight
description: The updated's weight.
length:
type: number
title: length
description: The updated's length.
height:
type: number
title: height
description: The updated's height.
width:
type: number
title: width
description: The updated's width.
variant_rank:
type: number
title: variant_rank
description: The updated's variant rank.
options:
type: array
description: The updated's options.
items:
$ref: '#/components/schemas/BaseProductOptionValue'
product:
$ref: '#/components/schemas/BaseProduct'
product_id:
type: string
title: product_id
description: The updated's product id.
calculated_price:
$ref: '#/components/schemas/BaseCalculatedPriceSet'
created_at:
type: string
format: date-time
title: created_at
description: The updated's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The updated's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The updated's deleted at.
metadata:
type: object
description: The updated's metadata.
AdminProductVariantDeleteResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductVariantDeleteResponse
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The product's ID.
object:
type: string
title: object
description: The product's object.
default: variant
deleted:
type: boolean
title: deleted
description: The product's deleted.
parent:
$ref: '#/components/schemas/AdminProduct'
AdminProductVariantParams:
type: object
description: The product's variants.
x-schemaName: AdminProductVariantParams
properties:
q:
type: string
title: q
description: The variant's q.
id:
oneOf:
- type: string
title: id
description: The variant's ID.
- type: array
description: The variant's ID.
items:
type: string
title: id
description: The id's ID.
sku:
oneOf:
- type: string
title: sku
description: The variant's sku.
- type: array
description: The variant's sku.
items:
type: string
title: sku
description: The sku's details.
product_id:
oneOf:
- type: string
title: product_id
description: The variant's product id.
- type: array
description: The variant's product id.
items:
type: string
title: product_id
description: The product id's details.
options:
type: object
description: The variant's options.
limit:
type: number
title: limit
description: The variant's limit.
offset:
type: number
title: offset
description: The variant's offset.
order:
type: string
title: order
description: The variant's order.
fields:
type: string
title: fields
description: The variant's fields.
$and:
type: array
description: The variant's $and.
items:
oneOf:
- type: object
description: The $and's details.
x-schemaName: BaseProductVariantParams
properties:
q:
type: string
title: q
description: The $and's q.
id:
oneOf:
- type: string
title: id
description: The $and's ID.
- type: array
description: The $and's ID.
items:
type: string
title: id
description: The id's ID.
sku:
oneOf:
- type: string
title: sku
description: The $and's sku.
- type: array
description: The $and's sku.
items:
type: string
title: sku
description: The sku's details.
product_id:
oneOf:
- type: string
title: product_id
description: The $and's product id.
- type: array
description: The $and's product id.
items:
type: string
title: product_id
description: The product id's details.
options:
type: object
description: The $and's options.
limit:
type: number
title: limit
description: The $and's limit.
offset:
type: number
title: offset
description: The $and's offset.
order:
type: string
title: order
description: The $and's order.
fields:
type: string
title: fields
description: The $and's fields.
$and:
type: array
description: The $and's details.
items:
oneOf:
- type: object
description: The $and's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $and's details.
$or:
type: array
description: The $and's $or.
items:
oneOf:
- type: object
description: The $or's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $or's details.
- type: object
description: The $and's details.
properties:
$and:
type: array
description: The $and's details.
items:
oneOf:
- type: object
description: The $and's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $and's details.
$or:
type: array
description: The $and's $or.
items:
oneOf:
- type: object
description: The $or's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $or's details.
$or:
type: array
description: The variant's $or.
items:
oneOf:
- type: object
description: The $or's details.
x-schemaName: BaseProductVariantParams
properties:
q:
type: string
title: q
description: The $or's q.
id:
oneOf:
- type: string
title: id
description: The $or's ID.
- type: array
description: The $or's ID.
items:
type: string
title: id
description: The id's ID.
sku:
oneOf:
- type: string
title: sku
description: The $or's sku.
- type: array
description: The $or's sku.
items:
type: string
title: sku
description: The sku's details.
product_id:
oneOf:
- type: string
title: product_id
description: The $or's product id.
- type: array
description: The $or's product id.
items:
type: string
title: product_id
description: The product id's details.
options:
type: object
description: The $or's options.
limit:
type: number
title: limit
description: The $or's limit.
offset:
type: number
title: offset
description: The $or's offset.
order:
type: string
title: order
description: The $or's order.
fields:
type: string
title: fields
description: The $or's fields.
$and:
type: array
description: The $or's $and.
items:
oneOf:
- type: object
description: The $and's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $and's details.
$or:
type: array
description: The $or's details.
items:
oneOf:
- type: object
description: The $or's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $or's details.
- type: object
description: The $or's details.
properties:
$and:
type: array
description: The $or's $and.
items:
oneOf:
- type: object
description: The $and's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $and's details.
$or:
type: array
description: The $or's details.
items:
oneOf:
- type: object
description: The $or's details.
x-schemaName: BaseProductVariantParams
- type: object
description: The $or's details.
AdminProductVariantResponse:
type: object
description: SUMMARY
x-schemaName: AdminProductVariantResponse
required:
- variant
properties:
variant:
$ref: '#/components/schemas/AdminProductVariant'
AdminRevokeApiKey:
type: object
description: SUMMARY
x-schemaName: AdminRevokeApiKey
properties:
revoke_in:
type: number
title: revoke_in
description: The api key's revoke in.
AdminSalesChannel:
type: object
description: The sales channel's sales channels.
x-schemaName: AdminSalesChannel
required:
- id
- name
- description
- is_disabled
- metadata
- created_at
- updated_at
- deleted_at
properties:
id:
type: string
title: id
description: The sales channel's ID.
name:
type: string
title: name
description: The sales channel's name.
description:
type: string
title: description
description: The sales channel's description.
is_disabled:
type: boolean
title: is_disabled
description: The sales channel's is disabled.
metadata:
type: object
description: The sales channel's metadata.
created_at:
type: string
format: date-time
title: created_at
description: The sales channel's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The sales channel's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The sales channel's deleted at.
AdminServiceZone:
type: object
description: The service zone's service zones.
x-schemaName: AdminServiceZone
required:
- id
- name
- fulfillment_set_id
- geo_zones
- shipping_options
- created_at
- updated_at
- deleted_at
properties:
id:
type: string
title: id
description: The service zone's ID.
name:
type: string
title: name
description: The service zone's name.
fulfillment_set_id:
type: string
title: fulfillment_set_id
description: The service zone's fulfillment set id.
geo_zones:
type: array
description: The service zone's geo zones.
items:
$ref: '#/components/schemas/AdminGeoZone'
shipping_options:
type: array
description: The service zone's shipping options.
items:
$ref: '#/components/schemas/AdminShippingOption'
created_at:
type: string
format: date-time
title: created_at
description: The service zone's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The service zone's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The service zone's deleted at.
AdminServiceZoneResponse:
type: object
description: SUMMARY
x-schemaName: AdminServiceZoneResponse
required:
- service_zone
properties:
service_zone:
$ref: '#/components/schemas/AdminServiceZone'
AdminShippingOption:
type: object
description: The shipping option's shipping options.
x-schemaName: AdminShippingOption
AdminShippingOptionDeleteResponse:
type: object
description: SUMMARY
x-schemaName: AdminShippingOptionDeleteResponse
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The shipping option's ID.
object:
type: string
title: object
description: The shipping option's object.
default: shipping_option
deleted:
type: boolean
title: deleted
description: The shipping option's deleted.
parent:
type: object
description: The shipping option's parent.
AdminShippingOptionResponse:
type: object
description: SUMMARY
x-schemaName: AdminShippingOptionResponse
required:
- shipping_option
properties:
shipping_option:
$ref: '#/components/schemas/AdminShippingOption'
AdminShippingProfile:
type: object
description: The shipping option's shipping profile.
x-schemaName: AdminShippingProfile
AdminShippingProfileDeleteResponse:
type: object
description: SUMMARY
x-schemaName: AdminShippingProfileDeleteResponse
required:
- id
- object
- deleted
properties:
id:
type: string
title: id
description: The shipping profile's ID.
object:
type: string
title: object
description: The shipping profile's object.
default: shipping_profile
deleted:
type: boolean
title: deleted
description: The shipping profile's deleted.
parent:
type: object
description: The shipping profile's parent.
AdminShippingProfileResponse:
type: object
description: SUMMARY
x-schemaName: AdminShippingProfileResponse
required:
- shipping_profile
properties:
shipping_profile:
$ref: '#/components/schemas/AdminShippingProfile'
AdminUpdateApiKey:
type: object
description: SUMMARY
x-schemaName: AdminUpdateApiKey
required:
- title
properties:
title:
type: string
title: title
description: The api key's title.
AdminUpdateCampaign:
type: object
description: SUMMARY
x-schemaName: AdminUpdateCampaign
required:
- description
- starts_at
- ends_at
properties:
name:
type: string
title: name
description: The campaign's name.
campaign_identifier:
type: string
title: campaign_identifier
description: The campaign's campaign identifier.
description:
type: string
title: description
description: The campaign's description.
budget:
type: object
description: The campaign's budget.
required:
- limit
properties:
limit:
type: number
title: limit
description: The budget's limit.
starts_at:
type: string
title: starts_at
description: The campaign's starts at.
format: date-time
ends_at:
type: string
title: ends_at
description: The campaign's ends at.
format: date-time
promotions:
type: array
description: The campaign's promotions.
items:
type: object
description: The promotion's promotions.
required:
- id
properties:
id:
type: string
title: id
description: The promotion's ID.
AdminUpdateCollection:
type: object
description: SUMMARY
x-schemaName: AdminUpdateCollection
required:
- metadata
properties:
title:
type: string
title: title
description: The collection's title.
handle:
type: string
title: handle
description: The collection's handle.
metadata:
type: object
description: The collection's metadata.
AdminUpdateCustomer:
type: object
description: SUMMARY
x-schemaName: AdminUpdateCustomer
required:
- email
- company_name
- first_name
- last_name
- phone
- metadata
properties:
email:
type: string
title: email
description: The customer's email.
format: email
company_name:
type: string
title: company_name
description: The customer's company name.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
phone:
type: string
title: phone
description: The customer's phone.
metadata:
type: object
description: The customer's metadata.
AdminUpdateCustomerGroup:
type: object
description: SUMMARY
x-schemaName: AdminUpdateCustomerGroup
required:
- metadata
properties:
name:
type: string
title: name
description: The customer group's name.
metadata:
type: object
description: The customer group's metadata.
AdminUpdatePriceList:
type: object
description: SUMMARY
x-schemaName: AdminUpdatePriceList
required:
- description
- starts_at
- ends_at
properties:
title:
type: string
title: title
description: The price list's title.
description:
type: string
title: description
description: The price list's description.
starts_at:
type: string
title: starts_at
description: The price list's starts at.
ends_at:
type: string
title: ends_at
description: The price list's ends at.
status:
type: string
enum:
- active
- draft
type:
type: string
enum:
- sale
- override
rules:
type: object
description: The price list's rules.
AdminUpdatePricePreference:
type: object
description: SUMMARY
x-schemaName: AdminUpdatePricePreference
properties:
attribute:
type: string
title: attribute
description: The price preference's attribute.
value:
type: string
title: value
description: The price preference's value.
is_tax_inclusive:
type: boolean
title: is_tax_inclusive
description: The price preference's is tax inclusive.
AdminUpdateProduct:
type: object
description: The update's details.
x-schemaName: AdminUpdateProduct
properties:
title:
type: string
title: title
description: The update's title.
subtitle:
type: string
title: subtitle
description: The update's subtitle.
description:
type: string
title: description
description: The update's description.
is_giftcard:
type: boolean
title: is_giftcard
description: The update's is giftcard.
discountable:
type: boolean
title: discountable
description: The update's discountable.
images:
type: array
description: The update's images.
items:
type: object
description: The image's images.
required:
- url
properties:
url:
type: string
title: url
description: The image's url.
thumbnail:
type: string
title: thumbnail
description: The update's thumbnail.
handle:
type: string
title: handle
description: The update's handle.
status:
type: string
enum:
- draft
- proposed
- published
- rejected
type_id:
type: string
title: type_id
description: The update's type id.
collection_id:
type: string
title: collection_id
description: The update's collection id.
categories:
type: array
description: The update's categories.
items:
type: object
description: The category's categories.
required:
- id
properties:
id:
type: string
title: id
description: The category's ID.
tags:
type: array
description: The update's tags.
items:
type: object
description: The tag's tags.
properties:
id:
type: string
title: id
description: The tag's ID.
value:
type: string
title: value
description: The tag's value.
options:
type: array
description: The update's options.
items:
$ref: '#/components/schemas/AdminUpdateProductOption'
variants:
type: array
description: The update's variants.
items:
$ref: '#/components/schemas/AdminCreateProductVariant'
sales_channels:
type: array
description: The update's sales channels.
items:
type: object
description: The sales channel's sales channels.
required:
- id
properties:
id:
type: string
title: id
description: The sales channel's ID.
weight:
type: number
title: weight
description: The update's weight.
length:
type: number
title: length
description: The update's length.
height:
type: number
title: height
description: The update's height.
width:
type: number
title: width
description: The update's width.
hs_code:
type: string
title: hs_code
description: The update's hs code.
mid_code:
type: string
title: mid_code
description: The update's mid code.
origin_country:
type: string
title: origin_country
description: The update's origin country.
material:
type: string
title: material
description: The update's material.
metadata:
type: object
description: The update's metadata.
AdminUpdateProductOption:
type: object
description: SUMMARY
x-schemaName: AdminUpdateProductOption
properties:
title:
type: string
title: title
description: The product's title.
values:
type: array
description: The product's values.
items:
type: string
title: values
description: The value's values.
AdminUpdateProductVariant:
type: object
description: The update's details.
x-schemaName: AdminUpdateProductVariant
properties:
title:
type: string
title: title
description: The update's title.
sku:
type: string
title: sku
description: The update's sku.
ean:
type: string
title: ean
description: The update's ean.
upc:
type: string
title: upc
description: The update's upc.
barcode:
type: string
title: barcode
description: The update's barcode.
hs_code:
type: string
title: hs_code
description: The update's hs code.
mid_code:
type: string
title: mid_code
description: The update's mid code.
allow_backorder:
type: boolean
title: allow_backorder
description: The update's allow backorder.
manage_inventory:
type: boolean
title: manage_inventory
description: The update's manage inventory.
variant_rank:
type: number
title: variant_rank
description: The update's variant rank.
weight:
type: number
title: weight
description: The update's weight.
length:
type: number
title: length
description: The update's length.
height:
type: number
title: height
description: The update's height.
width:
type: number
title: width
description: The update's width.
origin_country:
type: string
title: origin_country
description: The update's origin country.
material:
type: string
title: material
description: The update's material.
metadata:
type: object
description: The update's metadata.
prices:
type: array
description: The update's prices.
items:
$ref: '#/components/schemas/AdminCreateProductVariantPrice'
options:
type: object
description: The update's options.
AdminUpdateSalesChannel:
type: object
description: SUMMARY
x-schemaName: AdminUpdateSalesChannel
required:
- description
- metadata
properties:
name:
type: string
title: name
description: The sales channel's name.
description:
type: string
title: description
description: The sales channel's description.
is_disabled:
type: boolean
title: is_disabled
description: The sales channel's is disabled.
metadata:
type: object
description: The sales channel's metadata.
AdminUpdateStockLocation:
type: object
description: SUMMARY
x-schemaName: AdminUpdateStockLocation
required:
- address_id
- metadata
properties:
name:
type: string
title: name
description: The stock location's name.
address:
type: object
description: The stock location's address.
required:
- address_1
- address_2
- company
- city
- country_code
- phone
- postal_code
- province
properties:
address_1:
type: string
title: address_1
description: The address's address 1.
address_2:
type: string
title: address_2
description: The address's address 2.
company:
type: string
title: company
description: The address's company.
city:
type: string
title: city
description: The address's city.
country_code:
type: string
title: country_code
description: The address's country code.
phone:
type: string
title: phone
description: The address's phone.
postal_code:
type: string
title: postal_code
description: The address's postal code.
province:
type: string
title: province
description: The address's province.
address_id:
type: string
title: address_id
description: The stock location's address id.
metadata:
type: object
description: The stock location's metadata.
AdminUpdateStore:
type: object
description: SUMMARY
x-schemaName: AdminUpdateStore
required:
- default_sales_channel_id
- default_region_id
- default_location_id
- metadata
properties:
name:
type: string
title: name
description: The store's name.
supported_currencies:
type: array
description: The store's supported currencies.
items:
type: object
description: The supported currency's supported currencies.
required:
- currency_code
properties:
currency_code:
type: string
title: currency_code
description: The supported currency's currency code.
is_default:
type: boolean
title: is_default
description: The supported currency's is default.
is_tax_inclusive:
type: boolean
title: is_tax_inclusive
description: The supported currency's is tax inclusive.
default_sales_channel_id:
type: string
title: default_sales_channel_id
description: The store's default sales channel id.
default_region_id:
type: string
title: default_region_id
description: The store's default region id.
default_location_id:
type: string
title: default_location_id
description: The store's default location id.
metadata:
type: object
description: The store's metadata.
AdminUpdateTaxRate:
type: object
description: SUMMARY
x-schemaName: AdminUpdateTaxRate
required:
- code
- metadata
properties:
rate:
type: number
title: rate
description: The tax rate's rate.
code:
type: string
title: code
description: The tax rate's code.
rules:
type: array
description: The tax rate's rules.
items:
type: object
description: The rule's rules.
required:
- reference
- reference_id
properties:
reference:
type: string
title: reference
description: The rule's reference.
reference_id:
type: string
title: reference_id
description: The rule's reference id.
name:
type: string
title: name
description: The tax rate's name.
is_default:
type: boolean
title: is_default
description: The tax rate's is default.
is_combinable:
type: boolean
title: is_combinable
description: The tax rate's is combinable.
metadata:
type: object
description: The tax rate's metadata.
AdminUpdateUser:
type: object
description: SUMMARY
x-schemaName: AdminUpdateUser
required:
- first_name
- last_name
- avatar_url
properties:
first_name:
type: string
title: first_name
description: The user's first name.
last_name:
type: string
title: last_name
description: The user's last name.
avatar_url:
type: string
title: avatar_url
description: The user's avatar url.
AdminUpdateVariantInventoryItem:
type: object
description: SUMMARY
x-schemaName: AdminUpdateVariantInventoryItem
required:
- required_quantity
properties:
required_quantity:
type: number
title: required_quantity
description: The product's required quantity.
BaseCalculatedPriceSet:
type: object
description: The updated's calculated price.
x-schemaName: BaseCalculatedPriceSet
required:
- id
- calculated_amount
- original_amount
- currency_code
properties:
id:
type: string
title: id
description: The calculated price's ID.
is_calculated_price_price_list:
type: boolean
title: is_calculated_price_price_list
description: The calculated price's is calculated price price list.
is_calculated_price_tax_inclusive:
type: boolean
title: is_calculated_price_tax_inclusive
description: The calculated price's is calculated price tax inclusive.
calculated_amount:
type: number
title: calculated_amount
description: The calculated price's calculated amount.
calculated_amount_with_tax:
type: number
title: calculated_amount_with_tax
description: The calculated price's calculated amount with tax.
calculated_amount_without_tax:
type: number
title: calculated_amount_without_tax
description: The calculated price's calculated amount without tax.
is_original_price_price_list:
type: boolean
title: is_original_price_price_list
description: The calculated price's is original price price list.
is_original_price_tax_inclusive:
type: boolean
title: is_original_price_tax_inclusive
description: The calculated price's is original price tax inclusive.
original_amount:
type: number
title: original_amount
description: The calculated price's original amount.
currency_code:
type: string
title: currency_code
description: The calculated price's currency code.
calculated_price:
type: object
description: The calculated price's details.
original_price:
type: object
description: The calculated price's original price.
BaseCollection:
type: object
description: The product's collection.
x-schemaName: BaseCollection
BaseCustomer:
type: object
description: The customer's customers.
x-schemaName: BaseCustomer
BaseCustomerAddress:
type: object
description: The address's addresses.
x-schemaName: BaseCustomerAddress
required:
- id
- address_name
- is_default_shipping
- is_default_billing
- customer_id
- company
- first_name
- last_name
- address_1
- address_2
- city
- country_code
- province
- postal_code
- phone
- metadata
- created_at
- updated_at
properties:
id:
type: string
title: id
description: The address's ID.
address_name:
type: string
title: address_name
description: The address's address name.
is_default_shipping:
type: boolean
title: is_default_shipping
description: The address's is default shipping.
is_default_billing:
type: boolean
title: is_default_billing
description: The address's is default billing.
customer_id:
type: string
title: customer_id
description: The address's customer id.
company:
type: string
title: company
description: The address's company.
first_name:
type: string
title: first_name
description: The address's first name.
last_name:
type: string
title: last_name
description: The address's last name.
address_1:
type: string
title: address_1
description: The address's address 1.
address_2:
type: string
title: address_2
description: The address's address 2.
city:
type: string
title: city
description: The address's city.
country_code:
type: string
title: country_code
description: The address's country code.
province:
type: string
title: province
description: The address's province.
postal_code:
type: string
title: postal_code
description: The address's postal code.
phone:
type: string
title: phone
description: The address's phone.
metadata:
type: object
description: The address's metadata.
created_at:
type: string
format: date-time
title: created_at
description: The address's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The address's updated at.
BaseProduct:
type: object
description: The updated's product.
x-schemaName: BaseProduct
required:
- id
- title
- handle
- subtitle
- description
- is_giftcard
- status
- thumbnail
- width
- weight
- length
- height
- origin_country
- hs_code
- mid_code
- material
- collection_id
- type_id
- variants
- options
- images
- discountable
- external_id
- created_at
- updated_at
- deleted_at
properties:
id:
type: string
title: id
description: The product's ID.
title:
type: string
title: title
description: The product's title.
handle:
type: string
title: handle
description: The product's handle.
subtitle:
type: string
title: subtitle
description: The product's subtitle.
description:
type: string
title: description
description: The product's description.
is_giftcard:
type: boolean
title: is_giftcard
description: The product's is giftcard.
status:
type: string
enum:
- draft
- proposed
- published
- rejected
thumbnail:
type: string
title: thumbnail
description: The product's thumbnail.
width:
type: number
title: width
description: The product's width.
weight:
type: number
title: weight
description: The product's weight.
length:
type: number
title: length
description: The product's length.
height:
type: number
title: height
description: The product's height.
origin_country:
type: string
title: origin_country
description: The product's origin country.
hs_code:
type: string
title: hs_code
description: The product's hs code.
mid_code:
type: string
title: mid_code
description: The product's mid code.
material:
type: string
title: material
description: The product's material.
collection:
$ref: '#/components/schemas/BaseCollection'
collection_id:
type: string
title: collection_id
description: The product's collection id.
categories:
type: array
description: The product's categories.
items:
$ref: '#/components/schemas/BaseProductCategory'
type:
type: object
type_id:
type: string
title: type_id
description: The product's type id.
tags:
type: array
description: The product's tags.
items:
$ref: '#/components/schemas/BaseProductTag'
variants:
type: array
description: The product's variants.
items:
$ref: '#/components/schemas/BaseProductVariant'
options:
type: array
description: The product's options.
items:
$ref: '#/components/schemas/BaseProductOption'
images:
type: array
description: The product's images.
items:
$ref: '#/components/schemas/BaseProductImage'
discountable:
type: boolean
title: discountable
description: The product's discountable.
external_id:
type: string
title: external_id
description: The product's external id.
created_at:
type: string
format: date-time
title: created_at
description: The product's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The product's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The product's deleted at.
metadata:
type: object
description: The product's metadata.
BaseProductCategory:
type: object
description: The category's categories.
x-schemaName: BaseProductCategory
BaseProductImage:
type: object
description: The image's images.
x-schemaName: BaseProductImage
BaseProductOption:
type: object
description: The option's options.
x-schemaName: BaseProductOption
BaseProductOptionValue:
type: object
description: The option's options.
x-schemaName: BaseProductOptionValue
required:
- id
- value
properties:
id:
type: string
title: id
description: The option's ID.
value:
type: string
title: value
description: The option's value.
option:
$ref: '#/components/schemas/BaseProductOption'
option_id:
type: string
title: option_id
description: The option's option id.
metadata:
type: object
description: The option's metadata.
created_at:
type: string
format: date-time
title: created_at
description: The option's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The option's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The option's deleted at.
BaseProductTag:
type: object
description: The tag's tags.
x-schemaName: BaseProductTag
BaseProductVariant:
type: object
description: The variant's variants.
x-schemaName: BaseProductVariant
CreateAddress:
type: object
description: The cart's shipping address.
x-schemaName: CreateAddress
properties:
customer_id:
type: string
title: customer_id
description: The shipping address's customer id.
company:
type: string
title: company
description: The shipping address's company.
first_name:
type: string
title: first_name
description: The shipping address's first name.
last_name:
type: string
title: last_name
description: The shipping address's last name.
address_1:
type: string
title: address_1
description: The shipping address's address 1.
address_2:
type: string
title: address_2
description: The shipping address's address 2.
city:
type: string
title: city
description: The shipping address's city.
country_code:
type: string
title: country_code
description: The shipping address's country code.
province:
type: string
title: province
description: The shipping address's province.
postal_code:
type: string
title: postal_code
description: The shipping address's postal code.
phone:
type: string
title: phone
description: The shipping address's phone.
metadata:
type: object
description: The shipping address's metadata.
CreateCartAddress:
type: object
description: The cart's billing address.
x-schemaName: CreateCartAddress
properties:
first_name:
type: string
title: first_name
description: The billing address's first name.
last_name:
type: string
title: last_name
description: The billing address's last name.
phone:
type: string
title: phone
description: The billing address's phone.
company:
type: string
title: company
description: The billing address's company.
address_1:
type: string
title: address_1
description: The billing address's address 1.
address_2:
type: string
title: address_2
description: The billing address's address 2.
city:
type: string
title: city
description: The billing address's city.
country_code:
type: string
title: country_code
description: The billing address's country code.
province:
type: string
title: province
description: The billing address's province.
postal_code:
type: string
title: postal_code
description: The billing address's postal code.
metadata:
type: object
description: The billing address's metadata.
CreateCartCreateLineItem:
type: object
description: The item's items.
x-schemaName: CreateCartCreateLineItem
required:
- quantity
- variant_id
properties:
quantity:
type: string
title: quantity
description: The item's quantity.
variant_id:
type: string
title: variant_id
description: The item's variant id.
title:
type: string
title: title
description: The item's title.
subtitle:
type: string
title: subtitle
description: The item's subtitle.
thumbnail:
type: string
title: thumbnail
description: The item's thumbnail.
product_id:
type: string
title: product_id
description: The item's product id.
product_title:
type: string
title: product_title
description: The item's product title.
product_description:
type: string
title: product_description
description: The item's product description.
product_subtitle:
type: string
title: product_subtitle
description: The item's product subtitle.
product_type:
type: string
title: product_type
description: The item's product type.
product_collection:
type: string
title: product_collection
description: The item's product collection.
product_handle:
type: string
title: product_handle
description: The item's product handle.
variant_sku:
type: string
title: variant_sku
description: The item's variant sku.
variant_barcode:
type: string
title: variant_barcode
description: The item's variant barcode.
variant_title:
type: string
title: variant_title
description: The item's variant title.
variant_option_values:
type: object
description: The item's variant option values.
requires_shipping:
type: boolean
title: requires_shipping
description: The item's requires shipping.
is_discountable:
type: boolean
title: is_discountable
description: The item's is discountable.
is_tax_inclusive:
type: boolean
title: is_tax_inclusive
description: The item's is tax inclusive.
is_giftcard:
type: boolean
title: is_giftcard
description: The item's is giftcard.
compare_at_unit_price:
type: string
title: compare_at_unit_price
description: The item's compare at unit price.
unit_price:
type: string
title: unit_price
description: The item's unit price.
metadata:
type: object
description: The item's metadata.
CreateCartWorkflowInput:
type: object
description: SUMMARY
x-schemaName: CreateCartWorkflowInput
properties:
region_id:
type: string
title: region_id
description: The cart's region id.
customer_id:
type: string
title: customer_id
description: The cart's customer id.
sales_channel_id:
type: string
title: sales_channel_id
description: The cart's sales channel id.
email:
type: string
title: email
description: The cart's email.
format: email
currency_code:
type: string
title: currency_code
description: The cart's currency code.
shipping_address_id:
type: string
title: shipping_address_id
description: The cart's shipping address id.
billing_address_id:
type: string
title: billing_address_id
description: The cart's billing address id.
shipping_address:
oneOf:
- type: string
title: shipping_address
description: The cart's shipping address.
- $ref: '#/components/schemas/CreateCartAddress'
billing_address:
oneOf:
- type: string
title: billing_address
description: The cart's billing address.
- $ref: '#/components/schemas/CreateCartAddress'
metadata:
type: object
description: The cart's metadata.
items:
type: array
description: The cart's items.
items:
$ref: '#/components/schemas/CreateCartCreateLineItem'
promo_codes:
type: array
description: The cart's promo codes.
items:
type: string
title: promo_codes
description: The promo code's promo codes.
CreateOrderReturnReason:
type: object
description: SUMMARY
x-schemaName: CreateOrderReturnReason
required:
- value
- label
properties:
value:
type: string
title: value
description: The return reason's value.
label:
type: string
title: label
description: The return reason's label.
description:
type: string
title: description
description: The return reason's description.
parent_return_reason_id:
type: string
title: parent_return_reason_id
description: The return reason's parent return reason id.
metadata:
type: object
description: The return reason's metadata.
CreateUser:
type: object
description: SUMMARY
x-schemaName: CreateUser
required:
- email
properties:
email:
type: string
title: email
description: The user's email.
format: email
first_name:
type: string
title: first_name
description: The user's first name.
last_name:
type: string
title: last_name
description: The user's last name.
avatar_url:
type: string
title: avatar_url
description: The user's avatar url.
metadata:
type: object
description: The user's metadata.
Error:
title: Response Error
type: object
properties:
code:
type: string
description: A slug code to indicate the type of the error.
enum:
- invalid_state_error
- invalid_request_error
- api_error
- unknown_error
message:
type: string
description: Description of the error that occurred.
example: first_name must be a string
type:
type: string
description: A slug indicating the type of the error.
enum:
- QueryRunnerAlreadyReleasedError
- TransactionAlreadyStartedError
- TransactionNotStartedError
- conflict
- unauthorized
- payment_authorization_error
- duplicate_error
- not_allowed
- invalid_data
- not_found
- database_error
- unexpected_state
- invalid_argument
- unknown_error
StoreAddCartLineItem:
type: object
description: SUMMARY
x-schemaName: StoreAddCartLineItem
required:
- variant_id
- quantity
- metadata
properties:
variant_id:
type: string
title: variant_id
description: The cart's variant id.
quantity:
type: number
title: quantity
description: The cart's quantity.
metadata:
type: object
description: The cart's metadata.
StoreCalculateCartTaxes:
type: object
description: SUMMARY
x-schemaName: StoreCalculateCartTaxes
properties:
fields:
type: string
title: fields
description: The cart's fields.
StoreCreateCustomer:
type: object
description: SUMMARY
x-schemaName: StoreCreateCustomer
required:
- email
- company_name
- first_name
- last_name
- phone
properties:
email:
type: string
title: email
description: The customer's email.
format: email
company_name:
type: string
title: company_name
description: The customer's company name.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
phone:
type: string
title: phone
description: The customer's phone.
StorePostReturnsReqSchema:
type: object
description: SUMMARY
x-schemaName: StorePostReturnsReqSchema
required:
- order_id
- items
- return_shipping
- note
- location_id
properties:
order_id:
type: string
title: order_id
description: The return's order id.
items:
type: array
description: The return's items.
items:
type: object
description: The item's items.
required:
- id
- quantity
- reason_id
- note
properties:
id:
type: string
title: id
description: The item's ID.
quantity:
type: number
title: quantity
description: The item's quantity.
reason_id:
type: string
title: reason_id
description: The item's reason id.
note:
type: string
title: note
description: The item's note.
return_shipping:
type: object
description: The return's return shipping.
required:
- option_id
properties:
option_id:
type: string
title: option_id
description: The return shipping's option id.
price:
type: number
title: price
description: The return shipping's price.
note:
type: string
title: note
description: The return's note.
receive_now:
type: boolean
title: receive_now
description: The return's receive now.
location_id:
type: string
title: location_id
description: The return's location id.
StoreProduct:
type: object
description: The product's products.
x-schemaName: StoreProduct
required:
- title
- status
- length
- options
- description
- id
- handle
- hs_code
- weight
- height
- width
- origin_country
- mid_code
- material
- thumbnail
- created_at
- updated_at
- deleted_at
- variants
- subtitle
- is_giftcard
- collection_id
- type_id
- images
- discountable
- external_id
properties:
categories:
type: array
description: The product's categories.
items:
type: object
type:
type: object
title:
type: string
title: title
description: The product's title.
status:
type: string
enum:
- draft
- proposed
- published
- rejected
length:
type: number
title: length
description: The product's length.
options:
type: array
description: The product's options.
items:
$ref: '#/components/schemas/BaseProductOption'
description:
type: string
title: description
description: The product's description.
id:
type: string
title: id
description: The product's ID.
handle:
type: string
title: handle
description: The product's handle.
metadata:
type: object
description: The product's metadata.
hs_code:
type: string
title: hs_code
description: The product's hs code.
weight:
type: number
title: weight
description: The product's weight.
height:
type: number
title: height
description: The product's height.
width:
type: number
title: width
description: The product's width.
origin_country:
type: string
title: origin_country
description: The product's origin country.
mid_code:
type: string
title: mid_code
description: The product's mid code.
material:
type: string
title: material
description: The product's material.
thumbnail:
type: string
title: thumbnail
description: The product's thumbnail.
created_at:
type: string
format: date-time
title: created_at
description: The product's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The product's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The product's deleted at.
variants:
type: array
description: The product's variants.
items:
$ref: '#/components/schemas/BaseProductVariant'
subtitle:
type: string
title: subtitle
description: The product's subtitle.
is_giftcard:
type: boolean
title: is_giftcard
description: The product's is giftcard.
collection:
$ref: '#/components/schemas/BaseCollection'
collection_id:
type: string
title: collection_id
description: The product's collection id.
type_id:
type: string
title: type_id
description: The product's type id.
tags:
type: array
description: The product's tags.
items:
$ref: '#/components/schemas/BaseProductTag'
images:
type: array
description: The product's images.
items:
$ref: '#/components/schemas/BaseProductImage'
discountable:
type: boolean
title: discountable
description: The product's discountable.
external_id:
type: string
title: external_id
description: The product's external id.
StoreProductCategory:
type: object
description: The product category's details.
x-schemaName: StoreProductCategory
required:
- id
- name
- description
- handle
- is_active
- is_internal
- rank
- parent_category_id
- parent_category
- category_children
- created_at
- updated_at
- deleted_at
properties:
products:
type: array
description: The product category's products.
items:
$ref: '#/components/schemas/StoreProduct'
id:
type: string
title: id
description: The product category's ID.
name:
type: string
title: name
description: The product category's name.
description:
type: string
title: description
description: The product category's description.
handle:
type: string
title: handle
description: The product category's handle.
is_active:
type: boolean
title: is_active
description: The product category's is active.
is_internal:
type: boolean
title: is_internal
description: The product category's is internal.
rank:
type: number
title: rank
description: The product category's rank.
parent_category_id:
type: string
title: parent_category_id
description: The product category's parent category id.
parent_category:
$ref: '#/components/schemas/BaseProductCategory'
category_children:
type: array
description: The product category's category children.
items:
$ref: '#/components/schemas/BaseProductCategory'
created_at:
type: string
format: date-time
title: created_at
description: The product category's created at.
updated_at:
type: string
format: date-time
title: updated_at
description: The product category's updated at.
deleted_at:
type: string
format: date-time
title: deleted_at
description: The product category's deleted at.
StoreProductCategoryListResponse:
type: object
description: SUMMARY
x-schemaName: StoreProductCategoryListResponse
required:
- limit
- offset
- count
- product_categories
properties:
limit:
type: number
title: limit
description: The product category's limit.
offset:
type: number
title: offset
description: The product category's offset.
count:
type: number
title: count
description: The product category's count.
product_categories:
type: array
description: The product category's product categories.
items:
$ref: '#/components/schemas/StoreProductCategory'
StoreProductCategoryResponse:
type: object
description: SUMMARY
x-schemaName: StoreProductCategoryResponse
required:
- product_category
properties:
product_category:
$ref: '#/components/schemas/StoreProductCategory'
StoreUpdateCartLineItem:
type: object
description: SUMMARY
x-schemaName: StoreUpdateCartLineItem
required:
- quantity
- metadata
properties:
quantity:
type: number
title: quantity
description: The cart's quantity.
metadata:
type: object
description: The cart's metadata.
StoreUpdateCustomer:
type: object
description: SUMMARY
x-schemaName: StoreUpdateCustomer
required:
- company_name
- first_name
- last_name
- phone
properties:
company_name:
type: string
title: company_name
description: The customer's company name.
first_name:
type: string
title: first_name
description: The customer's first name.
last_name:
type: string
title: last_name
description: The customer's last name.
phone:
type: string
title: phone
description: The customer's phone.
UpdateAddress:
type: object
description: The cart's shipping address.
x-schemaName: UpdateAddress
required:
- id
properties:
id:
type: string
title: id
description: The shipping address's ID.
customer_id:
type: string
title: customer_id
description: The shipping address's customer id.
company:
type: string
title: company
description: The shipping address's company.
first_name:
type: string
title: first_name
description: The shipping address's first name.
last_name:
type: string
title: last_name
description: The shipping address's last name.
address_1:
type: string
title: address_1
description: The shipping address's address 1.
address_2:
type: string
title: address_2
description: The shipping address's address 2.
city:
type: string
title: city
description: The shipping address's city.
country_code:
type: string
title: country_code
description: The shipping address's country code.
province:
type: string
title: province
description: The shipping address's province.
postal_code:
type: string
title: postal_code
description: The shipping address's postal code.
phone:
type: string
title: phone
description: The shipping address's phone.
metadata:
type: object
description: The shipping address's metadata.
UpdateCartData:
type: object
description: SUMMARY
x-schemaName: UpdateCartData
properties:
region_id:
type: string
title: region_id
description: The cart's region id.
customer_id:
type: string
title: customer_id
description: The cart's customer id.
sales_channel_id:
type: string
title: sales_channel_id
description: The cart's sales channel id.
email:
type: string
title: email
description: The cart's email.
format: email
currency_code:
type: string
title: currency_code
description: The cart's currency code.
shipping_address_id:
type: string
title: shipping_address_id
description: The cart's shipping address id.
billing_address_id:
type: string
title: billing_address_id
description: The cart's billing address id.
billing_address:
oneOf:
- $ref: '#/components/schemas/CreateAddress'
- $ref: '#/components/schemas/UpdateAddress'
shipping_address:
oneOf:
- $ref: '#/components/schemas/CreateAddress'
- $ref: '#/components/schemas/UpdateAddress'
metadata:
type: object
description: The cart's metadata.
UpdateOrderReturnReason:
type: object
description: SUMMARY
x-schemaName: UpdateOrderReturnReason
properties:
id:
type: string
title: id
description: The return reason's ID.
label:
type: string
title: label
description: The return reason's label.
value:
type: string
title: value
description: The return reason's value.
description:
type: string
title: description
description: The return reason's description.
metadata:
type: object
description: The return reason's metadata.