openapi: 3.0.3 info: title: Admin Account / Address Cart / Other API contact: name: Spree Commerce url: https://spreecommerce.org email: hello@spreecommerce.org description: "Spree Admin API v3 - Administrative API for managing products, orders, and store settings.\n\n## Authentication\n\nThe Admin API requires a secret API key passed in the `x-spree-api-key` header.\nSecret API keys can be generated in the Spree admin dashboard.\n\n## Response Format\n\nAll responses are JSON. List endpoints return paginated responses with `data` and `meta` keys.\nSingle resource endpoints return a flat JSON object.\n\n## Resource IDs\n\nEvery resource is identified by an opaque string ID (e.g. `prod_86Rf07xd4z`,\n`variant_k5nR8xLq`, `or_UkLWZg9DAJ`). Use these IDs everywhere — URL paths,\nrequest bodies, and Ransack filters all accept them directly.\n\n## Error Handling\n\nErrors return a consistent format:\n```json\n{\n \"error\": {\n \"code\": \"validation_error\",\n \"message\": \"Validation failed\",\n \"details\": { \"name\": [\"can't be blank\"] }\n }\n}\n```\n" version: v3 servers: - url: http://{defaultHost} variables: defaultHost: default: localhost:3000 tags: - name: Cart / Other paths: /api/v2/storefront/cart/empty: patch: description: This endpoint removed all line items from the cart. Inventory that was previously taken by this order will be re-stocked. operationId: empty-cart responses: '200': $ref: '#/components/responses/Cart' '404': $ref: '#/components/responses/404NotFound' security: - orderToken: [] - bearerAuth: [] parameters: - $ref: '#/components/parameters/CartIncludeParam' - $ref: '#/components/parameters/SparseFieldsCart' summary: Empty the Cart tags: - Cart / Other /api/v2/storefront/cart/estimate_shipping_rates: get: description: Returns a list of shipping rates for the current cart. The rates given are only estimates and can vary from the final shipping rates. operationId: estimate-shipping-rates parameters: - name: country_iso in: query description: Pass country ISO or ISO3 symbol to get estimations for this destination. If no code is passed we'll try to use Cart shipping address country or the default Country for the current Store. schema: type: string example: USA example: USA required: true - $ref: '#/components/parameters/SparseFieldsShippingRate' responses: '200': $ref: '#/components/responses/EstimatedShippingRates' '404': $ref: '#/components/responses/404NotFound' security: - orderToken: [] - bearerAuth: [] summary: List Estimated Shipping Rates tags: - Cart / Other /api/v2/storefront/cart/associate: patch: description: Associates a guest cart with the currently signed in user. operationId: associate-cart parameters: - name: guest_order_token in: query description: Token of the guest cart to be associated with user. schema: type: string example: bd7SHdOAQqTsQHsjnhoWIw1633364692479 required: true - $ref: '#/components/parameters/CartIncludeParam' - $ref: '#/components/parameters/SparseFieldsCart' responses: '200': $ref: '#/components/responses/Cart' '403': $ref: '#/components/responses/403Forbidden' '422': $ref: '#/components/responses/422UnprocessableEntity' security: - bearerAuth: [] summary: Associate a Cart with a User tags: - Cart / Other /api/v2/storefront/cart/change_currency: patch: description: Changes the cart currency and recalculates the cart values. operationId: change-currency parameters: - name: new_currency in: query description: The currency to change the cart to. schema: type: string example: USD required: true - $ref: '#/components/parameters/CartIncludeParam' - $ref: '#/components/parameters/SparseFieldsCart' responses: '200': $ref: '#/components/responses/Cart' '403': $ref: '#/components/responses/403Forbidden' '422': $ref: '#/components/responses/422UnprocessableEntity' security: - orderToken: [] - bearerAuth: [] summary: Change Cart Currency tags: - Cart / Other components: schemas: LineItem: title: Line Item type: object x-internal: false properties: id: type: string example: '1' type: type: string default: line_item attributes: type: object properties: name: type: string example: Sample product quantity: type: integer example: 1 slug: type: string example: sample-product options_text: type: string example: 'Size: small, Color: red' price: type: string example: '125.0' description: Price of Product per quantity currency: type: string example: USD display_price: type: string example: $125.00 description: Price of Product per quantity total: type: string example: '250.0' description: Total price of Line Item including adjastments, promotions and taxes display_total: type: string example: $250.00 description: Total price of Line Item including adjastments, promotions and taxes adjustment_total: type: string example: '10.0' description: TBD display_adjustment_total: type: string example: $10.00 description: TBD additional_tax_total: type: string example: '5.0' display_additional_tax_total: type: string example: $5.00 discounted_amount: type: string example: '125.0' display_discounted_amount: type: string example: $125.00 pre_tax_amount: type: string example: '125.0' display_pre_tax_amount: type: string example: $125.00 promo_total: type: string example: '-5.0' display_promo_total: type: string included_tax_total: type: string example: '0.0' description: Taxes included in the price, eg. VAT display_inluded_tax_total: type: string example: $0.00 compare_at_amount: type: string example: '290.99' description: Compare at price of the Line Item display_compare_at_amount: type: string example: $290.99 description: Display compare at price of the Line Item public_metadata: type: object example: recommended_by_us: true description: The public metadata for the Line Item. relationships: type: object properties: variant: type: object properties: data: $ref: '#/components/schemas/Relation' digital_links: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships description: '' Timestamp: type: string format: date-time example: '2020-02-16T07:14:54.617Z' x-internal: false title: Time Stamp x-examples: example-1: '2020-02-16T07:14:54.617Z' Error: x-internal: false title: Error type: object properties: error: type: string Promotion: type: object title: Promotion properties: id: type: string example: '1' type: type: string default: promotion attributes: type: object properties: name: type: string example: 10% Discount description: type: string example: Super discount for you amount: type: string example: '-10.0' display_amount: type: string example: -$10.00 code: type: string example: BLK-FRI required: - id - type - attributes x-internal: false Cart: description: The Cart provides a central place to collect information about an order, including line items, adjustments, payments, addresses, and shipments. [Read more in Spree docs](/developer/core-concepts/orders) type: object title: Cart x-internal: false properties: id: type: string example: '1' type: type: string default: cart attributes: type: object properties: number: type: string example: R123456789 description: Used as the **{order_number}** value in the URI to identify a completed order. token: type: string example: eL0nVxe1Aum-Qr9-UkryPA1633360128076 description: Used for authorizing actions through the `X-Spree-Order-Token` API Key. item_total: type: string example: '19.99' subtotal_cents: type: integer example: 1999 store_credit_total_cents: type: integer example: 0 total: type: string example: '29.99' total_cents: type: integer example: 2999 total_minus_store_credits: type: string example: '29.99' total_minus_store_credits_cents: type: integer example: 2999 ship_total: type: string example: '5.0' ship_total_cents: type: integer example: 500 adjustment_total: type: string example: '10.0' created_at: $ref: '#/components/schemas/Timestamp' updated_at: $ref: '#/components/schemas/Timestamp' completed_at: type: string format: date-time nullable: true included_tax_total: type: string example: '5.00' additional_tax_total: type: string example: '5.0' display_additional_tax_total: type: string example: $5.00 tax_total: type: string example: '10.0' tax_total_cents: type: integer example: 1000 currency: type: string example: USD state: type: string example: cart enum: - cart - address - delivery - payment - confirm - complete description: "State of the Cart in the Checkout flow. Please see \n The Order State machine\n for a full list with description." email: type: string format: email example: spree@example.com nullable: true display_item_total: type: string example: $19.99 display_ship_total: type: string example: $19.99 display_adjustment_total: type: string example: $10.00 display_included_tax_total: type: string example: $5.00 promo_total: type: string example: '-10.0' promo_total_cents: type: integer example: -1000 display_promo_total: type: string example: -$10.00 item_count: type: number description: Total quantity number of all items added to the Cart example: 2 minimum: 0 special_instructions: type: string example: Please wrap it as a gift description: Message added by the Customer nullable: true display_total: type: string example: $29.99 display_total_minus_store_credits: type: string example: $29.99 pre_tax_item_amount: type: string example: '17.00' display_pre_tax_item_amount: type: string example: $17.00 pre_tax_total: type: string example: '20.00' display_tax_total: type: string example: $10.00 display_pre_tax_total: type: string example: $20.00 shipment_state: type: string enum: - pending - backorder - canceled - partial - ready - shipped - null description: "Overall state of the Shipments. Please see \n Order Shipments states\n for a full list with description." nullable: true payment_state: type: string enum: - balance_due - credit_owed - failed - paid - void - null description: "Overall state of the Payments. Please see \n Order Payments states\n for a full list with description." nullable: true relationships: type: object properties: line_items: type: object description: '' properties: data: type: array items: $ref: '#/components/schemas/Relation' variants: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' promotions: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' payments: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' shipments: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' user: type: object properties: data: $ref: '#/components/schemas/Relation' billing_address: type: object properties: data: $ref: '#/components/schemas/Relation' shipping_address: type: object properties: data: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships DigitalLink: title: Digital Link type: object x-internal: false properties: id: type: string example: '1' type: type: string default: digital_link attributes: type: object properties: token: type: string example: Gn6srBmmR4KrWy73LRtrBKYw relationships: type: object properties: line_item: type: object properties: data: $ref: '#/components/schemas/Relation' description: Digital links are accessible in the order includes line_items.digital_links CartIncludes: x-internal: false title: Cart Includes anyOf: - $ref: '#/components/schemas/LineItem' - $ref: '#/components/schemas/Promotion' - $ref: '#/components/schemas/Variant' - $ref: '#/components/schemas/Payment' - $ref: '#/components/schemas/User' - $ref: '#/components/schemas/Shipment' - $ref: '#/components/schemas/DigitalLink' - $ref: '#/components/schemas/Product' description: '' Relation: type: object nullable: true properties: id: type: string type: type: string required: - id - type x-internal: false description: '' Shipment: type: object title: Shipment x-internal: false properties: id: type: string example: '1' type: type: string default: shipment attributes: type: object properties: number: type: string example: H121354 description: Unique Shipment identifier free: type: boolean description: Indicates if the Shipping Rate is free, eg. when Free shipping promo applied to Cart final_price: type: string example: '10.0' description: Price to be presented for the Customer display_final_price: type: string example: $10.00 tracking_url: type: string example: https://tools.usps.com/go/TrackConfirmAction?tRef=fullpage&tLc=2&text28777=&tLabels=4123412434%2C description: Tracking URL to the service provider website nullable: true state: type: string example: shipped enum: - pending - ready - shipped - canceled description: "Status of the Shipment. For a list of all available statuses please refer: \n Shipment section in Spree Guides\n" shipped_at: type: string format: date-time example: '2021-01-02 13:42:12' description: Date when Shipment was being sent from the warehouse nullable: true relationships: type: object properties: stock_location: type: object properties: data: $ref: '#/components/schemas/Relation' shipping_rates: type: object properties: data: type: array items: allOf: - $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships User: type: object title: User description: ' ' x-internal: false properties: id: type: string example: '1' type: type: string default: user attributes: type: object properties: email: type: string example: spree@example.com first_name: type: string example: John last_name: type: string example: Doe selected_locale: type: string example: fr store_credits: type: number example: 150.75 completed_orders: type: number example: 3 description: Number of placed Orders by this User tags: type: array items: type: string description: List of tags associated with the user public_metadata: type: object example: user_segment: supplier description: The public metadata for this User relationships: type: object properties: default_billing_address: type: object description: Default billing address associated with this Account properties: data: $ref: '#/components/schemas/Relation' default_shipping_address: type: object description: Default shipping address associated with this Account properties: data: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships ShippingRate: type: object title: Shipping Rate description: '' x-internal: false properties: id: type: string example: '1' nullable: true type: type: string default: shipping_rate attributes: type: object properties: name: type: string example: USPS Ground selected: type: boolean example: true cost: type: string example: '10.0' description: Price of the service without discounts applied tax_amount: type: string example: '0.0' description: Eligible tax for service (if any) shipping_method_id: type: integer example: 1 description: ID of a Shipping Method. You will need this for the Checkout Update action final_price: type: string example: '10.0' description: Price to be presented for the Customer display_cost: type: string example: $10.00 display_final_price: type: string example: $10.00 display_tax_amount: type: string example: $0.00 free: type: boolean example: true description: Indicates if the Shipping Rate is free, eg. when Free shipping promo applied to Cart relationships: type: object properties: shipping_method: type: object description: Shipping method for which this shipping rate belongs to properties: data: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships Product: type: object title: Product x-internal: false properties: id: type: string example: '1' type: type: string default: product attributes: type: object properties: name: type: string example: Example product description: type: string example: Example description nullable: true available_on: type: string example: '2012-10-17T03:43:57Z' nullable: true slug: type: string example: example-product price: type: string example: '15.99' nullable: true currency: type: string example: USD display_price: type: string example: $15.99 nullable: true purchasable: type: boolean description: Indicates if any of Variants are in stock or backorderable in_stock: type: boolean description: Indicates if any of Variants are in stock backorderable: type: boolean description: Indicates if any of Variants are backeorderable meta_description: type: string example: Example product nullable: true meta_keywords: type: string example: example, product nullable: true updated_at: $ref: '#/components/schemas/Timestamp' sku: type: string example: 9238-WS available: type: boolean compare_at_price: type: string example: '49.99' nullable: true display_compare_at_price: type: string example: $49.99 nullable: true localized_slugs: type: object description: Provides product's slugs in other locales tags: type: array items: type: string description: List of tags associated with the product labels: type: array items: type: string description: List of labels associated with the product relationships: type: object properties: variants: type: object description: List of Product Variants, excluding Master Variant properties: data: type: array items: $ref: '#/components/schemas/Relation' option_types: type: object description: List of Product Option Types properties: data: type: array items: $ref: '#/components/schemas/Relation' product_properties: type: object description: List of Product Properties properties: data: type: array items: $ref: '#/components/schemas/Relation' taxons: type: object description: List of Taxons associated with this Product properties: data: type: array items: $ref: '#/components/schemas/Relation' images: type: object description: List of Images associated with this Product properties: data: type: array items: $ref: '#/components/schemas/Relation' default_variant: type: object description: The default Variant for this product properties: data: $ref: '#/components/schemas/Relation' primary_variant: type: object description: The Primary Variant for this product properties: data: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships Variant: title: Variant description: 'Variant records track the individual variants of a Product. Variants are of two types: master variants and normal variants.' x-examples: {} type: object x-internal: false properties: id: type: string example: '1' type: type: string default: variant attributes: type: object properties: sku: type: string example: SKU-1001 price: type: string example: '15.99' currency: type: string example: USD display_price: type: string example: $15.99 weight: type: string example: '10' nullable: true height: type: string example: '10' nullable: true width: type: string example: '10' nullable: true depth: type: string example: '10' nullable: true is_master: type: boolean description: Indicates if Variant is the master Variant options_text: type: string example: 'Size: small, Color: red' options: type: array items: type: object properties: name: type: string value: type: string presentation: type: string purchasable: type: boolean description: Indicates if Variant is in stock or backorderable in_stock: type: boolean description: Indicates if Variant is in stock backorderable: type: boolean relationships: type: object properties: product: type: object properties: data: $ref: '#/components/schemas/Relation' images: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' option_values: type: object properties: data: type: array items: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships Payment: title: Payment type: object description: '' x-internal: false properties: id: type: string type: type: string default: payment attributes: type: object properties: amount: type: string default: '200.57' response_code: type: integer default: 192 number: type: string default: PV7B4YH0 cvv_response_code: type: integer default: 200 cvv_response_message: type: string default: authorized payment_method_id: type: integer default: 1 payment_method_name: type: string default: Credit Card state: type: string default: paid relationships: type: object properties: source: type: object properties: data: $ref: '#/components/schemas/Relation' payment_method: type: object properties: data: $ref: '#/components/schemas/Relation' required: - id - type - attributes - relationships parameters: SparseFieldsShippingRate: in: query name: fields[shipping_rate] example: name,selected,final_price,display_final_price,cost,display_cost,tax_amount,display_tax_amount,shipping_method_id description: Specify the fields you would like returned in the response body. [More information](https://jsonapi.org/format/#fetching-sparse-fieldsets). schema: type: string CartIncludeParam: name: include in: query schema: type: string description: Specify the related resources you would like to receive in the response body. [More Information](https://jsonapi.org/format/#fetching-includes). example: line_items,variants,variants.images,billing_address,shipping_address,user,payments,shipments,promotions,gift_card SparseFieldsCart: name: fields[cart] in: query description: Specify the fields you would like returned in the response body. [More information](https://jsonapi.org/format/#fetching-sparse-fieldsets). schema: type: string example: token,currency,number responses: 404NotFound: description: 404 Not Found - Resource not found. content: application/vnd.api+json: schema: properties: error: type: string example: The resource you were looking for could not be found. default: The resource you were looking for could not be found. examples: 404 Example: value: error: The resource you were looking for could not be found. 403Forbidden: description: 403 Forbidden - You are not authorized to access this page. content: application/vnd.api+json: schema: properties: error: type: string example: You are not authorized to access this page. default: You are not authorized to access this page. examples: 403 Example: value: error: You are not authorized to access this page. EstimatedShippingRates: description: 200 Success - Returns an array of `shipping_rate` objects. content: application/vnd.api+json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ShippingRate' required: - data examples: Estimated Shipping Rates: value: data: - id: null type: shipping_rate attributes: name: UPS Ground (USD) selected: true cost: '5.0' tax_amount: '0.0' final_price: '5.0' shipping_method_id: '1' display_cost: $5.00 display_final_price: $5.00 display_tax_amount: $0.00 free: false relationships: shipping_method: data: type: shipping_method id: '1' - id: null type: shipping_rate attributes: name: UPS Two Day (USD) selected: false cost: '10.0' tax_amount: '0.0' final_price: '10.0' shipping_method_id: '2' display_cost: $10.00 display_final_price: $10.00 display_tax_amount: $0.00 free: false relationships: shipping_method: data: id: '2' type: shipping_method - id: null type: shipping_rate attributes: name: UPS One Day (USD) selected: false cost: '15.0' tax_amount: '0.0' final_price: '15.0' shipping_method_id: '3' display_cost: $15.00 display_final_price: $15.00 display_tax_amount: $0.00 free: false relationships: shipping_method: data: id: '3' type: shipping_method Cart: description: 200 Success - Returns the `cart` object. content: application/vnd.api+json: schema: type: object properties: data: $ref: '#/components/schemas/Cart' included: type: array items: $ref: '#/components/schemas/CartIncludes' required: - data examples: Empty Cart: value: data: id: '17' type: cart attributes: number: R233871560 item_total: '0.0' total: '0.0' subtotal_cents: 0 store_credit_total_cents: 0 total_cents: 0 total_minus_store_credits: '0.0' total_minus_store_credits_cents: 0 ship_total: '0.0' ship_total_cents: 0 adjustment_total: '0.0' created_at: '2021-09-28T22:15:07.471Z' updated_at: '2021-09-28T22:15:07.471Z' completed_at: null included_tax_total: '0.0' additional_tax_total: '0.0' display_additional_tax_total: $0.00 display_included_tax_total: $0.00 tax_total: '0.0' tax_total_cents: 0 currency: USD state: cart token: zTEpsukRq_yEUcXVCSv0uw1632867307450 email: null display_item_total: $0.00 display_ship_total: $0.00 display_adjustment_total: $0.00 display_tax_total: $0.00 promo_total: '0.0' display_promo_total: $0.00 promo_total_cents: 0 item_count: 0 special_instructions: null display_total: $0.00 display_total_minus_store_credits: $0.00 pre_tax_item_amount: '0.0' display_pre_tax_item_amount: $0.00 pre_tax_total: '0.0' display_pre_tax_total: $0.00 shipment_state: null payment_state: null relationships: line_items: data: [] variants: data: [] promotions: data: [] payments: data: [] shipments: data: [] user: data: null billing_address: data: null shipping_address: data: null Populated Cart: value: data: id: '11' type: cart attributes: number: R823511564 item_total: '287.97' subtotal_cents: 28797 total: '316.0' store_credit_total_cents: 0 total_cents: 31600 total_minus_store_credits: '316.0' total_minus_store_credits_cents: 31600 ship_total: '5.0' ship_total_cents: 500 adjustment_total: '23.03' created_at: '2021-09-28T12:57:15.148Z' updated_at: '2021-09-28T13:06:02.689Z' completed_at: null included_tax_total: '26.18' additional_tax_total: '51.83' display_additional_tax_total: $51.83 display_included_tax_total: $26.18 tax_total: '78.01' tax_total_cents: 7801 currency: USD state: payment token: VDK_6q_NNdWFc81VZRpUfQ1632833835148 email: spree@example.com display_item_total: $287.97 display_ship_total: $5.00 display_adjustment_total: $23.03 display_tax_total: $78.01 promo_total: '-28.8' display_promo_total: -$28.80 promo_total_cents: -2880 item_count: 3 special_instructions: null display_total: $316.00 display_total_minus_store_credits: 31600 pre_tax_item_amount: '261.7909' display_pre_tax_item_amount: $261.79 pre_tax_total: '266.7909' display_pre_tax_total: $266.79 shipment_state: null payment_state: null relationships: line_items: data: - id: '6' type: line_item variants: data: - id: '130' type: variant promotions: data: - id: '2' type: promotion payments: data: [] shipments: data: - id: '7' type: shipment user: data: id: '1' type: user billing_address: data: id: '25' type: address shipping_address: data: id: '25' type: address Completed Cart: value: data: id: '18' type: cart attributes: number: R177608027 item_total: '474.95' subtotal_cents: 47495 total: '527.45' store_credit_total_cents: 0 total_cents: 52745 total_minus_store_credits: '527.45' total_minus_store_credits_cents: 52745 ship_total: '5.0' ship_total_cents: 500 adjustment_total: '47.5' created_at: '2021-09-28T22:31:47.401Z' updated_at: '2021-09-28T22:33:20.257Z' completed_at: '2021-09-28T22:33:18.372Z' included_tax_total: '0.0' additional_tax_total: '47.5' display_additional_tax_total: $47.50 display_included_tax_total: $0.00 tax_total: '47.5' currency: USD state: complete token: 5DUe7Jg40Lu-SoEvAKRKcQ1632868307387 email: spree@example.com display_item_total: $474.95 display_ship_total: $5.00 display_adjustment_total: $47.50 display_tax_total: $47.50 promo_total: '0.0' promo_total_cents: 0 display_promo_total: $0.00 item_count: 5 special_instructions: null display_total: $527.45 display_total_minus_store_credits: 52745 pre_tax_item_amount: '474.95' display_pre_tax_item_amount: $474.95 pre_tax_total: '479.95' display_pre_tax_total: $479.95 shipment_state: ready payment_state: paid relationships: line_items: data: - id: '1' type: line_item variants: data: - id: '131' type: variant promotions: data: - id: '2' type: promotion payments: data: - id: '1' type: payment shipments: data: - id: '1' type: shipment user: data: id: '1' type: user billing_address: data: id: '5' type: address shipping_address: data: id: '5' type: address Completed Cart with all included objects: value: data: id: '18' type: cart attributes: number: R177608027 item_total: '474.95' total: '527.45' ship_total: '5.0' adjustment_total: '47.5' created_at: '2021-09-28T22:31:47.401Z' updated_at: '2021-09-28T22:57:22.132Z' completed_at: '2021-09-28T22:33:18.372Z' included_tax_total: '0.0' additional_tax_total: '47.5' display_additional_tax_total: $47.50 display_included_tax_total: $0.00 tax_total: '47.5' currency: USD state: complete token: 5DUe7Jg40Lu-SoEvAKRKcQ1632868307387 email: spree@example.com display_item_total: $474.95 display_ship_total: $5.00 display_adjustment_total: $47.50 display_tax_total: $47.50 promo_total: '0.0' display_promo_total: $0.00 item_count: 5 special_instructions: null display_total: $527.45 pre_tax_item_amount: '474.95' display_pre_tax_item_amount: $474.95 pre_tax_total: '479.95' display_pre_tax_total: $479.95 shipment_state: shipped payment_state: paid relationships: line_items: data: - id: '1' type: line_item variants: data: - id: '131' type: variant promotions: data: - id: '2' type: promotion payments: data: - id: '1' type: payment shipments: data: - id: '1' type: shipment user: data: id: '1' type: user billing_address: data: id: '5' type: address shipping_address: data: id: '5' type: address included: - id: '1' type: line_item attributes: name: 3 4 Sleeve T Shirt quantity: 5 price: '94.99' slug: 3-4-sleeve-t-shirt options_text: 'Color: white, Size: XS' currency: USD display_price: $94.99 total: '522.45' display_total: $522.45 adjustment_total: '47.5' display_adjustment_total: $47.50 additional_tax_total: '47.5' discounted_amount: '474.95' display_discounted_amount: $474.95 display_additional_tax_total: $47.50 promo_total: '0.0' display_promo_total: $0.00 included_tax_total: '0.0' display_included_tax_total: $0.00 pre_tax_amount: '474.95' display_pre_tax_amount: $474.95 compare_at_amount: '599.99' display_compare_at_amount: $599.99 relationships: variant: data: id: '131' type: variant - id: '2' type: image attributes: transformed_url: null styles: - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnczBPSGcwT0Q0R093WlVPZ3RsZUhSbGJuUkFDRG9QWW1GamEyZHliM1Z1WkVraUNYTm9iM2NHT3daVU9neHhkV0ZzYVhSNWFWVT0iLCJleHAiOm51bGwsInB1ciI6InZhcmlhdGlvbiJ9fQ==--d0a7a0441914cd12bba3deaa22e75ad707bbe414/Screenshot%202021-09-22%20at%2011.49.05.png size: 48x48> width: '48' height: '48' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHhNREI0TVRBd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--d762ce7883e0795601c092269daa49688aa534a2/Screenshot%202021-09-22%20at%2011.49.05.png size: 100x100> width: '100' height: '100' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHlOREI0TWpRd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--a2fea1e7c9a6d545cfb8bbe33a5c79fc7f8ec39f/Screenshot%202021-09-22%20at%2011.49.05.png size: 240x240> width: '240' height: '240' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHhOakI0TWpBd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--325e7fb25376c8fd2db0ca1da35518354db00b11/Screenshot%202021-09-22%20at%2011.49.05.png size: 160x200> width: '160' height: '200' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMDBORGg0TmpBd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--3a7df15bde83cebd64c00bfea26fd006c7f25ab2/Screenshot%202021-09-22%20at%2011.49.05.png size: 448x600> width: '448' height: '600' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHlOVFI0TXpRd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--438f3bed4c80d9865e1344c03f456aaccd2a9f57/Screenshot%202021-09-22%20at%2011.49.05.png size: 254x340> width: '254' height: '340' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHpOVEI0TkRZNFBnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--941f9ccf86ad66e34328dc82c0bef4655208ee17/Screenshot%202021-09-22%20at%2011.49.05.png size: 350x468> width: '350' height: '468' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHlNako0TWprM1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--87e51af0bc0da167f5be35ba227a2c207dcac76a/Screenshot%202021-09-22%20at%2011.49.05.png size: 222x297> width: '222' height: '297' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHlOemg0TXpjeFBnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--af798399e91d3d2d727103129483c0c59acdaa64/Screenshot%202021-09-22%20at%2011.49.05.png size: 278x371> width: '278' height: '371' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMDJNREI0TmpBd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--8bb21c9fc5f9a942fa9374de8860186465d99f8e/Screenshot%202021-09-22%20at%2011.49.05.png size: 600x600> width: '600' height: '600' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMHlOemg0TXpjeFBnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--af798399e91d3d2d727103129483c0c59acdaa64/Screenshot%202021-09-22%20at%2011.49.05.png size: 278x371> width: '278' height: '371' - url: /rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2REdkeVlYWnBkSGxKSWd0alpXNTBaWElHT3daVU9ndHlaWE5wZW1WSklnMDJOVEI0T0Rjd1BnWTdCbFE2QzJWNGRHVnVkRUFJT2c5aVlXTnJaM0p2ZFc1a1NTSUpjMmh2ZHdZN0JsUTZESEYxWVd4cGRIbHBWUT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--5546099d5e7c15cd4ea705d244dddd64f0e47fbc/Screenshot%202021-09-22%20at%2011.49.05.png size: 650x870> width: '650' height: '870' position: 1 alt: '' original_url: /rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac481084a722edc7b7da2d96a29c3c4f4081c234/Screenshot%202021-09-22%20at%2011.49.05.png - id: '131' type: variant attributes: sku: T-shirts_3_4sleevet-shirt_94.99_white_xs weight: '0.0' height: null width: null depth: null is_master: false options_text: 'Color: white, Size: XS' options: - name: color value: white presentation: White - name: size value: XS presentation: XS purchasable: true in_stock: true backorderable: false currency: USD price: '94.99' display_price: $94.99 compare_at_price: null display_compare_at_price: null relationships: product: data: id: '15' type: product images: data: - id: '2' type: image option_values: data: - id: '1' type: option_value - id: '23' type: option_value - id: '5' type: address attributes: firstname: ' Tyler' lastname: Durden address1: 3029 Street Way Drive address2: Basement Entrance city: LA zipcode: '90210' phone: 09128386372 state_name: California company: Paper Street Soap Co. country_name: United States country_iso3: USA country_iso: US label: null state_code: CA - id: '1' type: user attributes: email: spree@example.com store_credits: 0 completed_orders: 1 relationships: default_billing_address: data: null default_shipping_address: data: null - id: '2' type: promotion attributes: name: Black Friday description: '' amount: '-9.6' display_amount: -$9.60 code: BLKFRI - id: '1' type: payment attributes: amount: '527.45' response_code: null number: PN43O2GK cvv_response_code: null cvv_response_message: null payment_method_id: '2' payment_method_name: Check state: completed relationships: source: data: null payment_method: data: id: '2' type: payment_method - id: '1' type: shipment attributes: number: H77361385341 final_price: '5.0' display_final_price: $5.00 state: shipped shipped_at: '2021-09-28T22:57:22.108Z' tracking_url: null free: false relationships: shipping_rates: data: - id: '10' type: shipping_rate - id: '11' type: shipping_rate - id: '12' type: shipping_rate stock_location: data: id: '1' type: stock_location 422UnprocessableEntity: description: 422 Unprocessable Entity content: application/vnd.api+json: schema: $ref: '#/components/schemas/Error' examples: 422 Example: value: error: Example is invalid errors: example: - Example is invalid securitySchemes: api_key: type: apiKey name: x-spree-api-key in: header description: Secret API key for admin access bearer_auth: type: http scheme: bearer bearerFormat: JWT description: JWT token for admin user authentication x-tagGroups: - name: Authentication tags: - Authentication - name: Products & Catalog tags: - Products - Variants - Option Types - Custom Fields - Channels - name: Pricing tags: - Pricing - Markets - name: Orders & Fulfillment tags: - Orders - Payments - Fulfillments - Refunds - name: Customers tags: - Customers - Customer Groups - name: Promotions & Gift Cards tags: - Promotions - Gift Cards - name: Data tags: - Exports - name: Configuration tags: - Settings - Stock Locations - Payment Methods - Staff - API Keys - Allowed Origins - Webhooks