Add items - Fabric

Documentation Index

Fetch the complete documentation index at: /llms.txt

Use this file to discover all available pages before exploring further.

Skip to main content

Add items

cURL

curl --request POST \
  --url https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-fabric-channel-id: <x-fabric-channel-id>' \
  --header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
  --data '
{
  "items": [\
    {\
      "sku": "<string>",\
      "quantity": 123,\
      "itemId": "<string>",\
      "priceListId": "<string>",\
      "price": {\
        "total": 1570,\
        "subtotal": 1530,\
        "tax": 0,\
        "fulfillments": 40,\
        "discounts": 0,\
        "fees": 0,\
        "adjustments": 0\
      },\
      "fulfillment": {\
        "id": "d6229cdb-0c5b-4885-b1b2-13b94d02488e",\
        "type": "SHIP_TO",\
        "refId": "398427903843",\
        "attributes": {\
          "source": "store"\
        },\
        "originAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
        "destinationAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
        "locationId": "CA",\
        "pickupPerson": {\
          "secondary": [\
            {\
              "name": {\
                "first": "John",\
                "last": "Doe"\
              },\
              "email": "john@test.com",\
              "phone": {\
                "number": "1234567890",\
                "type": "MOBILE"\
              }\
            }\
          ]\
        },\
        "promotions": {\
          "total": 15,\
          "collection": [\
            {\
              "id": "bb44db95-6fbd-4eed-a1ed-4d99bc91250f",\
              "amount": 15\
            }\
          ]\
        },\
        "fees": {\
          "total": 5,\
          "collection": [\
            {\
              "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
              "name": "Eco Fee",\
              "taxable": true,\
              "attributes": {\
                "source": "eco"\
              },\
              "tax": {\
                "total": 3,\
                "collection": [\
                  {\
                    "amount": 3,\
                    "attributes": {\
                      "rate": "5.0",\
                      "type": "COUNTY"\
                    }\
                  }\
                ]\
              },\
              "updatedAt": "2024-06-13T16:50:00.682Z",\
              "createdAt": "2024-06-13T16:50:00.682Z",\
              "taxDetails": {\
                "destinationAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8",\
                "originAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8"\
              }\
            }\
          ]\
        },\
        "adjustments": {\
          "total": 2,\
          "collection": [\
            {\
              "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
              "reason": "Price adjustment from customer representative.",\
              "attributes": {\
                "source": "CSR"\
              },\
              "updatedAt": "2024-06-13T16:50:00.682Z",\
              "createdAt": "2024-06-13T16:50:00.682Z"\
            }\
          ]\
        },\
        "tax": {\
          "total": 3,\
          "collection": [\
            {\
              "amount": 3,\
              "attributes": {\
                "rate": "5.0",\
                "type": "COUNTY"\
              }\
            }\
          ]\
        }\
      }\
    }\
  ]
}
'
import requests

url = "https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items"

payload = { "items": [\
        {\
            "sku": "<string>",\
            "quantity": 123,\
            "itemId": "<string>",\
            "priceListId": "<string>",\
            "price": {\
                "total": 1570,\
                "subtotal": 1530,\
                "tax": 0,\
                "fulfillments": 40,\
                "discounts": 0,\
                "fees": 0,\
                "adjustments": 0\
            },\
            "fulfillment": {\
                "id": "d6229cdb-0c5b-4885-b1b2-13b94d02488e",\
                "type": "SHIP_TO",\
                "refId": "398427903843",\
                "attributes": { "source": "store" },\
                "originAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
                "destinationAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
                "locationId": "CA",\
                "pickupPerson": { "secondary": [\
                        {\
                            "name": {\
                                "first": "John",\
                                "last": "Doe"\
                            },\
                            "email": "john@test.com",\
                            "phone": {\
                                "number": "1234567890",\
                                "type": "MOBILE"\
                            }\
                        }\
                    ] },\
                "promotions": {\
                    "total": 15,\
                    "collection": [\
                        {\
                            "id": "bb44db95-6fbd-4eed-a1ed-4d99bc91250f",\
                            "amount": 15\
                        }\
                    ]\
                },\
                "fees": {\
                    "total": 5,\
                    "collection": [\
                        {\
                            "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
                            "name": "Eco Fee",\
                            "taxable": True,\
                            "attributes": { "source": "eco" },\
                            "tax": {\
                                "total": 3,\
                                "collection": [\
                                    {\
                                        "amount": 3,\
                                        "attributes": {\
                                            "rate": "5.0",\
                                            "type": "COUNTY"\
                                        }\
                                    }\
                                ]\
                            },\
                            "updatedAt": "2024-06-13T16:50:00.682Z",\
                            "createdAt": "2024-06-13T16:50:00.682Z",\
                            "taxDetails": {\
                                "destinationAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8",\
                                "originAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8"\
                            }\
                        }\
                    ]\
                },\
                "adjustments": {\
                    "total": 2,\
                    "collection": [\
                        {\
                            "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
                            "reason": "Price adjustment from customer representative.",\
                            "attributes": { "source": "CSR" },\
                            "updatedAt": "2024-06-13T16:50:00.682Z",\
                            "createdAt": "2024-06-13T16:50:00.682Z"\
                        }\
                    ]\
                },\
                "tax": {\
                    "total": 3,\
                    "collection": [\
                        {\
                            "amount": 3,\
                            "attributes": {\
                                "rate": "5.0",\
                                "type": "COUNTY"\
                            }\
                        }\
                    ]\
                }\
            }\
        }\
    ] }
headers = {
    "x-fabric-tenant-id": "<x-fabric-tenant-id>",
    "x-fabric-channel-id": "<x-fabric-channel-id>",
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {
    'x-fabric-tenant-id': '<x-fabric-tenant-id>',
    'x-fabric-channel-id': '<x-fabric-channel-id>',
    Authorization: 'Bearer <token>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    items: [\
      {\
        sku: '<string>',\
        quantity: 123,\
        itemId: '<string>',\
        priceListId: '<string>',\
        price: {\
          total: 1570,\
          subtotal: 1530,\
          tax: 0,\
          fulfillments: 40,\
          discounts: 0,\
          fees: 0,\
          adjustments: 0\
        },\
        fulfillment: {\
          id: 'd6229cdb-0c5b-4885-b1b2-13b94d02488e',\
          type: 'SHIP_TO',\
          refId: '398427903843',\
          attributes: {source: 'store'},\
          originAddress: 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
          destinationAddress: 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
          locationId: 'CA',\
          pickupPerson: {\
            secondary: [\
              {\
                name: {first: 'John', last: 'Doe'},\
                email: 'john@test.com',\
                phone: {number: '1234567890', type: 'MOBILE'}\
              }\
            ]\
          },\
          promotions: {\
            total: 15,\
            collection: [{id: 'bb44db95-6fbd-4eed-a1ed-4d99bc91250f', amount: 15}]\
          },\
          fees: {\
            total: 5,\
            collection: [\
              {\
                id: 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
                name: 'Eco Fee',\
                taxable: true,\
                attributes: {source: 'eco'},\
                tax: {total: 3, collection: [{amount: 3, attributes: {rate: '5.0', type: 'COUNTY'}}]},\
                updatedAt: '2024-06-13T16:50:00.682Z',\
                createdAt: '2024-06-13T16:50:00.682Z',\
                taxDetails: {\
                  destinationAddress: 'c86f777b-1885-4ddf-961d-542ba80a69b8',\
                  originAddress: 'c86f777b-1885-4ddf-961d-542ba80a69b8'\
                }\
              }\
            ]\
          },\
          adjustments: {\
            total: 2,\
            collection: [\
              {\
                id: 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
                reason: 'Price adjustment from customer representative.',\
                attributes: {source: 'CSR'},\
                updatedAt: '2024-06-13T16:50:00.682Z',\
                createdAt: '2024-06-13T16:50:00.682Z'\
              }\
            ]\
          },\
          tax: {total: 3, collection: [{amount: 3, attributes: {rate: '5.0', type: 'COUNTY'}}]}\
        }\
      }\
    ]
  })
};

fetch('https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [\
  CURLOPT_URL => "https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items",\
  CURLOPT_RETURNTRANSFER => true,\
  CURLOPT_ENCODING => "",\
  CURLOPT_MAXREDIRS => 10,\
  CURLOPT_TIMEOUT => 30,\
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\
  CURLOPT_CUSTOMREQUEST => "POST",\
  CURLOPT_POSTFIELDS => json_encode([\
    'items' => [\
        [\
                'sku' => '<string>',\
                'quantity' => 123,\
                'itemId' => '<string>',\
                'priceListId' => '<string>',\
                'price' => [\
                                'total' => 1570,\
                                'subtotal' => 1530,\
                                'tax' => 0,\
                                'fulfillments' => 40,\
                                'discounts' => 0,\
                                'fees' => 0,\
                                'adjustments' => 0\
                ],\
                'fulfillment' => [\
                                'id' => 'd6229cdb-0c5b-4885-b1b2-13b94d02488e',\
                                'type' => 'SHIP_TO',\
                                'refId' => '398427903843',\
                                'attributes' => [\
                                                                'source' => 'store'\
                                ],\
                                'originAddress' => 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
                                'destinationAddress' => 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
                                'locationId' => 'CA',\
                                'pickupPerson' => [\
                                                                'secondary' => [\
                                                                                                                                [\
                                                                                                                                                                                                                                                                'name' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'first' => 'John',\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'last' => 'Doe'\
                                                                                                                                                                                                                                                                ],\
                                                                                                                                                                                                                                                                'email' => 'john@test.com',\
                                                                                                                                                                                                                                                                'phone' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'number' => '1234567890',\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'type' => 'MOBILE'\
                                                                                                                                                                                                                                                                ]\
                                                                                                                                ]\
                                                                ]\
                                ],\
                                'promotions' => [\
                                                                'total' => 15,\
                                                                'collection' => [\
                                                                                                                                [\
                                                                                                                                                                                                                                                                'id' => 'bb44db95-6fbd-4eed-a1ed-4d99bc91250f',\
                                                                                                                                                                                                                                                                'amount' => 15\
                                                                                                                                ]\
                                                                ]\
                                ],\
                                'fees' => [\
                                                                'total' => 5,\
                                                                'collection' => [\
                                                                                                                                [\
                                                                                                                                                                                                                                                                'id' => 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
                                                                                                                                                                                                                                                                'name' => 'Eco Fee',\
                                                                                                                                                                                                                                                                'taxable' => true,\
                                                                                                                                                                                                                                                                'attributes' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'source' => 'eco'\
                                                                                                                                                                                                                                                                ],\
                                                                                                                                                                                                                                                                'tax' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'total' => 3,\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'collection' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'amount' => 3,\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'attributes' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'rate' => '5.0',\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'type' => 'COUNTY'\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ]\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ]\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ]\
                                                                                                                                                                                                                                                                ],\
                                                                                                                                                                                                                                                                'updatedAt' => '2024-06-13T16:50:00.682Z',\
                                                                                                                                                                                                                                                                'createdAt' => '2024-06-13T16:50:00.682Z',\
                                                                                                                                                                                                                                                                'taxDetails' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'destinationAddress' => 'c86f777b-1885-4ddf-961d-542ba80a69b8',\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'originAddress' => 'c86f777b-1885-4ddf-961d-542ba80a69b8'\
                                                                                                                                                                                                                                                                ]\
                                                                                                                                ]\
                                                                ]\
                                ],\
                                'adjustments' => [\
                                                                'total' => 2,\
                                                                'collection' => [\
                                                                                                                                [\
                                                                                                                                                                                                                                                                'id' => 'a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93',\
                                                                                                                                                                                                                                                                'reason' => 'Price adjustment from customer representative.',\
                                                                                                                                                                                                                                                                'attributes' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'source' => 'CSR'\
                                                                                                                                                                                                                                                                ],\
                                                                                                                                                                                                                                                                'updatedAt' => '2024-06-13T16:50:00.682Z',\
                                                                                                                                                                                                                                                                'createdAt' => '2024-06-13T16:50:00.682Z'\
                                                                                                                                ]\
                                                                ]\
                                ],\
                                'tax' => [\
                                                                'total' => 3,\
                                                                'collection' => [\
                                                                                                                                [\
                                                                                                                                                                                                                                                                'amount' => 3,\
                                                                                                                                                                                                                                                                'attributes' => [\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'rate' => '5.0',\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'type' => 'COUNTY'\
                                                                                                                                                                                                                                                                ]\
                                                                                                                                ]\
                                                                ]\
                                ]\
                ]\
        ]\
    ]\
  ]),\
  CURLOPT_HTTPHEADER => [\
    "Authorization: Bearer <token>",\
    "Content-Type: application/json",\
    "x-fabric-channel-id: <x-fabric-channel-id>",\
    "x-fabric-tenant-id: <x-fabric-tenant-id>"\
  ],\
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
    "fmt"
    "strings"
    "net/http"
    "io"
)

func main() {

url := "https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items"

payload := strings.NewReader("{\n  \"items\": [\n    {\n      \"sku\": \"<string>\",\n      \"quantity\": 123,\n      \"itemId\": \"<string>\",\n      \"priceListId\": \"<string>\",\n      \"price\": {\n        \"total\": 1570,\n        \"subtotal\": 1530,\n        \"tax\": 0,\n        \"fulfillments\": 40,\n        \"discounts\": 0,\n        \"fees\": 0,\n        \"adjustments\": 0\n      },\n      \"fulfillment\": {\n        \"id\": \"d6229cdb-0c5b-4885-b1b2-13b94d02488e\",\n        \"type\": \"SHIP_TO\",\n        \"refId\": \"398427903843\",\n        \"attributes\": {\n          \"source\": \"store\"\n        },\n        \"originAddress\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n        \"destinationAddress\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n        \"locationId\": \"CA\",\n        \"pickupPerson\": {\n          \"secondary\": [\n            {\n              \"name\": {\n                \"first\": \"John\",\n                \"last\": \"Doe\"\n              },\n              \"email\": \"john@test.com\",\n              \"phone\": {\n                \"number\": \"1234567890\",\n                \"type\": \"MOBILE\"\n              }\n            }\n          ]\n        },\n        \"promotions\": {\n          \"total\": 15,\n          \"collection\": [\n            {\n              \"id\": \"bb44db95-6fbd-4eed-a1ed-4d99bc91250f\",\n              \"amount\": 15\n            }\n          ]\n        },\n        \"fees\": {\n          \"total\": 5,\n          \"collection\": [\n            {\n              \"id\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n              \"name\": \"Eco Fee\",\n              \"taxable\": true,\n              \"attributes\": {\n                \"source\": \"eco\"\n              },\n              \"tax\": {\n                \"total\": 3,\n                \"collection\": [\n                  {\n                    \"amount\": 3,\n                    \"attributes\": {\n                      \"rate\": \"5.0\",\n                      \"type\": \"COUNTY\"\n                    }\n                  }\n                ]\n              },\n              \"updatedAt\": \"2024-06-13T16:50:00.682Z\",\n              \"createdAt\": \"2024-06-13T16:50:00.682Z\",\n              \"taxDetails\": {\n                \"destinationAddress\": \"c86f777b-1885-4ddf-961d-542ba80a69b8\",\n                \"originAddress\": \"c86f777b-1885-4ddf-961d-542ba80a69b8\"\n              }\n            }\n          ]\n        },\n        \"adjustments\": {\n          \"total\": 2,\n          \"collection\": [\n            {\n              \"id\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n              \"reason\": \"Price adjustment from customer representative.\",\n              \"attributes\": {\n                \"source\": \"CSR\"\n              },\n              \"updatedAt\": \"2024-06-13T16:50:00.682Z\",\n              \"createdAt\": \"2024-06-13T16:50:00.682Z\"\n            }\n          ]\n        },\n        \"tax\": {\n          \"total\": 3,\n          \"collection\": [\n            {\n              \"amount\": 3,\n              \"attributes\": {\n                \"rate\": \"5.0\",\n                \"type\": \"COUNTY\"\n              }\n            }\n          ]\n        }\n      }\n    }\n  ]\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("x-fabric-tenant-id", "<x-fabric-tenant-id>")
    req.Header.Add("x-fabric-channel-id", "<x-fabric-channel-id>")
    req.Header.Add("Authorization", "Bearer <token>")
    req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
    body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items")
  .header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
  .header("x-fabric-channel-id", "<x-fabric-channel-id>")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"items\": [\n    {\n      \"sku\": \"<string>\",\n      \"quantity\": 123,\n      \"itemId\": \"<string>\",\n      \"priceListId\": \"<string>\",\n      \"price\": {\n        \"total\": 1570,\n        \"subtotal\": 1530,\n        \"tax\": 0,\n        \"fulfillments\": 40,\n        \"discounts\": 0,\n        \"fees\": 0,\n        \"adjustments\": 0\n      },\n      \"fulfillment\": {\n        \"id\": \"d6229cdb-0c5b-4885-b1b2-13b94d02488e\",\n        \"type\": \"SHIP_TO\",\n        \"refId\": \"398427903843\",\n        \"attributes\": {\n          \"source\": \"store\"\n        },\n        \"originAddress\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n        \"destinationAddress\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n        \"locationId\": \"CA\",\n        \"pickupPerson\": {\n          \"secondary\": [\n            {\n              \"name\": {\n                \"first\": \"John\",\n                \"last\": \"Doe\"\n              },\n              \"email\": \"john@test.com\",\n              \"phone\": {\n                \"number\": \"1234567890\",\n                \"type\": \"MOBILE\"\n              }\n            }\n          ]\n        },\n        \"promotions\": {\n          \"total\": 15,\n          \"collection\": [\n            {\n              \"id\": \"bb44db95-6fbd-4eed-a1ed-4d99bc91250f\",\n              \"amount\": 15\n            }\n          ]\n        },\n        \"fees\": {\n          \"total\": 5,\n          \"collection\": [\n            {\n              \"id\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n              \"name\": \"Eco Fee\",\n              \"taxable\": true,\n              \"attributes\": {\n                \"source\": \"eco\"\n              },\n              \"tax\": {\n                \"total\": 3,\n                \"collection\": [\n                  {\n                    \"amount\": 3,\n                    \"attributes\": {\n                      \"rate\": \"5.0\",\n                      \"type\": \"COUNTY\"\n                    }\n                  }\n                ]\n              },\n              \"updatedAt\": \"2024-06-13T16:50:00.682Z\",\n              \"createdAt\": \"2024-06-13T16:50:00.682Z\",\n              \"taxDetails\": {\n                \"destinationAddress\": \"c86f777b-1885-4ddf-961d-542ba80a69b8\",\n                \"originAddress\": \"c86f777b-1885-4ddf-961d-542ba80a69b8\"\n              }\n            }\n          ]\n        },\n        \"adjustments\": {\n          \"total\": 2,\n          \"collection\": [\n            {\n              \"id\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n              \"reason\": \"Price adjustment from customer representative.\",\n              \"attributes\": {\n                \"source\": \"CSR\"\n              },\n              \"updatedAt\": \"2024-06-13T16:50:00.682Z\",\n              \"createdAt\": \"2024-06-13T16:50:00.682Z\"\n            }\n          ]\n        },\n        \"tax\": {\n          \"total\": 3,\n          \"collection\": [\n            {\n              \"amount\": 3,\n              \"attributes\": {\n                \"rate\": \"5.0\",\n                \"type\": \"COUNTY\"\n              }\n            }\n          ]\n        }\n      }\n    }\n  ]\n}")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["x-fabric-channel-id"] = '<x-fabric-channel-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"items\": [\n    {\n      \"sku\": \"<string>\",\n      \"quantity\": 123,\n      \"itemId\": \"<string>\",\n      \"priceListId\": \"<string>\",\n      \"price\": {\n        \"total\": 1570,\n        \"subtotal\": 1530,\n        \"tax\": 0,\n        \"fulfillments\": 40,\n        \"discounts\": 0,\n        \"fees\": 0,\n        \"adjustments\": 0\n      },\n      \"fulfillment\": {\n        \"id\": \"d6229cdb-0c5b-4885-b1b2-13b94d02488e\",\n        \"type\": \"SHIP_TO\",\n        \"refId\": \"398427903843\",\n        \"attributes\": {\n          \"source\": \"store\"\n        },\n        \"originAddress\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n        \"destinationAddress\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n        \"locationId\": \"CA\",\n        \"pickupPerson\": {\n          \"secondary\": [\n            {\n              \"name\": {\n                \"first\": \"John\",\n                \"last\": \"Doe\"\n              },\n              \"email\": \"john@test.com\",\n              \"phone\": {\n                \"number\": \"1234567890\",\n                \"type\": \"MOBILE\"\n              }\n            }\n          ]\n        },\n        \"promotions\": {\n          \"total\": 15,\n          \"collection\": [\n            {\n              \"id\": \"bb44db95-6fbd-4eed-a1ed-4d99bc91250f\",\n              \"amount\": 15\n            }\n          ]\n        },\n        \"fees\": {\n          \"total\": 5,\n          \"collection\": [\n            {\n              \"id\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n              \"name\": \"Eco Fee\",\n              \"taxable\": true,\n              \"attributes\": {\n                \"source\": \"eco\"\n              },\n              \"tax\": {\n                \"total\": 3,\n                \"collection\": [\n                  {\n                    \"amount\": 3,\n                    \"attributes\": {\n                      \"rate\": \"5.0\",\n                      \"type\": \"COUNTY\"\n                    }\n                  }\n                ]\n              },\n              \"updatedAt\": \"2024-06-13T16:50:00.682Z\",\n              \"createdAt\": \"2024-06-13T16:50:00.682Z\",\n              \"taxDetails\": {\n                \"destinationAddress\": \"c86f777b-1885-4ddf-961d-542ba80a69b8\",\n                \"originAddress\": \"c86f777b-1885-4ddf-961d-542ba80a69b8\"\n              }\n            }\n          ]\n        },\n        \"adjustments\": {\n          \"total\": 2,\n          \"collection\": [\n            {\n              \"id\": \"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93\",\n              \"reason\": \"Price adjustment from customer representative.\",\n              \"attributes\": {\n                \"source\": \"CSR\"\n              },\n              \"updatedAt\": \"2024-06-13T16:50:00.682Z\",\n              \"createdAt\": \"2024-06-13T16:50:00.682Z\"\n            }\n          ]\n        },\n        \"tax\": {\n          \"total\": 3,\n          \"collection\": [\n            {\n              \"amount\": 3,\n              \"attributes\": {\n                \"rate\": \"5.0\",\n                \"type\": \"COUNTY\"\n              }\n            }\n          ]\n        }\n      }\n    }\n  ]\n}"

response = http.request(request)
puts response.read_body

200

422

{
  "id": "0e49199c-5849-4211-abe6-a97a3c4dcc56",
  "attributes": {},
  "configuration": {
    "order": {
      "validate": {}
    },
    "product": {
      "cacheExpiry": 7776000,
      "behaviors": {
        "add": "REJECT",
        "update": "WARN",
        "get": "WARN",
        "cacheExpiry": "WARN"
      },
      "maxQuantity": {
        "limit": 100,
        "behaviors": {
          "add": "REJECT",
          "update": "WARN",
          "get": "WARN"
        }
      }
    },
    "inventory": {
      "cacheExpiry": 7776000,
      "behaviors": {
        "add": "REJECT",
        "update": "WARN",
        "get": "WARN",
        "cacheExpiry": "WARN"
      },
      "check": "SKU"
    },
    "tax": {
      "cacheExpiry": 7776000,
      "behaviors": {
        "cacheExpiry": "WARN"
      }
    },
    "promotions": {
      "cacheExpiry": 86400,
      "behaviors": {}
    }
  },
  "customerContext": {
    "id": "109840938",
    "segments": [\
      {\
        "name": "membership",\
        "value": [\
          "gold",\
          "silver"\
        ]\
      }\
    ],
    "attributes": {
      "email": "test@gmail.com"
    },
    "sessionId": "3a5fd2d3-5c96-4e57-b069-7ff2a88c1119"
  },
  "status": "ACTIVE",
  "state": [\
    {\
      "resource": "CART",\
      "resourceId": "c86f777b-1885-4ddf-961d-542ba80a69b8",\
      "key": "MISSING_PAYMENT_DETAILS",\
      "description": "No payment details have been added to this Cart"\
    }\
  ],
  "price": {
    "total": 1570,
    "subtotal": 1530,
    "tax": 0,
    "fulfillments": 40,
    "discounts": 0,
    "fees": 0,
    "adjustments": 0
  },
  "promotions": {
    "total": 0,
    "collection": [\
      {\
        "id": "6626c179627d450008a5b202",\
        "title": "Cart Promotion Fixed Price",\
        "type": "QUANTITY",\
        "value": 10,\
        "attributes": {\
          "promotionStack": "HIGHEST"\
        }\
      }\
    ]
  },
  "fees": {
    "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",
    "name": "Eco Fee",
    "price": {
      "amount": 12.99
    },
    "taxable": true,
    "attributes": {
      "source": "eco"
    },
    "tax": {
      "total": 3,
      "collection": [\
        {\
          "amount": 3,\
          "attributes": {\
            "rate": "5.0",\
            "type": "COUNTY"\
          }\
        }\
      ]
    },
    "updatedAt": "2024-06-13T16:50:00.682Z",
    "createdAt": "2024-06-13T16:50:00.682Z",
    "taxDetails": {
      "destinationAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8",
      "originAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8"
    }
  },
  "adjustments": {
    "total": 2,
    "collection": [\
      {\
        "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
        "price": {\
          "amount": 12.99\
        },\
        "reason": "Price adjustment from customer representative.",\
        "attributes": {\
          "source": "CSR"\
        },\
        "updatedAt": "2024-06-13T16:50:00.682Z",\
        "createdAt": "2024-06-13T16:50:00.682Z"\
      }\
    ]
  },
  "addresses": {
    "a8577d7f0d4d4b228e857b4a2e90dc93": {
      "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",
      "name": {
        "first": "John",
        "last": "Doe"
      },
      "email": "john@test.com",
      "phone": {
        "number": "1234567890",
        "type": "MOBILE"
      },
      "addressLine1": "123 Park Road",
      "addressLine2": "<string>",
      "addressLine3": "<string>",
      "addressLine4": "<string>",
      "city": "Santa Cruz",
      "region": "California",
      "country": "USA",
      "postalCode": "12345",
      "updatedAt": "2024-06-13T16:50:00.682Z",
      "createdAt": "2024-06-13T16:50:00.682Z"
    }
  },
  "lineItems": {
    "total": 100,
    "collection": [\
      {\
        "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
        "sku": "SKU3",\
        "refId": "41",\
        "quantity": 10,\
        "priceListId": "10001",\
        "position": 1,\
        "price": {\
          "unit": 10,\
          "amount": 100\
        },\
        "fees": {\
          "total": 5,\
          "collection": [\
            {\
              "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
              "name": "Eco Fee",\
              "price": {\
                "amount": 12.99\
              },\
              "taxable": true,\
              "attributes": {\
                "source": "eco"\
              },\
              "tax": {\
                "total": 3,\
                "collection": [\
                  {\
                    "amount": 3,\
                    "attributes": {\
                      "rate": "5.0",\
                      "type": "COUNTY"\
                    }\
                  }\
                ]\
              },\
              "updatedAt": "2024-06-13T16:50:00.682Z",\
              "createdAt": "2024-06-13T16:50:00.682Z",\
              "taxDetails": {\
                "destinationAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8",\
                "originAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8"\
              }\
            }\
          ]\
        },\
        "promotions": {\
          "total": 2,\
          "collection": [\
            {\
              "id": "bb44db95-6fbd-4eed-a1ed-4d99bc91250f",\
              "amount": 15,\
              "quantity": 3,\
              "proration": {\
                "spread": [\
                  {\
                    "amount": 5,\
                    "quantity": 3\
                  }\
                ]\
              }\
            }\
          ]\
        },\
        "adjustments": {\
          "total": 2,\
          "collection": [\
            {\
              "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
              "price": {\
                "amount": 12.99\
              },\
              "reason": "Price adjustment from customer representative.",\
              "attributes": {\
                "source": "CSR"\
              },\
              "updatedAt": "2024-06-13T16:50:00.682Z",\
              "createdAt": "2024-06-13T16:50:00.682Z"\
            }\
          ]\
        },\
        "fulfillment": {\
          "id": "6d65755f-b1d9-4c9d-bb5b-118d317f8db4",\
          "price": {\
            "amount": 12.99\
          },\
          "inventory": {\
            "channels": {\
              "type": "WEB_PICKUP",\
              "locationNumber": "15",\
              "channelId": "12",\
              "networkCode": "shipToHome"\
            },\
            "type": "availableToPurchase"\
          },\
          "tax": {\
            "total": 3,\
            "collection": [\
              {\
                "amount": 3,\
                "attributes": {\
                  "rate": "5.0",\
                  "type": "COUNTY"\
                }\
              }\
            ]\
          }\
        },\
        "attributes": {\
          "name": "item-custom"\
        },\
        "tax": {\
          "total": 3,\
          "collection": [\
            {\
              "amount": 3,\
              "attributes": {\
                "rate": "5.0",\
                "type": "COUNTY"\
              }\
            }\
          ]\
        },\
        "taxCode": "10001",\
        "updatedAt": "2024-06-13T16:50:00.682Z",\
        "createdAt": "2024-06-13T16:50:00.682Z"\
      }\
    ]
  },
  "summary": {
    "totalItems": 1,
    "totalUniqueItems": 1
  },
  "fulfillments": {
    "d6229cdb0c5b4885b1b213b94d02488e": {
      "id": "d6229cdb-0c5b-4885-b1b2-13b94d02488e",
      "type": "SHIP_TO",
      "refId": "398427903843",
      "attributes": {
        "source": "store"
      },
      "originAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",
      "destinationAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",
      "locationId": "CA",
      "pickupPerson": {
        "primary": {
          "name": {
            "first": "John",
            "last": "Doe"
          },
          "email": "john@test.com",
          "phone": {
            "number": "1234567890",
            "type": "MOBILE"
          }
        },
        "secondary": [\
          {\
            "name": {\
              "first": "John",\
              "last": "Doe"\
            },\
            "email": "john@test.com",\
            "phone": {\
              "number": "1234567890",\
              "type": "MOBILE"\
            }\
          }\
        ]
      },
      "price": {
        "amount": 12.99
      },
      "promotions": {
        "total": 15,
        "collection": [\
          {\
            "id": "bb44db95-6fbd-4eed-a1ed-4d99bc91250f",\
            "amount": 15\
          }\
        ]
      },
      "fees": {
        "total": 5,
        "collection": [\
          {\
            "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
            "name": "Eco Fee",\
            "price": {\
              "amount": 12.99\
            },\
            "taxable": true,\
            "attributes": {\
              "source": "eco"\
            },\
            "tax": {\
              "total": 3,\
              "collection": [\
                {\
                  "amount": 3,\
                  "attributes": {\
                    "rate": "5.0",\
                    "type": "COUNTY"\
                  }\
                }\
              ]\
            },\
            "updatedAt": "2024-06-13T16:50:00.682Z",\
            "createdAt": "2024-06-13T16:50:00.682Z",\
            "taxDetails": {\
              "destinationAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8",\
              "originAddress": "c86f777b-1885-4ddf-961d-542ba80a69b8"\
            }\
          }\
        ]
      },
      "adjustments": {
        "total": 2,
        "collection": [\
          {\
            "id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
            "price": {\
              "amount": 12.99\
            },\
            "reason": "Price adjustment from customer representative.",\
            "attributes": {\
              "source": "CSR"\
            },\
            "updatedAt": "2024-06-13T16:50:00.682Z",\
            "createdAt": "2024-06-13T16:50:00.682Z"\
          }\
        ]
      },
      "tax": {
        "total": 3,
        "collection": [\
          {\
            "amount": 3,\
            "attributes": {\
              "rate": "5.0",\
              "type": "COUNTY"\
            }\
          }\
        ]
      }
    }
  },
  "coupons": [\
    {\
      "code": "VALID_COUPON",\
      "updatedAt": "2024-06-13T16:50:00.682Z"\
    }\
  ],
  "appliedCoupons": [\
    {\
      "code": "VALID_COUPON",\
      "updatedAt": "2024-06-13T16:50:00.682Z"\
    }\
  ],
  "notAppliedCoupons": [\
    {\
      "code": "VALID_COUPON",\
      "updatedAt": "2024-06-13T16:50:00.682Z"\
    }\
  ],
  "validations": {
    "promotions": {
      "updatedAt": "2024-06-13T16:50:00.682Z",
      "appliedCoupons": [\
        "TEST_COUPON"\
      ],
      "refreshRequired": false
    },
    "lineItems": [\
      {\
        "sku": "SKU3",\
        "inventory": {\
          "channels": {\
            "networkCode": "ShipToHome"\
          },\
          "counters": {\
            "backOrder": 15,\
            "preOrder": 100\
          },\
          "updatedAt": "2024-06-13T16:50:00.682Z"\
        }\
      }\
    ],
    "product": {
      "availableSkus": [\
        {\
          "sku": "SKU3",\
          "updatedAt": "2024-06-13T16:50:00.682Z",\
          "maxQuantity": 100\
        }\
      ]
    },
    "tax": {
      "updatedAt": "2024-06-13T16:50:00.682Z"
    }
  },
  "payments": {
    "authorized": 800,
    "collection": [\
      {\
        "id": "6ef2067a-5d6b-4785-a090-96ea0078220d",\
        "provider": "verifone",\
        "processor": "stripe",\
        "method": "apple pay",\
        "methodType": "credit card",\
        "state": "PENDING",\
        "authorization": {\
          "amount": 8,\
          "expiry": "2024-06-13T16:50:00.682Z",\
          "verifier": {\
            "type": "TOKEN",\
            "key": "CH39082K439R0"\
          }\
        },\
        "billToAddress": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",\
        "cardDetails": {},\
        "attributes": {\
          "gift-card-name": "custom name"\
        }\
      }\
    ]
  },
  "channelId": "12",
  "currency": "USD",
  "updatedAt": "2024-06-13T16:50:00.682Z",
  "createdAt": "2024-06-13T16:50:00.682Z",
  "suggestedProducts": [\
    {\
      "id": "12345",\
      "name": "Wireless Mouse",\
      "description": "A high-quality wireless mouse with ergonomic design.",\
      "price": 29.99\
    }\
  ],
  "promotionMessages": [\
    {\
      "message": "Buy one get one free",\
      "code": "BOGO"\
    }\
  ],
  "errors": [\
    {\
      "code": "ERR001",\
      "message": "Invalid input"\
    }\
  ]
}
{
  "type": "UNPROCESSABLE_ORCHESTRATION",
  "message": "4xx Error from orchestration dependency",
  "errors": [\
    {\
      "type": "NOT_FOUND",\
      "message": "404 Not Found from POST https://api.fabric.inc/carts/326949f9-7c25-4983-9848-b2061abb217dl/items/batch",\
      "code": 404,\
      "source": "POST https://api.fabric.inc/carts/326949f9-7c25-4983-9848-b2061abb217dl/items/batch",\
      "details": {\
        "type": "CART_NOT_FOUND",\
        "message": "Cart not found",\
        "errors": []\
      }\
    }\
  ]
}

POST

https://api.fabric.inc/v3https://stg.api.fabric.inc/v3

/

orchestrator

/

carts

/

{cartId}

/

items

Try it

Add items

cURL

import requests

url = "https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items"

response = requests.post(url, json=payload, headers=headers)

print(response.text)
<?php

$curl = curl_init();

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
    "fmt"
    "strings"
    "net/http"
    "io"
)

func main() {

url := "https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items"

req, _ := http.NewRequest("POST", url, payload)

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
    body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
require 'uri'
require 'net/http'

url = URI("https://api.fabric.inc/v3/orchestrator/carts/{cartId}/items")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

response = http.request(request)
puts response.read_body

200

422

Authorizations

​

Authorization

string

header

required

Include the Bearer<token> header where the <token> is the authentication token generated from the Getting Started with fabric APIs process.

Headers

​

x-fabric-tenant-id

string

required

A header used by fabric to identify the tenant making the request. You must include tenant id in the authentication header for an API request to access any of fabric’s endpoints. You can retrieve the tenant id , which is also called account id, from Copilot. This header is required.

​

x-fabric-request-id

string

Unique request ID for tracking.

​

x-fabric-channel-id

string

required

x-fabric-channel-id identifies the sales channel where the API request is being made; primarily for multichannel use cases. The channel ids are 12 corresponding to US and 13 corresponding to Canada. The default channel id is 12. This field is required.

Path Parameters

​

cartId

string

required

The 24-character system-generated Cart ID. This ID is generated using the Create cart endpoint.

Body

application/json

​

items

object[]

An array containing item objects with their information. One or more items can be added to the cart by passing multiple item objects into the array of the request body.

Showchild attributes

Response

200

application/json

Items added to the cart successfully

​

id

string

The unique identifier of the cart that was passed in the parameter.

Example:

"0e49199c-5849-4211-abe6-a97a3c4dcc56"

​

attributes

object

Custom attributes used to describe the cart, such as a wishlist cart.

Showchild attributes

​

configuration

object

Cart configurations determine the behavior within the cart.

Showchild attributes

​

customerContext

object

Customer context object containing customer information.

Showchild attributes

​

status

enum

The cart status indicates whether the cart is active or deleted.

Available options:

ACTIVE,

SOFT_DELETE

Example:

"ACTIVE"

​

state

object[]

The resource state is stored in an array that holds information about the current status of the cart.

Showchild attributes

​

price

object

The sum of the total amount of the cart.

Showchild attributes

​

promotions

object

A collection of promotions applied to the cart.

Showchild attributes

​

fees

object

A collection of fees associated with the cart.

Showchild attributes

​

adjustments

object

A collection of adjustments made to the cart.

Showchild attributes

​

addresses

object

A map of addresses added to the cart.

Showchild attributes

​

lineItems

object

A collection of items in the cart.

Showchild attributes

​

summary

object

A summary of items in the cart.

Showchild attributes

​

fulfillments

object

A map of fulfillments added to the cart.

Showchild attributes

​

coupons

object[]

An array containing all coupons added to the cart.

Showchild attributes

​

appliedCoupons

object[]

An array containing all coupons applied to the cart.

Showchild attributes

​

notAppliedCoupons

object[]

An array containing any coupons that were ineligible and not applied to the cart.

Showchild attributes

​

validations

object

Showchild attributes

​

payments

object

An object containing a collection of payments added to the cart.

Showchild attributes

​

channelId

string

Channel ID

Example:

"12"

​

currency

string

The currency that the cart will use when an order is created.

Example:

"USD"

​

updatedAt

string

The date and time in UTC when the cart was last updated.

Example:

"2024-06-13T16:50:00.682Z"

​

createdAt

string

The date and time when a cart was created.

Example:

"2024-06-13T16:50:00.682Z"

​

suggestedProducts

object[]

Showchild attributes

​

promotionMessages

object[]

Showchild attributes

​

errors

object[]

Showchild attributes

Was this page helpful?

YesNo

Create an order draft Update items

Ctrl+I

Assistant

Responses are generated using AI and may contain mistakes.