The Customix Integrations API lets you pull your personalized orders into your own systems — the print files Customix generated and everything your customers entered while personalizing, such as names, custom text, colors and chosen layouts. Reach for it when a production tool, a spreadsheet or an automation platform like Make needs your order details without anyone copying them by hand.

To get an API key, go to Settings in the left sidebar, open the Integrations tab, then click Create key in the API Key card. See How can get Customix API key for the details.

🔑 Authentication

All requests require your API key in the header:

Authorization: Bearer <your_api_key>

🌐 Base URL

https://app.customix.io/api/integrations/v1

📘 Endpoints

1. Get List of Orders

Endpoint:

GET /orders

Description: Fetch your personalized orders, newest first by default.

Parameters:

ParameterTypeRequiredDescription
shopstring✅Shopify store name. If your store URL is abcdef.myshopify.com, then shop=abcdef
limitinteger⬜Default is 50, maximum value is 250
created_at_mindate⬜Show orders created at or after this date (format: 2025-01-21)
created_at_maxdate⬜Show orders created at or before this date (format: 2025-01-30)
order_statusstring⬜created: show only open orders. paid: show only paid orders. fulfilled: show only fulfilled orders.
order_bystring⬜Default is 'ordered_at desc'. It can also be 'ordered_at asc', 'id asc' or 'id desc'

Headers:

HeaderValue
AuthorizationBearer API_KEY

Example request:

GET https://app.customix.io/api/integrations/v1/orders?shop=abcdef&limit=2

Response:

{
  "data": [
    {
      "shop": "abcdef.myshopify.com",
      "order_id": 123456789,
      "order_number": "#1001",
      "currency": "USD",
      "customer": "John Doe",
      "email": "[email protected]",
      "ip": "123.123.123.123",
      "total_price": 123.45,
      "financial_status": "paid",
      "fulfillment_status": "fulfilled",
      "ordered_at": "2025-01-21 01:01:01",
      "customizations": [
        {
          "id": "01jjavmg7t7vqj5z6qvxwie14b",
          "public_customization_id": "01jjavmg7t7vqj5z6qvxwpc9kd",
          "campaign_id": "01jphjdfmtxhaio94h0wd0kv0c",
          "shopify_line_item_id": 11106133639222,
          "shopify_product_id": 11179841648222,
          "shopify_variant_id": 11191300929074,
          "platform": "shopify",
          "line_item_quantity": 1,
          "files": [
            {
              "id": "01jb3092vabc7m8qw4cdqv09we",
              "name": "default",
              "path": "https://d6opbaohxg209.cloudfront.net/temp/extracted_67d7d664c7awe/Accessory/Laptop.png"
            }
          ],
          "values": [
            { "key": "100001", "label": "Name", "type": "text-field", "value": "Emma" },
            { "key": "layout_100003", "label": "Layout", "type": "layout-swatch", "value": "Portrait" },
            { "key": "100004", "label": "Color", "type": "color-picker", "value": "#1a2b3c" }
          ]
        }
      ]
    }
  ]
}

Error Responses:

CodeMessageDescription
401UnauthorizedInvalid or missing token
403ForbiddenYou do not have permission to view orders for this shop

2. Get Specific Order

Endpoint:

GET /orders/{id}

Description: Fetch one order, with its print files and personalization values.

Parameters:

ParameterTypeRequiredDescription
shopstring✅Shopify store name. If your store URL is abcdef.myshopify.com, then shop=abcdef
idinteger✅Shopify order ID, in the path

Headers:

HeaderValue
AuthorizationBearer API_KEY
Content-Typeapplication/json

Example request:

GET https://app.customix.io/api/integrations/v1/orders/123456789?shop=abcdef

Response: a single order in data, with the same fields as one entry of the list above:

{
  "data": {
    "shop": "abcdef.myshopify.com",
    "order_id": 123456789,
    "order_number": "#1001",
    "customizations": [
      {
        "id": "01jjavmg7t7vqj5z6qvxwie14b",
        "public_customization_id": "01jjavmg7t7vqj5z6qvxwpc9kd",
        "line_item_quantity": 1,
        "files": [
          { "id": "01jb3092vabc7m8qw4cdqv09we", "name": "default", "path": "https://d6opbaohxg209.cloudfront.net/temp/extracted_67d7d664c7awe/Accessory/Laptop.png" }
        ],
        "values": [
          { "key": "100001", "label": "Name", "type": "text-field", "value": "Emma" }
        ]
      }
    ]
  }
}

(Shortened here — the real response includes every field shown in the list example.)

Error Responses:

CodeMessageDescription
401UnauthorizedInvalid or missing token
403ForbiddenYou do not have permission to view this order
404Not FoundOrder not found

3. Get Specific Order's Customization

Endpoint:

GET /orders/{order_id}/customizations/{public_customization_id}

Description: Retrieve one customization of an order.

Parameters:

ParameterTypeRequiredDescription
shopstring✅Shopify store name. If your store URL is abcdef.myshopify.com, then shop=abcdef
order_idinteger✅Shopify order ID, in the path
public_customization_idstring✅The customization's public_customization_id, in the path. It is in the order response, and on the order in Shopify as the _cm-customization-id item property

Headers:

HeaderValue
AuthorizationBearer API_KEY
Content-Typeapplication/json

Example request:

GET https://app.customix.io/api/integrations/v1/orders/123456789/customizations/01jjavmg7t7vqj5z6qvxwpc9kd?shop=abcdef

Response: the customization on its own, not wrapped in data:

{
  "id": "01jjavmg7t7vqj5z6qvxwie14b",
  "public_customization_id": "01jjavmg7t7vqj5z6qvxwpc9kd",
  "campaign_id": "01jphjdfmtxhaio94h0wd0kv0c",
  "shopify_line_item_id": 11106133639222,
  "shopify_product_id": 11179841648222,
  "shopify_variant_id": 11191300929074,
  "platform": "shopify",
  "line_item_quantity": 1,
  "files": [
    {
      "id": "01jb3092vabc7m8qw4cdqv09we",
      "name": "default",
      "path": "https://d6opbaohxg209.cloudfront.net/temp/extracted_67d7d664c7awe/Accessory/Laptop.png"
    }
  ],
  "values": [
    { "key": "100001", "label": "Name", "type": "text-field", "value": "Emma" },
    { "key": "layout_100003", "label": "Layout", "type": "layout-swatch", "value": "Portrait" }
  ]
}

Error Responses:

CodeMessageDescription
401UnauthorizedInvalid or missing token
403ForbiddenYou do not have permission to view this customization
404Not FoundOrder not found, or Customization not found

🖊️ Customization Values

Every customization includes values — one entry for each personalization field saved with the order, the same details you see as item properties on the order in Shopify. Each entry has:

  • key: the field's identifier in your template. It stays the same from order to order for the same field of the same template, so use it to map fields in your integration.
  • label: the option name your customers saw, for example "Name". It can be empty on older orders.
  • type: the kind of option, for example text-field, color-picker, font-swatch, image-swatch, layout-swatch, date-picker or file-upload.
  • value: what your customer chose or entered, always as text.

How value reads for each kind of option:

  • Text: exactly what your customer typed.
  • Color picker: the color code your customer picked.
  • Font, image, color and stroke swatches: the value of the swatch your customer picked.
  • Layout swatches: the name of the layout your customer picked, as it was named when they placed the order.
  • Date and time pickers: the date or time your customer picked.
  • File and vector uploads: a link to the file your customer uploaded.
  • Palettes and word cloud fonts: the colors or fonts your customer picked, separated by commas.
  • Options that have no text form, such as map styles, locations or Spotify tracks, come back with an empty value — use the print files for those.

⚠️ Common Error Codes

CodeDescription
400Bad Request
401Unauthorized — invalid or missing API key
403Forbidden — no permission for this shop, or API access is not available on your current plan
404Not Found
422Missing shop name — the shop parameter is required
500Internal Server Error

📌 Notes

  • All responses are in JSON.
  • Rate limit: 2 requests/second.
  • Contact [email protected] for questions.

Updated on: 14/09/2026