curl --request POST \
--url https://demo.spreecommerce.org/api/v2/storefront/cart/add_item \
--header 'Content-Type: application/vnd.api+json' \
--header 'X-Spree-Order-Token: <api-key>' \
--data '
{
"variant_id": "1",
"quantity": 5,
"public_metadata": {
"first_item_order": true
},
"private_metadata": {
"recommended_by_us": false
}
}
'{
"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
}
}
}
}Adds a variant to the current cart by creating a line item. Each line item represents a specified variant and the desired quantity.
curl --request POST \
--url https://demo.spreecommerce.org/api/v2/storefront/cart/add_item \
--header 'Content-Type: application/vnd.api+json' \
--header 'X-Spree-Order-Token: <api-key>' \
--data '
{
"variant_id": "1",
"quantity": 5,
"public_metadata": {
"first_item_order": true
},
"private_metadata": {
"recommended_by_us": false
}
}
'{
"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
}
}
}
}Order token to authorize Cart and Checkout requests.
Specify the related resources you would like to receive in the response body. More Information.
Specify the fields you would like returned in the response body. More information.
Additional parameters can be passed in the options hash. Each custom parameter must be registered in config/initializers/spree.rb, eg.
Spree::PermittedAttributes.line_item_attributes << :foo
The public metadata for the added item.
The private metadata for the added item.
Additional custom options. Activate these by adding: Spree::PermittedAttributes.line_item_attributes << :foo in config/initializers/spree.rb
200 Success - Returns the cart object.
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
Show child attributes
Show child attributes
Was this page helpful?