3555 lines
118 KiB
YAML
3555 lines
118 KiB
YAML
openapi: 3.0.0
|
|
info:
|
|
version: 1.0.0
|
|
title: Medusa Storefront API
|
|
license:
|
|
name: MIT
|
|
tags:
|
|
- name: Auth
|
|
description: >-
|
|
Auth endpoints allows authorization of admin Users and manages their
|
|
sessions.
|
|
- name: Cart
|
|
x-resourceId: cart
|
|
- name: Collection
|
|
x-resourceId: product_collection
|
|
- name: Customer
|
|
x-resourceId: customer
|
|
- name: Discount
|
|
x-resourceId: discount
|
|
- name: Gift Card
|
|
x-resourceId: gift_card
|
|
- name: Notification
|
|
x-resourceId: notification
|
|
- name: Order
|
|
x-resourceId: order
|
|
- name: Product
|
|
x-resourceId: product
|
|
- name: Region
|
|
x-resourceId: region
|
|
- name: Return
|
|
x-resourceId: return
|
|
- name: Shipping Option
|
|
x-resourceId: shipping_option
|
|
- name: Shipping Profile
|
|
x-resourceId: shipping_profile
|
|
- name: Swap
|
|
x-resourceId: swap
|
|
- name: Product Variant
|
|
x-resourceId: product_variant
|
|
servers:
|
|
- url: 'https://api.medusa-commerce.com/store'
|
|
paths:
|
|
/auth:
|
|
post:
|
|
operationId: PostAuth
|
|
summary: Authenticate Customer
|
|
description: >-
|
|
Logs a Customer in and authorizes them to view their details. Successful
|
|
authentication will set a session cookie in the Customer's browser.
|
|
parameters: []
|
|
tags:
|
|
- Auth
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- email
|
|
- password
|
|
properties:
|
|
email:
|
|
type: string
|
|
description: The Customer's email.
|
|
password:
|
|
type: string
|
|
description: The Customer's password.
|
|
delete:
|
|
operationId: DeleteAuth
|
|
summary: Log out
|
|
description: Destroys a Customer's authenticated session.
|
|
tags:
|
|
- Auth
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
get:
|
|
operationId: GetAuth
|
|
summary: Get Session
|
|
description: Gets the currently logged in Customer.
|
|
tags:
|
|
- Auth
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
'/auth/{email}':
|
|
get:
|
|
operationId: GetAuthEmail
|
|
summary: Check if email has account
|
|
description: Checks if a Customer with the given email has signed up.
|
|
parameters:
|
|
- in: path
|
|
name: email
|
|
required: true
|
|
description: The Customer's email.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Auth
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
exists:
|
|
type: boolean
|
|
'/carts/{id}/shipping-methods':
|
|
post:
|
|
operationId: PostCartsCartShippingMethod
|
|
description: Adds a Shipping Method to the Cart.
|
|
summary: Add a Shipping Method
|
|
tags:
|
|
- Cart
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The cart id.
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: A successful response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- option_id
|
|
properties:
|
|
option_id:
|
|
type: string
|
|
description: id of the shipping option to create the method from
|
|
data:
|
|
type: object
|
|
description: >-
|
|
Used to hold any data that the shipping method may need to
|
|
process the fulfillment of the order. Look at the
|
|
documentation for your installed fulfillment providers to
|
|
find out what to send.
|
|
'/carts/{id}/complete-cart':
|
|
post:
|
|
summary: Complete a Cart
|
|
operationId: PostCartsCartComplete
|
|
description: >-
|
|
Completes a cart. The following steps will be performed. Payment
|
|
authorization is attempted and if more work is required, we simply
|
|
return the cart for further updates. If payment is authorized and order
|
|
is not yet created, we make sure to do so. The completion of a cart can
|
|
be performed idempotently with a provided header `Idempotency-Key`. If
|
|
not provided, we will generate one for the request.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The Cart id.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: >-
|
|
If a cart was successfully authorized, but requires further action
|
|
from the user the response body will contain the cart with an
|
|
updated payment session. If the Cart was successfully completed the
|
|
response body will contain the newly created Order.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
oneOf:
|
|
- type: object
|
|
properties:
|
|
order:
|
|
$ref: '#/components/schemas/order'
|
|
- type: object
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
/carts:
|
|
post:
|
|
summary: Create a Cart
|
|
operationId: PostCart
|
|
description: >-
|
|
Creates a Cart within the given region and with the initial items. If no
|
|
`region_id` is provided the cart will be associated with the first
|
|
Region available. If no items are provided the cart will be empty after
|
|
creation. If a user is logged in the cart's customer id and email will
|
|
be set.
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
region_id:
|
|
type: string
|
|
description: The id of the Region to create the Cart in.
|
|
country_code:
|
|
type: string
|
|
description: The 2 character ISO country code to create the Cart in.
|
|
items:
|
|
description: >-
|
|
An optional array of `variant_id`, `quantity` pairs to
|
|
generate Line Items from.
|
|
type: array
|
|
items:
|
|
properties:
|
|
variant_id:
|
|
description: >-
|
|
The id of the Product Variant to generate a Line Item
|
|
from.
|
|
type: string
|
|
quantity:
|
|
description: The quantity of the Product Variant to add
|
|
type: integer
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: Successfully created a new Cart
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
'/carts/{id}/line-items':
|
|
post:
|
|
operationId: PostCartsCartLineItems
|
|
summary: Add a Line Item
|
|
description: >-
|
|
Generates a Line Item with a given Product Variant and adds it to the
|
|
Cart
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart to add the Line Item to.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- variant_id
|
|
- quantity
|
|
properties:
|
|
variant_id:
|
|
type: string
|
|
description: >-
|
|
The id of the Product Variant to generate the Line Item
|
|
from.
|
|
quantity:
|
|
type: integer
|
|
description: The quantity of the Product Variant to add to the Line Item.
|
|
metadata:
|
|
type: object
|
|
description: >-
|
|
An optional key-value map with additional details about the
|
|
Line Item.
|
|
'/carts/{id}/payment-sessions':
|
|
post:
|
|
operationId: PostCartsCartPaymentSessions
|
|
summary: Initialize Payment Sessions
|
|
description: >-
|
|
Creates Payment Sessions for each of the available Payment Providers in
|
|
the Cart's Region.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
'/carts/{id}/discounts/{code}':
|
|
delete:
|
|
operationId: DeleteCartsCartDiscountsDiscount
|
|
description: Removes a Discount from a Cart.
|
|
summary: Remove Discount from Cart
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: code
|
|
required: true
|
|
description: The unique Discount code.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
'/carts/{id}/line-items/{line_id}':
|
|
delete:
|
|
operationId: DeleteCartsCartLineItemsItem
|
|
summary: Delete a Line Item
|
|
description: Removes a Line Item from a Cart.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: line_id
|
|
required: true
|
|
description: The id of the Line Item.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
post:
|
|
operationId: PostCartsCartLineItemsItem
|
|
summary: Update a Line Item
|
|
description: Updates a Line Item if the desired quantity can be fulfilled.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: line_id
|
|
required: true
|
|
description: The id of the Line Item.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- quantity
|
|
properties:
|
|
quantity:
|
|
type: integer
|
|
description: The quantity to set the Line Item to.
|
|
'/carts/{id}/payment-sessions/{provider_id}':
|
|
delete:
|
|
operationId: DeleteCartsCartPaymentSessionsSession
|
|
summary: Delete a Payment Session
|
|
description: >-
|
|
Deletes a Payment Session on a Cart. May be useful if a payment has
|
|
failed.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: provider_id
|
|
required: true
|
|
description: >-
|
|
The id of the Payment Provider used to create the Payment Session to
|
|
be deleted.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
post:
|
|
operationId: PostCartsCartPaymentSessionsSession
|
|
summary: Refresh a Payment Session
|
|
description: >-
|
|
Refreshes a Payment Session to ensure that it is in sync with the Cart -
|
|
this is usually not necessary.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: provider_id
|
|
required: true
|
|
description: >-
|
|
The id of the Payment Provider that created the Payment Session to
|
|
be refreshed.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
'/carts/{id}':
|
|
get:
|
|
operationId: GetCartsCart
|
|
summary: Retrieve a Cart
|
|
description: Retrieves a Cart.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
'/carts/{id}/payment-session':
|
|
post:
|
|
operationId: PostCartsCartPaymentSession
|
|
summary: Select a Payment Session
|
|
description: >-
|
|
Selects a Payment Session as the session intended to be used towards the
|
|
completion of the Cart.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- provider_id
|
|
properties:
|
|
provider_id:
|
|
type: string
|
|
description: The id of the Payment Provider.
|
|
'/store/carts/{id}':
|
|
post:
|
|
operationId: PostCartsCart
|
|
summary: Update a Cart"
|
|
description: Updates a Cart.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
region_id:
|
|
type: string
|
|
description: The id of the Region to create the Cart in.
|
|
country_code:
|
|
type: string
|
|
description: The 2 character ISO country code to create the Cart in.
|
|
email:
|
|
type: string
|
|
description: An email to be used on the Cart.
|
|
billing_address:
|
|
description: The Address to be used for billing purposes.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
shipping_address:
|
|
description: The Address to be used for shipping.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
gift_cards:
|
|
description: An array of Gift Card codes to add to the Cart.
|
|
type: array
|
|
items:
|
|
properties:
|
|
code:
|
|
description: The code that a Gift Card is identified by.
|
|
type: string
|
|
discounts:
|
|
description: An array of Discount codes to add to the Cart.
|
|
type: array
|
|
items:
|
|
properties:
|
|
code:
|
|
description: The code that a Discount is identifed by.
|
|
type: string
|
|
customer_id:
|
|
description: The id of the Customer to associate the Cart with.
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
'/carts/{id}/payment-session/update':
|
|
post:
|
|
operationId: PostCartsCartPaymentSessionUpdate
|
|
summary: Update a Payment Session
|
|
description: Updates a Payment Session with additional data.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Cart
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
cart:
|
|
$ref: '#/components/schemas/cart'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- provider_id
|
|
- data
|
|
properties:
|
|
provider_id:
|
|
type: string
|
|
description: >-
|
|
The id of the Payment Provider responsible for the Payment
|
|
Session to update.
|
|
data:
|
|
type: object
|
|
description: The data to update the payment session with.
|
|
'/customers/{id}/addresses':
|
|
post:
|
|
operationId: PostCustomersCustomerAddresses
|
|
summary: Add a Shipping Address
|
|
description: Adds a Shipping Address to a Customer's saved addresses.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The Customer id.
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
address:
|
|
description: The Address to add to the Customer.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: A successful response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
/customers:
|
|
post:
|
|
operationId: PostCustomers
|
|
summary: Create a Customer
|
|
description: Creates a Customer account.
|
|
parameters: []
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- email
|
|
- first_name
|
|
- last_name
|
|
- password
|
|
properties:
|
|
email:
|
|
type: string
|
|
description: The Customer's email address.
|
|
first_name:
|
|
type: string
|
|
description: The Customer's first name.
|
|
last_name:
|
|
type: string
|
|
description: The Customer's last name.
|
|
password:
|
|
type: string
|
|
description: The Customer's password for login.
|
|
phone:
|
|
type: string
|
|
description: The Customer's phone number.
|
|
'/customers/{id}/addresses/{address_id}':
|
|
delete:
|
|
operationId: DeleteCustomersCustomerAddressesAddress
|
|
summary: Delete an Address
|
|
description: Removes an Address from the Customer's saved addresse.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: address_id
|
|
required: true
|
|
description: The id of the Address to remove.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
post:
|
|
operationId: PostCustomersCustomerAddressesAddress
|
|
summary: Update a Shipping Address
|
|
description: Updates a Customer's saved Shipping Address.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The Customer id.
|
|
schema:
|
|
type: string
|
|
- in: path
|
|
name: address_id
|
|
required: true
|
|
description: The id of the Address to update.
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
address:
|
|
description: The updated Address.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
'/customers/{id}':
|
|
get:
|
|
operationId: GetCustomersCustomer
|
|
summary: Retrieves a Customer
|
|
description: >-
|
|
Retrieves a Customer - the Customer must be logged in to retrieve their
|
|
details.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
post:
|
|
operationId: PostCustomersCustomer
|
|
summary: Update Customer details
|
|
description: Updates a Customer's saved details.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
first_name:
|
|
description: The Customer's first name.
|
|
type: string
|
|
last_name:
|
|
description: The Customer's last name.
|
|
type: string
|
|
password:
|
|
description: The Customer's password.
|
|
type: string
|
|
phone:
|
|
description: The Customer's phone number.
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
'/customers/{id}/payment-methods':
|
|
get:
|
|
operationId: GetCustomersCustomerPaymentMethods
|
|
summary: Retrieve saved payment methods
|
|
description: >-
|
|
Retrieves a list of a Customer's saved payment methods. Payment methods
|
|
are saved with Payment Providers and it is their responsibility to fetch
|
|
saved methods.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
payment_methods:
|
|
type: array
|
|
items:
|
|
properties:
|
|
provider_id:
|
|
type: string
|
|
description: >-
|
|
The id of the Payment Provider where the payment
|
|
method is saved.
|
|
data:
|
|
type: object
|
|
description: >-
|
|
The data needed for the Payment Provider to use the
|
|
saved payment method.
|
|
'/customers/{id}/orders':
|
|
get:
|
|
operationId: GetCustomersCustomerOrders
|
|
summary: Retrieve Customer Orders
|
|
description: Retrieves a list of a Customer's Orders.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
payment_methods:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/order'
|
|
'/customers/{id}/password-token':
|
|
post:
|
|
operationId: PostCustomersCustomerPasswordToken
|
|
summary: Creates a reset password token
|
|
description: >-
|
|
Creates a reset password token to be used in a subsequent
|
|
/reset-password request. The password token should be sent out of band
|
|
e.g. via email and will not be returned.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'204':
|
|
description: OK
|
|
'/customers/{id}/reset-password':
|
|
post:
|
|
operationId: PostCustomersCustomerResetPassword
|
|
summary: Resets Customer password
|
|
description: >-
|
|
Resets a Customer's password using a password token created by a
|
|
previous /password-token request.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Customer.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Customer
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- email
|
|
- token
|
|
- password
|
|
properties:
|
|
email:
|
|
type: string
|
|
description: The Customer's email.
|
|
token:
|
|
type: string
|
|
description: The password token created by a /password-token request.
|
|
password:
|
|
type: string
|
|
description: The new password to set for the Customer.
|
|
'/orders/cart/{cart_id}':
|
|
get:
|
|
operationId: GetOrdersOrderCartId
|
|
summary: Retrieves Order by Cart id
|
|
description: >-
|
|
Retrieves an Order by the id of the Cart that was used to create the
|
|
Order.
|
|
parameters:
|
|
- in: path
|
|
name: cart_id
|
|
required: true
|
|
description: The id of Cart.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Order
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
order:
|
|
$ref: '#/components/schemas/order'
|
|
'/orders/{id}':
|
|
get:
|
|
operationId: GetOrdersOrder
|
|
summary: Retrieves an Order
|
|
description: Retrieves an Order
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Order.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Order
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
'/products/{id}':
|
|
get:
|
|
operationId: GetProductsProduct
|
|
summary: Retrieves a Product
|
|
description: Retrieves a Product.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Product.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Product
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
product:
|
|
$ref: '#/components/schemas/product'
|
|
/products:
|
|
get:
|
|
operationId: GetProducts
|
|
summary: List Products
|
|
description: Retrieves a list of Products.
|
|
tags:
|
|
- Product
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
count:
|
|
description: The total number of Products.
|
|
type: integer
|
|
offset:
|
|
description: The offset for pagination.
|
|
type: integer
|
|
limit:
|
|
description: 'The maxmimum number of Products to return,'
|
|
type: integer
|
|
products:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product'
|
|
'/regions/{id}':
|
|
get:
|
|
operationId: GetRegionsRegion
|
|
summary: Retrieves a Region
|
|
description: Retrieves a Region.
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
description: The id of the Region.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Region
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
region:
|
|
$ref: '#/components/schemas/region'
|
|
/regions:
|
|
get:
|
|
operationId: GetRegions
|
|
summary: List Regions
|
|
description: Retrieves a list of Regions.
|
|
tags:
|
|
- Region
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
count:
|
|
description: The total number of regions.
|
|
type: integer
|
|
offset:
|
|
description: The offset for pagination.
|
|
type: integer
|
|
limit:
|
|
description: 'The maxmimum number of regions to return,'
|
|
type: integer
|
|
regions:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/region'
|
|
/shipping-options:
|
|
get:
|
|
operationId: GetShippingOptions
|
|
summary: Retrieve Shipping Options
|
|
description: Retrieves a list of Shipping Options.
|
|
parameters:
|
|
- in: query
|
|
name: product_ids
|
|
description: A comma separated list of Product ids to filter Shipping Options by.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: region_id
|
|
description: the Region to retrieve Shipping Options from.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Shipping Option
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
shipping_options:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_option'
|
|
'/shipping-options/{cart_id}':
|
|
get:
|
|
operationId: GetShippingOptionsCartId
|
|
summary: Retrieve Shipping Options for Cart
|
|
description: Retrieves a list of Shipping Options available to a cart.
|
|
parameters:
|
|
- in: path
|
|
name: cart_id
|
|
required: true
|
|
description: The id of the Cart.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Shipping Option
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
shipping_options:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_option'
|
|
'/swaps/{cart_id}':
|
|
get:
|
|
operationId: GetSwapsSwapCartId
|
|
summary: Retrieve Swap by Cart id
|
|
description: Retrieves a Swap by the id of the Cart used to confirm the Swap.
|
|
parameters:
|
|
- in: path
|
|
name: cart_id
|
|
required: true
|
|
description: The id of the Cart
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Swap
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
swap:
|
|
$ref: '#/components/schemas/swap'
|
|
'/variants/{variant_id}':
|
|
get:
|
|
operationId: GetVariantsVariant
|
|
summary: Retrieve a Product Variant
|
|
description: Retrieves a Product Variant by id
|
|
parameters:
|
|
- in: path
|
|
name: variant_id
|
|
required: true
|
|
description: The id of the Product Variant.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Product Variant
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
variant:
|
|
$ref: '#/components/schemas/product_variant'
|
|
/variants:
|
|
get:
|
|
operationId: GetVariants
|
|
summary: Retrieve Product Variants
|
|
description: Retrieves a list of Product Variants
|
|
parameters:
|
|
- in: query
|
|
name: ids
|
|
description: A comma separated list of Product Variant ids to filter by.
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Product Variant
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
properties:
|
|
variants:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product_variant'
|
|
components:
|
|
schemas:
|
|
address:
|
|
title: Address
|
|
description: An address.
|
|
x-resourceId: address
|
|
properties:
|
|
id:
|
|
type: string
|
|
customer_id:
|
|
type: string
|
|
company:
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
address_1:
|
|
type: string
|
|
address_2:
|
|
type: string
|
|
city:
|
|
type: string
|
|
country_code:
|
|
type: string
|
|
country:
|
|
$ref: '#/components/schemas/country'
|
|
cart:
|
|
title: Cart
|
|
description: Represents a user cart
|
|
x-resourceId: cart
|
|
properties:
|
|
id:
|
|
type: string
|
|
email:
|
|
type: string
|
|
billing_address_id:
|
|
type: string
|
|
billing_address:
|
|
$ref: '#/components/schemas/address'
|
|
shipping_address_id:
|
|
type: string
|
|
shipping_address:
|
|
$ref: '#/components/schemas/address'
|
|
items:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/line_item'
|
|
region_id:
|
|
type: string
|
|
region:
|
|
$ref: '#/components/schemas/region'
|
|
discounts:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/region'
|
|
gift_cards:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/gift_card'
|
|
customer_id:
|
|
type: string
|
|
customer:
|
|
$ref: '#/components/schemas/customer'
|
|
payment_session:
|
|
$ref: '#/components/schemas/payment_session'
|
|
payment_sessions:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/payment_session'
|
|
payment:
|
|
$ref: '#/components/schemas/payment'
|
|
shipping_methods:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_method'
|
|
type:
|
|
type: string
|
|
enum:
|
|
- default
|
|
- swap
|
|
- payment_link
|
|
completed_at:
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|
|
shipping_total:
|
|
type: integer
|
|
discount_total:
|
|
type: integer
|
|
tax_total:
|
|
type: integer
|
|
subtotal:
|
|
type: integer
|
|
refundable_amount:
|
|
type: integer
|
|
gift_card_total:
|
|
type: integer
|
|
claim_image:
|
|
title: Claim Image
|
|
description: Represents photo documentation of a claim.
|
|
x-resourceId: claim_image
|
|
properties:
|
|
id:
|
|
type: string
|
|
claim_item_id:
|
|
type: string
|
|
url:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|
|
claim_item:
|
|
title: Claim Item
|
|
description: >-
|
|
Represents a claimed item along with information about the reasons for
|
|
the claim.
|
|
x-resourceId: claim_item
|
|
properties:
|
|
id:
|
|
type: string
|
|
images:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/claim_image'
|
|
claim_order_id:
|
|
type: string
|
|
item_id:
|
|
type: string
|
|
item:
|
|
description: The Line Item that the claim refers to
|
|
$ref: '#/components/schemas/line_item'
|
|
variant_id:
|
|
type: string
|
|
variant:
|
|
description: The Product Variant that is claimed.
|
|
$ref: '#/components/schemas/product_variant'
|
|
reason:
|
|
description: The reason for the claim
|
|
type: string
|
|
enum:
|
|
- missing_item
|
|
- wrong_item
|
|
- production_failure
|
|
- other
|
|
note:
|
|
description: 'An optional note about the claim, for additional information'
|
|
type: string
|
|
quantity:
|
|
description: >-
|
|
The quantity of the item that is being claimed; must be less than or
|
|
equal to the amount purchased in the original order.
|
|
type: integer
|
|
tags:
|
|
description: User defined tags for easy filtering and grouping.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/claim_tag'
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|
|
claim_order:
|
|
title: Claim Order
|
|
description: >-
|
|
Claim Orders represent a group of faulty or missing items. Each claim
|
|
order consists of a subset of items associated with an original order,
|
|
and can contain additional information about fulfillments and returns.
|
|
x-resourceId: claim_order
|
|
properties:
|
|
id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum:
|
|
- refund
|
|
- replace
|
|
payment_status:
|
|
type: string
|
|
enum:
|
|
- na
|
|
- not_refunded
|
|
- refunded
|
|
fulfillment_status:
|
|
type: string
|
|
enum:
|
|
- not_fulfilled
|
|
- partially_fulfilled
|
|
- fulfilled
|
|
- partially_shipped
|
|
- shipped
|
|
- partially_returned
|
|
- returned
|
|
- canceled
|
|
- requires_action
|
|
claim_items:
|
|
description: The items that have been claimed
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/claim_item'
|
|
additional_items:
|
|
description: >-
|
|
Refers to the new items to be shipped when the claim order has the
|
|
type `replace`
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/line_item'
|
|
order_id:
|
|
description: The id of the order that the claim comes from.
|
|
type: string
|
|
return_order:
|
|
description: Holds information about the return if the claim is to be returned
|
|
$ref: '#/components/schemas/return'
|
|
shipping_address_id:
|
|
description: The id of the address that the new items should be shipped to
|
|
type: string
|
|
shipping_address:
|
|
description: The address that the new items should be shipped to
|
|
$ref: '#/components/schemas/address'
|
|
shipping_methods:
|
|
description: The shipping methods that the claim order will be shipped with.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_method'
|
|
fulfillments:
|
|
description: The fulfillments of the new items to be shipped
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/fulfillment'
|
|
refund_amount:
|
|
description: The amount that will be refunded in conjunction with the claim
|
|
type: integer
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|
|
claim_tag:
|
|
title: Claim Tag
|
|
description: >-
|
|
Claim Tags are user defined tags that can be assigned to claim items for
|
|
easy filtering and grouping.
|
|
x-resourceId: claim_tag
|
|
properties:
|
|
id:
|
|
description: The id of the claim tag. Will be prefixed by `ctag_`.
|
|
type: string
|
|
value:
|
|
description: The value that the claim tag holds
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
update_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
country:
|
|
title: Country
|
|
description: Country details
|
|
x-resourceId: country
|
|
properties:
|
|
id:
|
|
description: The database id of the country
|
|
type: integer
|
|
iso_2:
|
|
description: The 2 character ISO code for the country.
|
|
type: string
|
|
iso_3:
|
|
description: The 3 character ISO code for the country.
|
|
type: string
|
|
num_code:
|
|
description: The numerical ISO code for the country.
|
|
type: string
|
|
name:
|
|
description: The normalized country name; in upper case.
|
|
type: string
|
|
display_name:
|
|
description: The country name appropriate for display.
|
|
type: string
|
|
currency:
|
|
title: Currency
|
|
description: Currency
|
|
x-resourceId: currency
|
|
properties:
|
|
code:
|
|
description: The 3 character ISO code for the currency.
|
|
type: string
|
|
symbol:
|
|
description: The symbol used to indicate the currency.
|
|
type: string
|
|
symbol_native:
|
|
description: The native symbol used to indicate the currency.
|
|
type: string
|
|
name:
|
|
description: The written name of the currency
|
|
type: string
|
|
customer:
|
|
title: Customer
|
|
description: Represents a customer
|
|
x-resourceId: customer
|
|
properties:
|
|
id:
|
|
type: string
|
|
email:
|
|
type: string
|
|
billing_address_id:
|
|
type: string
|
|
billing_address:
|
|
description: The Customer's billing address.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
shipping_addresses:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/address'
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
phone:
|
|
type: string
|
|
has_account:
|
|
type: boolean
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|
|
discount_rule:
|
|
title: Discount Rule
|
|
description: >-
|
|
Holds the rules that governs how a Discount is calculated when applied
|
|
to a Cart.
|
|
x-resourceId: discount_rule
|
|
properties:
|
|
id:
|
|
description: The id of the Discount Rule. Will be prefixed by `dru_`.
|
|
type: string
|
|
type:
|
|
description: >-
|
|
The type of the Discount, can be `fixed` for discounts that reduce
|
|
the price by a fixed amount, `percentage` for percentage reductions
|
|
or `free_shipping` for shipping vouchers.
|
|
type: string
|
|
enum:
|
|
- fixed
|
|
- percentage
|
|
- free_shipping
|
|
description:
|
|
description: A short description of the discount
|
|
type: string
|
|
value:
|
|
description: >-
|
|
The value that the discount represents; this will depend on the type
|
|
of the discount
|
|
type: integer
|
|
allocation:
|
|
description: The scope that the discount should apply to.
|
|
type: string
|
|
enum:
|
|
- total
|
|
- item
|
|
valid_for:
|
|
description: A set of Products that the discount can be used for.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product'
|
|
usage_limit:
|
|
description: The maximum number of times that a discount can be used.
|
|
type: integer
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
update_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
discount:
|
|
title: Discount
|
|
description: >-
|
|
Represents a discount that can be applied to a cart for promotional
|
|
purposes.
|
|
x-resourceId: discount
|
|
properties:
|
|
id:
|
|
description: The id of the Discount. Will be prefixed by `disc_`.
|
|
type: string
|
|
code:
|
|
description: >-
|
|
A unique code for the discount - this will be used by the customer
|
|
to apply the discount
|
|
type: string
|
|
is_dynamic:
|
|
description: >-
|
|
A flag to indicate if multiple instances of the discount can be
|
|
generated. I.e. for newsletter discounts
|
|
type: boolean
|
|
rule:
|
|
description: The Discount Rule that governs the behaviour of the Discount
|
|
anyOf:
|
|
- $ref: '#/components/schemas/discount_rule'
|
|
is_disabled:
|
|
description: >-
|
|
Whether the Discount has been disabled. Disabled discounts cannot be
|
|
applied to carts
|
|
type: boolean
|
|
parent_discount_id:
|
|
description: >-
|
|
The Discount that the discount was created from. This will always be
|
|
a dynamic discount
|
|
type: string
|
|
starts_at:
|
|
description: The time at which the discount can be used.
|
|
type: string
|
|
format: date-time
|
|
ends_at:
|
|
description: The time at which the discount can no longer be used.
|
|
type: string
|
|
format: date-time
|
|
regions:
|
|
description: The Regions in which the Discount can be used
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/region'
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
fulfillment_item:
|
|
title: Fulfillment Item
|
|
description: >-
|
|
Correlates a Line Item with a Fulfillment, keeping track of the quantity
|
|
of the Line Item.
|
|
x-resourceId: fulfillment_item
|
|
properties:
|
|
fulfillment_id:
|
|
description: The id of the Fulfillment that the Fulfillment Item belongs to.
|
|
type: string
|
|
item_id:
|
|
description: The id of the Line Item that the Fulfillment Item references.
|
|
type: string
|
|
item:
|
|
description: The Line Item that the Fulfillment Item references.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/line_item'
|
|
quantity:
|
|
description: The quantity of the Line Item that is included in the Fulfillment.
|
|
type: integer
|
|
fulfillment_provider:
|
|
title: Fulfillment Provider
|
|
description: >-
|
|
Represents a fulfillment provider plugin and holds its installation
|
|
status.
|
|
x-resourceId: fulfillment_provider
|
|
properties:
|
|
id:
|
|
description: The id of the fulfillment provider as given by the plugin.
|
|
type: string
|
|
is_installed:
|
|
description: >-
|
|
Whether the plugin is installed in the current version. Plugins that
|
|
are no longer installed are not deleted by will have this field set
|
|
to `false`.
|
|
type: boolean
|
|
fulfillment:
|
|
title: Fulfillment
|
|
description: >-
|
|
Fulfillments are created once store operators can prepare the purchased
|
|
goods. Fulfillments will eventually be shipped and hold information
|
|
about how to track shipments. Fulfillments are created through a
|
|
provider, which is typically an external shipping aggregator, shipping
|
|
partner og 3PL, most plugins will have asynchronous communications with
|
|
these providers through webhooks in order to automatically update and
|
|
synchronize the state of Fulfillments.
|
|
x-resourceId: fulfillment
|
|
properties:
|
|
id:
|
|
description: The id of the Fulfillment. This value will be prefixed by `ful_`.
|
|
type: string
|
|
claim_order_id:
|
|
description: The id of the Claim that the Fulfillment belongs to.
|
|
type: string
|
|
swap_id:
|
|
description: The id of the Swap that the Fulfillment belongs to.
|
|
type: string
|
|
order_id:
|
|
description: The id of the Order that the Fulfillment belongs to.
|
|
type: string
|
|
provider_id:
|
|
description: >-
|
|
The id of the Fulfillment Provider responsible for handling the
|
|
fulfillment
|
|
type: string
|
|
items:
|
|
description: >-
|
|
The Fulfillment Items in the Fulfillment - these hold information
|
|
about how many of each Line Item has been fulfilled.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/fulfillment_item'
|
|
tracking_links:
|
|
description: >-
|
|
The Tracking Links that can be used to track the status of the
|
|
Fulfillment, these will usually be provided by the Fulfillment
|
|
Provider.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/tracking_link'
|
|
tracking_numbers:
|
|
deprecated: true
|
|
description: >-
|
|
The tracking numbers that can be used to track the status of the
|
|
fulfillment.
|
|
type: array
|
|
items:
|
|
type: string
|
|
shipped_at:
|
|
description: The date with timezone at which the Fulfillment was shipped.
|
|
type: string
|
|
format: date-time
|
|
canceled_at:
|
|
description: The date with timezone at which the Fulfillment was canceled.
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
gift_card_transaction:
|
|
title: Gift Card Transaction
|
|
description: >-
|
|
Gift Card Transactions are created once a Customer uses a Gift Card to
|
|
pay for their Order
|
|
x-resourceId: gift_card_transaction
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Gift Card Transaction. This value will be prefixed by
|
|
`gct_`.
|
|
type: string
|
|
gift_card_id:
|
|
description: The id of the Gift Card that was used in the transaction.
|
|
type: string
|
|
gift_card:
|
|
description: The Gift Card that was used in the transaction.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/gift_card'
|
|
order_id:
|
|
description: The id of the Order that the Gift Card was used to pay for.
|
|
type: string
|
|
amount:
|
|
description: The amount that was used from the Gift Card.
|
|
type: integer
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
gift_card:
|
|
title: Gift Card
|
|
description: >-
|
|
Gift Cards are redeemable and represent a value that can be used towards
|
|
the payment of an Order.
|
|
x-resourceId: gift_card
|
|
properties:
|
|
id:
|
|
description: The id of the Gift Card. This value will be prefixed by `gift_`.
|
|
type: string
|
|
code:
|
|
description: >-
|
|
The unique code that identifies the Gift Card. This is used by the
|
|
Customer to redeem the value of the Gift Card.
|
|
type: string
|
|
value:
|
|
description: The value that the Gift Card represents.
|
|
type: integer
|
|
balance:
|
|
description: The remaining value on the Gift Card.
|
|
type: integer
|
|
region_id:
|
|
description: The id of the Region in which the Gift Card is available.
|
|
type: string
|
|
region:
|
|
description: The Region in which the Gift Card is available.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/region'
|
|
order_id:
|
|
description: The id of the Order that the Gift Card was purchased in.
|
|
type: string
|
|
is_disabled:
|
|
description: >-
|
|
Whether the Gift Card has been disabled. Disabled Gift Cards cannot
|
|
be applied to carts.
|
|
type: boolean
|
|
ends_at:
|
|
description: The time at which the Gift Card can no longer be used.
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
image:
|
|
title: Image
|
|
description: Images holds a reference to a URL at which the image file can be found.
|
|
x-resourceId: image
|
|
properties:
|
|
id:
|
|
description: The id of the Image. This value will be prefixed by `img_`.
|
|
type: string
|
|
url:
|
|
description: The URL at which the image file can be found.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
update_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
line_item:
|
|
title: Line Item
|
|
description: >-
|
|
Line Items represent purchasable units that can be added to a Cart for
|
|
checkout. When Line Items are purchased they will get copied to the
|
|
resulting order and can eventually be referenced in Fulfillments and
|
|
Returns. Line Items may also be created when processing Swaps and
|
|
Claims.
|
|
x-resourceId: line_item
|
|
properties:
|
|
id:
|
|
description: The id of the Line Item. This value will be prefixed by `item_`.
|
|
type: string
|
|
cart_id:
|
|
description: The id of the Cart that the Line Item belongs to.
|
|
type: string
|
|
order_id:
|
|
description: The id of the Order that the Line Item belongs to.
|
|
type: string
|
|
swap_id:
|
|
description: The id of the Swap that the Line Item belongs to.
|
|
type: string
|
|
claim_order_id:
|
|
description: The id of the Claim that the Line Item belongs to.
|
|
type: string
|
|
title:
|
|
description: >-
|
|
The title of the Line Item, this should be easily identifiable by
|
|
the Customer.
|
|
type: string
|
|
description:
|
|
description: A more detailed description of the contents of the Line Item.
|
|
type: string
|
|
thumbnail:
|
|
description: A URL string to a small image of the contents of the Line Item.
|
|
type: string
|
|
is_giftcard:
|
|
description: Flag to indicate if the Line Item is a Gift Card.
|
|
type: boolean
|
|
should_merge:
|
|
description: >-
|
|
Flag to indicate if new Line Items with the same variant should be
|
|
merged or added as an additional Line Item.
|
|
type: boolean
|
|
allow_discounts:
|
|
description: >-
|
|
Flag to indicate if the Line Item should be included when doing
|
|
discount calculations.
|
|
type: boolean
|
|
unit_price:
|
|
description: >-
|
|
The price of one unit of the content in the Line Item. This should
|
|
be in the currency defined by the Cart/Order/Swap/Claim that the
|
|
Line Item belongs to.
|
|
type: boolean
|
|
variant_id:
|
|
description: The id of the Product Variant contained in the Line Item.
|
|
type: string
|
|
variant:
|
|
description: The Product Variant contained in the Line Item.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/product_variant'
|
|
quantity:
|
|
description: The quantity of the content in the Line Item.
|
|
type: integer
|
|
fulfilled_quantity:
|
|
description: The quantity of the Line Item that has been fulfilled.
|
|
type: integer
|
|
returned_quantity:
|
|
description: The quantity of the Line Item that has been returned.
|
|
type: integer
|
|
shipped_quantity:
|
|
description: The quantity of the Line Item that has been shipped.
|
|
type: integer
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
refundable:
|
|
description: >-
|
|
The amount that can be refunded from the given Line Item. Takes
|
|
taxes and discounts into consideration.
|
|
type: integer
|
|
money_amount:
|
|
title: Money Amount
|
|
description: >-
|
|
Money Amounts represents an amount that a given Product Variant can be
|
|
purcased for. Each Money Amount either has a Currency or Region
|
|
associated with it to indicate the pricing in a given Currency or, for
|
|
fully region-based pricing, the given price in a specific Region. If
|
|
region-based pricing is used the amount will be in the currency defined
|
|
for the Reigon.
|
|
x-resourceId: money_amount
|
|
properties:
|
|
id:
|
|
description: The id of the Money Amount. This value will be prefixed by `ma_`.
|
|
type: string
|
|
currency_code:
|
|
description: The 3 character currency code that the Money Amount is given in.
|
|
type: string
|
|
amount:
|
|
description: >-
|
|
The amount in the smallest currecny unit (e.g. cents 100 cents to
|
|
charge $1) that the Product Variant will cost.
|
|
type: integer
|
|
sale_amount:
|
|
description: >-
|
|
An optional sale amount that the Product Variant will be available
|
|
for when defined.
|
|
type: integer
|
|
variant_id:
|
|
description: The id of the Product Variant that the Money Amount belongs to.
|
|
type: string
|
|
region_id:
|
|
description: The id of the Region that the Money Amount is defined for.
|
|
type: string
|
|
region:
|
|
description: The Region that the Money Amount is defined for.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/region'
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
notification_provider:
|
|
title: Notification Provider
|
|
description: >-
|
|
Represents a notification provider plugin and holds its installation
|
|
status.
|
|
x-resourceId: notification_provider
|
|
properties:
|
|
id:
|
|
description: The id of the notification provider as given by the plugin.
|
|
type: string
|
|
is_installed:
|
|
description: >-
|
|
Whether the plugin is installed in the current version. Plugins that
|
|
are no longer installed are not deleted by will have this field set
|
|
to `false`.
|
|
type: boolean
|
|
notification:
|
|
title: Notification
|
|
description: >-
|
|
Notifications a communications sent via Notification Providers as a
|
|
reaction to internal events such as `order.placed`. Notifications can be
|
|
used to show a chronological timeline for communications sent to a
|
|
Customer regarding an Order, and enables resends.
|
|
x-resourceId: notification
|
|
properties:
|
|
id:
|
|
description: The id of the Notification. This value will be prefixed by `noti_`.
|
|
type: string
|
|
event_name:
|
|
description: The name of the event that the notification was sent for.
|
|
type: string
|
|
resource_type:
|
|
description: The type of resource that the Notification refers to.
|
|
type: string
|
|
resource_id:
|
|
description: The id of the resource that the Notification refers to.
|
|
type: string
|
|
customer_id:
|
|
description: The id of the Customer that the Notification was sent to.
|
|
type: string
|
|
customer:
|
|
description: The Customer that the Notification was sent to.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/customer'
|
|
to:
|
|
description: >-
|
|
The address that the Notification was sent to. This will usually be
|
|
an email address, but represent other addresses such as a chat bot
|
|
user id
|
|
type: string
|
|
data:
|
|
description: >-
|
|
The data that the Notification was sent with. This contains all the
|
|
data necessary for the Notification Provider to initiate a resend.
|
|
type: object
|
|
parent_id:
|
|
description: The id of the Notification that was originally sent.
|
|
type: string
|
|
resends:
|
|
description: >-
|
|
The resends that have been completed after the original
|
|
Notification.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/notification_resend'
|
|
provider_id:
|
|
description: The id of the Notification Provider that handles the Notification.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
notification_resend:
|
|
title: Notification Resend
|
|
description: A resend of a Notification.
|
|
x-resourceId: notification_resend
|
|
properties:
|
|
id:
|
|
description: The id of the Notification. This value will be prefixed by `noti_`.
|
|
type: string
|
|
event_name:
|
|
description: The name of the event that the notification was sent for.
|
|
type: string
|
|
resource_type:
|
|
description: The type of resource that the Notification refers to.
|
|
type: string
|
|
resource_id:
|
|
description: The id of the resource that the Notification refers to.
|
|
type: string
|
|
to:
|
|
description: >-
|
|
The address that the Notification was sent to. This will usually be
|
|
an email address, but represent other addresses such as a chat bot
|
|
user id
|
|
type: string
|
|
data:
|
|
description: >-
|
|
The data that the Notification was sent with. This contains all the
|
|
data necessary for the Notification Provider to initiate a resend.
|
|
type: object
|
|
parent_id:
|
|
description: The id of the Notification that was originally sent.
|
|
type: string
|
|
provider_id:
|
|
description: The id of the Notification Provider that handles the Notification.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
order:
|
|
title: Order
|
|
description: Represents an order
|
|
x-resourceId: order
|
|
properties:
|
|
id:
|
|
type: string
|
|
status:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- completed
|
|
- archived
|
|
- canceled
|
|
- requires_action
|
|
fulfillment_status:
|
|
type: string
|
|
enum:
|
|
- not_fulfilled
|
|
- partially_fulfilled
|
|
- fulfilled
|
|
- partially_shipped
|
|
- shipped
|
|
- partially_returned
|
|
- returned
|
|
- canceled
|
|
- requires_action
|
|
payment_status:
|
|
type: string
|
|
enum:
|
|
- not_paid
|
|
- awaiting
|
|
- captured
|
|
- partially_refunded
|
|
- refuneded
|
|
- canceled
|
|
- requires_action
|
|
display_id:
|
|
type: integer
|
|
cart_id:
|
|
type: string
|
|
currency_code:
|
|
type: string
|
|
tax_rate:
|
|
type: integer
|
|
discounts:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/discount'
|
|
email:
|
|
type: string
|
|
billing_address_id:
|
|
type: string
|
|
billing_address:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
shipping_address_id:
|
|
type: string
|
|
shipping_address:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
items:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/line_item'
|
|
region_id:
|
|
type: string
|
|
region:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/region'
|
|
gift_cards:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/gift_card'
|
|
customer_id:
|
|
type: string
|
|
customer:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/customer'
|
|
payment_session:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/payment_session'
|
|
payment_sessions:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/payment_session'
|
|
payments:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/payment'
|
|
shipping_methods:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_method'
|
|
fulfillments:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/fulfillment'
|
|
returns:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/return'
|
|
claims:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/claim_order'
|
|
refunds:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/refund'
|
|
swaps:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/refund'
|
|
gift_card_transactions:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/gift_card_transaction'
|
|
canceled_at:
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
update_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|
|
shipping_total:
|
|
type: integer
|
|
discount_total:
|
|
type: integer
|
|
tax_total:
|
|
type: integer
|
|
subtotal:
|
|
type: integer
|
|
refundable_amount:
|
|
type: integer
|
|
gift_card_total:
|
|
type: integer
|
|
payment_provider:
|
|
title: Payment Provider
|
|
description: Represents a Payment Provider plugin and holds its installation status.
|
|
x-resourceId: payment_provider
|
|
properties:
|
|
id:
|
|
description: The id of the payment provider as given by the plugin.
|
|
type: string
|
|
is_installed:
|
|
description: >-
|
|
Whether the plugin is installed in the current version. Plugins that
|
|
are no longer installed are not deleted by will have this field set
|
|
to `false`.
|
|
type: boolean
|
|
payment_session:
|
|
title: Payment Session
|
|
description: >-
|
|
Payment Sessions are created when a Customer initilizes the checkout
|
|
flow, and can be used to hold the state of a payment flow. Each Payment
|
|
Session is controlled by a Payment Provider, who is responsible for the
|
|
communication with external payment services. Authorized Payment
|
|
Sessions will eventually get promoted to Payments to indicate that they
|
|
are authorized for capture/refunds/etc.
|
|
x-resourceId: payment_session
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Payment Session. This value will be prefixed with
|
|
`ps_`.
|
|
type: string
|
|
cart_id:
|
|
description: The id of the Cart that the Payment Session is created for.
|
|
type: string
|
|
provider_id:
|
|
description: >-
|
|
The id of the Payment Provider that is responsible for the Payment
|
|
Session
|
|
type: string
|
|
is_selected:
|
|
description: >-
|
|
A flag to indicate if the Payment Session has been selected as the
|
|
method that will be used to complete the purchase.
|
|
type: boolean
|
|
status:
|
|
description: >-
|
|
Indicates the status of the Payment Session. Will default to
|
|
`pending`, and will eventually become `authorized`. Payment Sessions
|
|
may have the status of `requires_more` to indicate that further
|
|
actions are to be completed by the Customer.
|
|
type: string
|
|
enum:
|
|
- authorized
|
|
- pending
|
|
- requires_more
|
|
- error
|
|
- canceled
|
|
data:
|
|
description: >-
|
|
The data required for the Payment Provider to identify, modify and
|
|
process the Payment Session. Typically this will be an object that
|
|
holds an id to the external payment session, but can be an empty
|
|
object if the Payment Provider doesn't hold any state.
|
|
type: object
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
payment:
|
|
title: Payment
|
|
description: >-
|
|
Payments represent an amount authorized with a given payment method,
|
|
Payments can be captured, canceled or refunded.
|
|
x-resourceId: payment
|
|
properties:
|
|
id:
|
|
description: The id of the Payment. This value will be prefixed with `pay_`.
|
|
type: string
|
|
swap_id:
|
|
description: The id of the Swap that the Payment is used for.
|
|
type: string
|
|
order_id:
|
|
description: The id of the Order that the Payment is used for.
|
|
type: string
|
|
cart_id:
|
|
description: The id of the Cart that the Payment Session is created for.
|
|
type: string
|
|
amount:
|
|
description: The amount that the Payment has been authorized for.
|
|
type: integer
|
|
currency_code:
|
|
description: The 3 character ISO currency code that the Payment is completed in.
|
|
type: string
|
|
amount_refunded:
|
|
description: >-
|
|
The amount of the original Payment amount that has been refunded
|
|
back to the Customer.
|
|
type: integer
|
|
provider_id:
|
|
description: The id of the Payment Provider that is responsible for the Payment
|
|
type: string
|
|
data:
|
|
description: >-
|
|
The data required for the Payment Provider to identify, modify and
|
|
process the Payment. Typically this will be an object that holds an
|
|
id to the external payment session, but can be an empty object if
|
|
the Payment Provider doesn't hold any state.
|
|
type: object
|
|
captured_at:
|
|
description: The date with timezone at which the Payment was captured.
|
|
type: string
|
|
format: date-time
|
|
canceled_at:
|
|
description: The date with timezone at which the Payment was canceled.
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product_collection:
|
|
title: Product Collection
|
|
description: Product Collections represents a group of Products that are related.
|
|
x-resourceId: product_collection
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Product Collection. This value will be prefixed with
|
|
`pcol_`.
|
|
type: string
|
|
title:
|
|
description: The title that the Product Collection is identified by.
|
|
type: string
|
|
handle:
|
|
description: >-
|
|
A unique string that identifies the Product Collection - can for
|
|
example be used in slug structures.
|
|
type: string
|
|
products:
|
|
description: The Products contained in the Product Collection.
|
|
type: array
|
|
items:
|
|
type: object
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product_option_value:
|
|
title: Product Option Value
|
|
description: >-
|
|
A value given to a Product Variant's option set. Product Variant have a
|
|
Product Option Value for each of the Product Options defined on the
|
|
Product.
|
|
x-resourceId: product_option_value
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Product Option Value. This value will be prefixed with
|
|
`optval_`.
|
|
type: string
|
|
value:
|
|
description: >-
|
|
The value that the Product Variant has defined for the specific
|
|
Product Option (e.g. if the Product Option is "Size" this value
|
|
could be "Small", "Medium" or "Large").
|
|
type: string
|
|
option_id:
|
|
description: >-
|
|
The id of the Product Option that the Product Option Value is
|
|
defined for.
|
|
type: string
|
|
variant_id:
|
|
description: >-
|
|
The id of the Product Variant that the Product Option Value is
|
|
defined for.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product_option:
|
|
title: Product Option
|
|
description: >-
|
|
Product Options define properties that may vary between different
|
|
variants of a Product. Common Product Options are "Size" and "Color",
|
|
but Medusa doesn't limit what Product Options that can be defined.
|
|
x-resourceId: product_option
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Product Option. This value will be prefixed with
|
|
`opt_`.
|
|
type: string
|
|
title:
|
|
description: The title that the Product Option is defined by (e.g. "Size").
|
|
type: string
|
|
values:
|
|
description: The Product Option Values that are defined for the Product Option.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product_option_value'
|
|
product_id:
|
|
description: The id of the Product that the Product Option is defined for.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product_tag:
|
|
title: Product Tag
|
|
description: Product Tags can be added to Products for easy filtering and grouping.
|
|
x-resourceId: product_tag
|
|
properties:
|
|
id:
|
|
description: The id of the Product Tag. This value will be prefixed with `ptag_`.
|
|
type: string
|
|
value:
|
|
description: The value that the Product Tag represents (e.g. "Pants").
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product_type:
|
|
title: Product Type
|
|
description: >-
|
|
Product Type can be added to Products for filtering and reporting
|
|
purposes.
|
|
x-resourceId: product_type
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Product Type. This value will be prefixed with
|
|
`ptyp_`.
|
|
type: string
|
|
value:
|
|
description: The value that the Product Type represents (e.g. "Clothing").
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product_variant:
|
|
title: Product Variant
|
|
description: >-
|
|
Product Variants represent a Product with a specific set of Product
|
|
Option configurations. The maximum number of Product Variants that a
|
|
Product can have is given by the number of available Product Option
|
|
combinations.
|
|
x-resourceId: product_variant
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Product Variant. This value will be prefixed with
|
|
`variant_`.
|
|
type: string
|
|
title:
|
|
description: >-
|
|
A title that can be displayed for easy identification of the Product
|
|
Variant.
|
|
type: string
|
|
product_id:
|
|
description: The id of the Product that the Product Variant belongs to.
|
|
type: string
|
|
prices:
|
|
description: >-
|
|
The Money Amounts defined for the Product Variant. Each Money Amount
|
|
represents a price in a given currency or a price in a specific
|
|
Region.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/money_amount'
|
|
sku:
|
|
description: >-
|
|
The unique stock keeping unit used to identify the Product Variant.
|
|
This will usually be a unqiue identifer for the item that is to be
|
|
shipped, and can be referenced across multiple systems.
|
|
type: string
|
|
barcode:
|
|
description: >-
|
|
A generic field for a GTIN number that can be used to identify the
|
|
Product Variant.
|
|
type: string
|
|
ean:
|
|
description: >-
|
|
An EAN barcode number that can be used to identify the Product
|
|
Variant.
|
|
type: string
|
|
upc:
|
|
description: >-
|
|
A UPC barcode number that can be used to identify the Product
|
|
Variant.
|
|
type: string
|
|
inventory_quantity:
|
|
description: The current quantity of the item that is stocked.
|
|
type: integer
|
|
allow_backorder:
|
|
description: >-
|
|
Whether the Product Variant should be purchasable when
|
|
`inventory_quantity` is 0.
|
|
type: boolean
|
|
manage_inventory:
|
|
description: Whether Medusa should manage inventory for the Product Variant.
|
|
type: boolean
|
|
hs_code:
|
|
description: >-
|
|
The Harmonized System code of the Product Variant. May be used by
|
|
Fulfillment Providers to pass customs information to shipping
|
|
carriers.
|
|
type: string
|
|
origin_country:
|
|
description: >-
|
|
The country in which the Product Variant was produced. May be used
|
|
by Fulfillment Providers to pass customs information to shipping
|
|
carriers.
|
|
type: string
|
|
mid_code:
|
|
description: >-
|
|
The Manufacturers Identification code that identifies the
|
|
manufacturer of the Product Variant. May be used by Fulfillment
|
|
Providers to pass customs information to shipping carriers.
|
|
type: string
|
|
material:
|
|
description: >-
|
|
The material and composition that the Product Variant is made of,
|
|
May be used by Fulfillment Providers to pass customs information to
|
|
shipping carriers.
|
|
type: string
|
|
weight:
|
|
description: >-
|
|
The weight of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
height:
|
|
description: >-
|
|
The height of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
width:
|
|
description: >-
|
|
The width of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
length:
|
|
description: >-
|
|
The length of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
options:
|
|
description: The Product Option Values specified for the Product Variant.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product_option_value'
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
product:
|
|
title: Product
|
|
description: >-
|
|
Products are a grouping of Product Variants that have common properties
|
|
such as images and descriptions. Products can have multiple options
|
|
which define the properties that Product Variants differ by.
|
|
x-resourceId: product
|
|
properties:
|
|
id:
|
|
description: The id of the Product. This value will be prefixed with `prod_`.
|
|
type: string
|
|
title:
|
|
description: >-
|
|
A title that can be displayed for easy identification of the
|
|
Product.
|
|
type: string
|
|
subtitle:
|
|
description: >-
|
|
An optional subtitle that can be used to further specify the
|
|
Product.
|
|
type: string
|
|
description:
|
|
description: A short description of the Product.
|
|
type: string
|
|
handle:
|
|
description: A unique identifier for the Product (e.g. for slug structure).
|
|
type: string
|
|
is_giftcard:
|
|
description: >-
|
|
Whether the Product represents a Gift Card. Products that represent
|
|
Gift Cards will automatically generate a redeemable Gift Card code
|
|
once they are purchased.
|
|
type: boolean
|
|
images:
|
|
description: Images of the Product
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/image'
|
|
thumbnail:
|
|
description: A URL to an image file that can be used to identify the Product.
|
|
type: string
|
|
options:
|
|
description: >-
|
|
The Product Options that are defined for the Product. Product
|
|
Variants of the Product will have a unique combination of Product
|
|
Option Values.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product_option'
|
|
variants:
|
|
description: >-
|
|
The Product Variants that belong to the Product. Each will have a
|
|
unique combination of Product Option Values.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product_variant'
|
|
profile_id:
|
|
description: >-
|
|
The id of the Shipping Profile that the Product belongs to. Shipping
|
|
Profiles have a set of defined Shipping Options that can be used to
|
|
Fulfill a given set of Products.
|
|
type: string
|
|
hs_code:
|
|
description: >-
|
|
The Harmonized System code of the Product Variant. May be used by
|
|
Fulfillment Providers to pass customs information to shipping
|
|
carriers.
|
|
type: string
|
|
origin_country:
|
|
description: >-
|
|
The country in which the Product Variant was produced. May be used
|
|
by Fulfillment Providers to pass customs information to shipping
|
|
carriers.
|
|
type: string
|
|
mid_code:
|
|
description: >-
|
|
The Manufacturers Identification code that identifies the
|
|
manufacturer of the Product Variant. May be used by Fulfillment
|
|
Providers to pass customs information to shipping carriers.
|
|
type: string
|
|
material:
|
|
description: >-
|
|
The material and composition that the Product Variant is made of,
|
|
May be used by Fulfillment Providers to pass customs information to
|
|
shipping carriers.
|
|
type: string
|
|
weight:
|
|
description: >-
|
|
The weight of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
height:
|
|
description: >-
|
|
The height of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
width:
|
|
description: >-
|
|
The width of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
length:
|
|
description: >-
|
|
The length of the Product Variant. May be used in shipping rate
|
|
calculations.
|
|
type: string
|
|
type:
|
|
description: The Product Type of the Product (e.g. "Clothing")
|
|
anyOf:
|
|
- $ref: '#/components/schemas/product_type'
|
|
collection:
|
|
description: The Product Collection that the Product belongs to (e.g. "SS20")
|
|
anyOf:
|
|
- $ref: '#/components/schemas/product_collection'
|
|
tags:
|
|
description: The Product Tags assigned to the Product.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product_tag'
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
refund:
|
|
title: Refund
|
|
description: >-
|
|
Refund represent an amount of money transfered back to the Customer for
|
|
a given reason. Refunds may occur in relation to Returns, Swaps and
|
|
Claims, but can also be initiated by a store operator.
|
|
x-resourceId: refund
|
|
properties:
|
|
id:
|
|
description: The id of the Refund. This value will be prefixed with `ref_`.
|
|
type: string
|
|
order_id:
|
|
description: The id of the Order that the Refund is related to.
|
|
type: string
|
|
amount:
|
|
description: The amount that has be refunded to the Customer.
|
|
type: integer
|
|
note:
|
|
description: An optional note explaining why the amount was refunded.
|
|
type: string
|
|
reason:
|
|
description: >-
|
|
The reason given for the Refund, will automatically be set when
|
|
processed as part of a Swap, Claim or Return.
|
|
type: string
|
|
enum:
|
|
- discount
|
|
- return
|
|
- swap
|
|
- claim
|
|
- other
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
region:
|
|
title: Region
|
|
description: >-
|
|
Regions hold settings for how Customers in a given geographical location
|
|
shop. The is, for example, where currencies and tax rates are defined. A
|
|
Region can consist of multiple countries to accomodate common shopping
|
|
settings across countries.
|
|
x-resourceId: region
|
|
properties:
|
|
id:
|
|
description: The id of the Region. This value will be prefixed with `reg_`.
|
|
type: string
|
|
name:
|
|
description: >-
|
|
The name of the region as displayed to the customer. If the Region
|
|
only has one country it is recommended to write the country name.
|
|
type: string
|
|
currency_code:
|
|
description: >-
|
|
The 3 character ISO currency code that Customers will shop in in the
|
|
Region.
|
|
type: string
|
|
tax_rate:
|
|
description: The tax rate that should be charged on purchases in the Region.
|
|
type: number
|
|
tax_code:
|
|
description: >-
|
|
The tax code used on purchases in the Region. This may be used by
|
|
other systems for accounting purposes.
|
|
type: string
|
|
countries:
|
|
description: The countries that are included in the Region.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/country'
|
|
payment_providers:
|
|
description: >-
|
|
The Payment Providers that can be used to process Payments in the
|
|
Region.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/payment_provider'
|
|
fulfillment_providers:
|
|
description: >-
|
|
The Fulfillment Providers that can be used to fulfill orders in the
|
|
Region.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/fulfillment_provider'
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
return_item:
|
|
title: Return Item
|
|
description: >-
|
|
Correlates a Line Item with a Return, keeping track of the quantity of
|
|
the Line Item that will be returned.
|
|
x-resourceId: return_item
|
|
properties:
|
|
return_id:
|
|
description: The id of the Return that the Return Item belongs to.
|
|
type: string
|
|
item_id:
|
|
description: The id of the Line Item that the Return Item references.
|
|
type: string
|
|
item:
|
|
description: The Line Item that the Return Item references.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/line_item'
|
|
quantity:
|
|
description: The quantity of the Line Item that is included in the Return.
|
|
type: integer
|
|
is_requested:
|
|
description: >-
|
|
Whether the Return Item was requested initially or received
|
|
unexpectedly in the warehouse.
|
|
type: boolean
|
|
requested_quantity:
|
|
description: The quantity that was originally requested to be returned.
|
|
type: integer
|
|
recieved_quantity:
|
|
description: The quantity that was received in the warehouse.
|
|
type: integer
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
return:
|
|
title: Return
|
|
description: >-
|
|
Return orders hold information about Line Items that a Customer wishes
|
|
to send back, along with how the items will be returned. Returns can be
|
|
used as part of a Swap.
|
|
x-resourceId: return
|
|
properties:
|
|
id:
|
|
description: The id of the Return. This value will be prefixed with `ret_`.
|
|
type: string
|
|
status:
|
|
description: Status of the Return.
|
|
type: string
|
|
enum:
|
|
- requested
|
|
- received
|
|
- requires_action
|
|
items:
|
|
description: >-
|
|
The Return Items that will be shipped back to the warehouse. type:
|
|
array items: $ref:
|
|
swap_id:
|
|
description: The id of the Swap that the Return is a part of.
|
|
type: string
|
|
order_id:
|
|
description: The id of the Order that the Return is made from.
|
|
type: string
|
|
claim_order_id:
|
|
description: The id of the Claim that the Return is a part of.
|
|
type: string
|
|
shipping_method:
|
|
description: >-
|
|
The Shipping Method that will be used to send the Return back. Can
|
|
be null if the Customer facilitates the return shipment themselves.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/shipping_method'
|
|
shipping_data:
|
|
description: >-
|
|
Data about the return shipment as provided by the Fulfilment
|
|
Provider that handles the return shipment.
|
|
type: object
|
|
refund_amount:
|
|
description: The amount that should be refunded as a result of the return.
|
|
type: integer
|
|
received_at:
|
|
description: The date with timezone at which the return was received.
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
shipping_method:
|
|
title: Shipping Method
|
|
description: >-
|
|
Shipping Methods represent a way in which an Order or Return can be
|
|
shipped. Shipping Methods are built from a Shipping Option, but may
|
|
contain additional details, that can be necessary for the Fulfillment
|
|
Provider to handle the shipment.
|
|
x-resourceId: shipping_method
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Shipping Method. This value will be prefixed with
|
|
`sm_`.
|
|
type: string
|
|
shipping_option_id:
|
|
description: >-
|
|
The id of the Shipping Option that the Shipping Method is built
|
|
from.
|
|
type: string
|
|
shipping_option:
|
|
description: The Shipping Option that the Shipping Method is built from.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/shipping_option'
|
|
order_id:
|
|
description: The id of the Order that the Shipping Method is used on.
|
|
type: string
|
|
return_id:
|
|
description: The id of the Return that the Shipping Method is used on.
|
|
type: string
|
|
swap_id:
|
|
description: The id of the Swap that the Shipping Method is used on.
|
|
type: string
|
|
cart_id:
|
|
description: The id of the Cart that the Shipping Method is used on.
|
|
type: string
|
|
claim_order_id:
|
|
description: The id of the Claim that the Shipping Method is used on.
|
|
type: string
|
|
price:
|
|
description: >-
|
|
The amount to charge for the Shipping Method. The currency of the
|
|
price is defined by the Region that the Order that the Shipping
|
|
Method belongs to is a part of.
|
|
type: integer
|
|
data:
|
|
description: >-
|
|
Additional data that the Fulfillment Provider needs to fulfill the
|
|
shipment. This is used in combination with the Shipping Options
|
|
data, and may contain information such as a drop point id.
|
|
type: object
|
|
shipping_option_requirement:
|
|
title: Shipping Option Requirement
|
|
description: >-
|
|
A requirement that a Cart must satisfy for the Shipping Option to be
|
|
available to the Cart.
|
|
x-resourceId: shipping_option_requirement
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Shipping Option Requirement. This value will be
|
|
prefixed with `sor_`.
|
|
type: string
|
|
shipping_option_id:
|
|
description: >-
|
|
The id of the Shipping Option that the Shipping Option Requirement
|
|
belongs to.
|
|
type: string
|
|
type:
|
|
description: >-
|
|
The type of the requirement, this defines how the value will be
|
|
compared to the Cart's total. `min_subtotal` requirements define the
|
|
minimum subtotal that is needed for the Shipping Option to be
|
|
available, while the `max_subtotal` defines the maximum subtotal
|
|
that the Cart can have for the Shipping Option to be available.
|
|
type: string
|
|
enum:
|
|
- min_subtotal
|
|
- max_subtotal
|
|
amount:
|
|
description: The amount to compare the Cart subtotal to.
|
|
type: integer
|
|
shipping_option:
|
|
title: Shipping Option
|
|
description: >-
|
|
Shipping Options represent a way in which an Order or Return can be
|
|
shipped. Shipping Options have an associated Fulfillment Provider that
|
|
will be used when the fulfillment of an Order is initiated. Shipping
|
|
Options themselves cannot be added to Carts, but serve as a template for
|
|
Shipping Methods. This distinction makes it possible to customize
|
|
individual Shipping Methods with additional information.
|
|
x-resourceId: shipping_option
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Shipping Option. This value will be prefixed with
|
|
`so_`.
|
|
type: string
|
|
name:
|
|
description: >-
|
|
The name given to the Shipping Option - this may be displayed to the
|
|
Customer.
|
|
type: string
|
|
region_id:
|
|
description: The id of the Region that the Shipping Option belongs to.
|
|
type: string
|
|
region:
|
|
description: The id of the Region that the Shipping Option belongs to.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/region'
|
|
profile_id:
|
|
description: >-
|
|
The id of the Shipping Profile that the Shipping Option belongs to.
|
|
Shipping Profiles have a set of defined Shipping Options that can be
|
|
used to Fulfill a given set of Products.
|
|
type: string
|
|
provider_id:
|
|
description: >-
|
|
The id of the Fulfillment Provider, that will be used to process
|
|
Fulfillments from the Shipping Option.
|
|
type: string
|
|
price_type:
|
|
description: >-
|
|
The type of pricing calculation that is used when creatin Shipping
|
|
Methods from the Shipping Option. Can be `flat_rate` for fixed
|
|
prices or `calculated` if the Fulfillment Provider can provide price
|
|
calulations.
|
|
type: string
|
|
enum:
|
|
- flat_rate
|
|
- calculated
|
|
amount:
|
|
description: >-
|
|
The amount to charge for shipping when the Shipping Option price
|
|
type is `flat_rate`.
|
|
type: integer
|
|
is_return:
|
|
description: >-
|
|
Flag to indicate if the Shipping Option can be used for Return
|
|
shipments.
|
|
type: boolean
|
|
requirements:
|
|
description: >-
|
|
The requirements that must be satisfied for the Shipping Option to
|
|
be available for a Cart.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_option_requirement'
|
|
data:
|
|
description: >-
|
|
The data needed for the Fulfillment Provider to identify the
|
|
Shipping Option.
|
|
type: object
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
shipping_profile:
|
|
title: Shipping Profile
|
|
description: >-
|
|
Shipping Profiles have a set of defined Shipping Options that can be
|
|
used to fulfill a given set of Products.
|
|
x-resourceId: shipping_profile
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Shipping Profile. This value will be prefixed with
|
|
`sp_`.
|
|
type: string
|
|
name:
|
|
description: >-
|
|
The name given to the Shipping profile - this may be displayed to
|
|
the Customer.
|
|
type: string
|
|
type:
|
|
description: >-
|
|
The type of the Shipping Profile, may be `default`, `gift_card` or
|
|
`custom`.
|
|
type: string
|
|
enum:
|
|
- default
|
|
- gift_card
|
|
- custom
|
|
products:
|
|
description: The Products that the Shipping Profile defines Shipping Options for.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/product'
|
|
shipping_options:
|
|
description: >-
|
|
The Shipping Options that can be used to fulfill the Products in the
|
|
Shipping Profile.
|
|
type: array
|
|
items:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/shipping_option'
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
store:
|
|
title: Store
|
|
description: 'Holds settings for the Store, such as name, currencies, etc.'
|
|
x-resourceId: store
|
|
properties:
|
|
id:
|
|
description: The id of the Store. This value will be prefixed with `store_`.
|
|
type: string
|
|
name:
|
|
description: The name of the Store - this may be displayed to the Customer.
|
|
type: string
|
|
default_currency_code:
|
|
description: >-
|
|
The default currency code used when no other currency code is
|
|
specified.
|
|
type: string
|
|
currencies:
|
|
description: The currencies that are enabled for the Store.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/currency'
|
|
swap_link_template:
|
|
description: >-
|
|
A template to generate Swap links from use {{cart_id}} to include
|
|
the Swap's `cart_id` in the link.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
swap:
|
|
title: Swap
|
|
description: >-
|
|
Swaps can be created when a Customer wishes to exchange Products that
|
|
they have purchased to different Products. Swaps consist of a Return of
|
|
previously purchased Products and a Fulfillment of new Products, the
|
|
amount paid for the Products being returned will be used towards payment
|
|
for the new Products. In the case where the amount paid for the the
|
|
Products being returned exceed the amount to be paid for the new
|
|
Products, a Refund will be issued for the difference.
|
|
x-resourceId: swap
|
|
properties:
|
|
id:
|
|
description: The id of the Swap. This value will be prefixed with `swap_`.
|
|
type: string
|
|
fulfillment_status:
|
|
description: The status of the Fulfillment of the Swap.
|
|
type: string
|
|
enum:
|
|
- not_fulfilled
|
|
- partially_fulfilled
|
|
- fulfilled
|
|
- partially_shipped
|
|
- shipped
|
|
- partially_returned
|
|
- returned
|
|
- canceled
|
|
- requires_action
|
|
payment_status:
|
|
description: >-
|
|
The status of the Payment of the Swap. The payment may either refer
|
|
to the refund of an amount or the authorization of a new amount.
|
|
type: string
|
|
enum:
|
|
- not_paid
|
|
- awaiting
|
|
- captured
|
|
- canceled
|
|
- difference_refunded
|
|
- requires_action
|
|
order_id:
|
|
description: >-
|
|
The id of the Order where the Line Items to be returned where
|
|
purchased.
|
|
type: string
|
|
additional_items:
|
|
description: The new Line Items to ship to the Customer.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/line_item'
|
|
return_order:
|
|
description: The Return that is issued for the return part of the Swap.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/return'
|
|
fulfillments:
|
|
description: The Fulfillments used to send the new Line Items.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/fulfillment'
|
|
payment:
|
|
description: >-
|
|
The Payment authorized when the Swap requires an additional amount
|
|
to be charged from the Customer.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/payment'
|
|
difference_due:
|
|
description: >-
|
|
The difference that is paid or refunded as a result of the Swap. May
|
|
be negative when the amount paid for the returned items exceed the
|
|
total of the new Products.
|
|
type: integer
|
|
shipping_address:
|
|
description: >-
|
|
The Address to send the new Line Items to - in most cases this will
|
|
be the same as the shipping address on the Order.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
shipping_methods:
|
|
description: The Shipping Methods used to fulfill the addtional items purchased.
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/shipping_method'
|
|
cart_id:
|
|
description: The id of the Cart that the Customer will use to confirm the Swap.
|
|
type: string
|
|
confirmed_at:
|
|
description: >-
|
|
The date with timezone at which the Swap was confirmed by the
|
|
Customer.
|
|
type: string
|
|
format: date-time
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
tracking_link:
|
|
title: Tracking Link
|
|
description: >-
|
|
Tracking Link holds information about tracking numbers for a
|
|
Fulfillment. Tracking Links can optionally contain a URL that can be
|
|
visited to see the status of the shipment.
|
|
x-resourceId: tracking_link
|
|
properties:
|
|
id:
|
|
description: >-
|
|
The id of the Tracking Link. This value will be prefixed with
|
|
`tlink_`.
|
|
type: string
|
|
url:
|
|
description: The URL at which the status of the shipment can be tracked.
|
|
type: string
|
|
tracking_number:
|
|
description: The tracking number given by the shipping carrier.
|
|
type: string
|
|
fulfillment_id:
|
|
description: The id of the Fulfillment that the Tracking Link references.
|
|
type: string
|
|
created_at:
|
|
description: The date with timezone at which the resource was created.
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
description: The date with timezone at which the resource was last updated.
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
description: The date with timezone at which the resource was deleted.
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
description: An optional key-value map with additional information.
|
|
type: object
|
|
user:
|
|
title: User
|
|
description: Represents a User who can manage store settings.
|
|
x-resourceId: user
|
|
properties:
|
|
id:
|
|
description: The unique id of the User. This will be prefixed with `usr_`
|
|
type: string
|
|
email:
|
|
description: The email of the User
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
description: The Customer's billing address.
|
|
anyOf:
|
|
- $ref: '#/components/schemas/address'
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
deleted_at:
|
|
type: string
|
|
format: date-time
|
|
metadata:
|
|
type: object
|