> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stateset.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Add an item

> Add an item

<Warning>
  **Confirm your deployment before running this request.** This page describes an API contract;
  a published reference does not establish hosted availability. Check the dated
  [host report](/api-reference/hosts) and obtain your deployment URL and credentials.
  Replace the example host if your provisioned service uses a different URL.
</Warning>

### Path parameters

<ParamField path="id" type="string" required>
  Cart ID
</ParamField>

### Request body

`AddCartItemRequest`

<ParamField body="description" type="string,null" />

<ParamField body="image_url" type="string,null" />

<ParamField body="name" type="string" required />

<ParamField body="original_price" type="string,null">
  Decimal original price as a string.
</ParamField>

<ParamField body="product_id" type="string,null" />

<ParamField body="quantity" type="integer (int32)" required />

<ParamField body="requires_shipping" type="boolean,null" />

<ParamField body="sku" type="string" required />

<ParamField body="unit_price" type="string" required>
  Decimal unit price as a string.
</ParamField>

### Response

`CartItemResponse`

<ResponseField name="discount_amount" type="string" required />

<ResponseField name="id" type="string" required />

<ResponseField name="name" type="string" required />

<ResponseField name="product_id" type="string,null" />

<ResponseField name="quantity" type="integer (int32)" required />

<ResponseField name="sku" type="string" required />

<ResponseField name="total" type="string" required />

<ResponseField name="unit_price" type="string" required />

### Status codes

| Code | Meaning |
| - | - |
| `201` | — |
| `400` | — |

### Using this contract

Read the [source OpenAPI document](/spec/stateset-icommerce.json) for declared schemas and alternatives.
This page also includes documented corrections from the [spec overlays](https://github.com/stateset/docs/tree/main/spec/overlays).
Example IDs and values are illustrative; replace them with records from your workspace.

<RequestExample>
  ```bash cURL theme={null}
  curl --silent --show-error --fail-with-body --request POST \
    --url 'https://api.stateset.com/api/v1/carts/{id}/items' \
    --header "Authorization: Bearer $STATESET_API_KEY" \
    --header 'Content-Type: application/json' \
    --data '{
    "description": "Two-person tent, green — replacement for damaged pole set.",
    "image_url": "https://cdn.example.com/products/tent-2p.jpg",
    "name": "Two-Person Tent",
    "original_price": "49.00",
    "product_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "quantity": 2,
    "requires_shipping": true,
    "sku": "SKU-TENT-2P-GRN",
    "unit_price": "49.00"
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json 201 theme={null}
  {
    "discount_amount": "5.00",
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "Two-Person Tent",
    "product_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "quantity": 2,
    "sku": "SKU-TENT-2P-GRN",
    "total": "102.12",
    "unit_price": "49.00"
  }
  ```
</ResponseExample>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.