Sign Customiser

Return one Store-scoped order with customer and address snapshots plus its modern line items. Cached legacy products are never serialised; an older cached-only order therefore returns an empty line_items array. Money uses integer minor units with an explicit currency, dimensions are centimetres, and timestamps are ISO 8601 UTC. Requires orders:read and is safe to retry.

GET /api/v3/orders/{order_id}

Authorisation

Bearer token required. Include in the Authorization header.

Path parameters

order_id string path required

The order id returned by the list operation.

Example: 123

Show an order
curl https://web.signcustomiser.com/api/v3/orders/123 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_TOKEN'
Response 200
{
  "data": {
    "object": "order",
    "id": 123,
    "store_order_id": "gid://shopify/Order/1001",
    "store_order_number": "#1001",
    "status": "received",
    "status_display_name": "Received",
    "total_amount": 31900,
    "currency": "AUD",
    "shipping_method": "Express",
    "customer": {
      "first_name": "Ada",
      "last_name": "Lovelace",
      "email": "ada@example.com",
      "phone": "+61 400 000 001"
    },
    "billing_address": {
      "first_name": "Ada",
      "last_name": "Lovelace",
      "company": null,
      "address_1": "1 Example Street",
      "address_2": null,
      "city": "Adelaide",
      "province": "SA",
      "postcode": "5000",
      "country": "AU",
      "email": "ada@example.com",
      "phone": "+61 400 000 001"
    },
    "shipping_address": {
      "first_name": "Ada",
      "last_name": "Lovelace",
      "company": null,
      "address_1": "1 Example Street",
      "address_2": null,
      "city": "Adelaide",
      "province": "SA",
      "postcode": "5000",
      "country": "AU",
      "email": "ada@example.com",
      "phone": "+61 400 000 001"
    },
    "line_items": [
      {
        "object": "order_line_item",
        "id": 77,
        "store_product_id": "gid://shopify/Product/77",
        "customiser_id": 42,
        "title": "Custom neon sign",
        "quantity": 2,
        "unit_price_amount": 15950,
        "currency": "AUD",
        "preview_image_url": "https://cdn.example.com/sign.png",
        "width_cm": 80.5,
        "height_cm": 30.25,
        "length_cm": 2
      }
    ],
    "created_at": "2026-07-18T02:15:00Z",
    "updated_at": "2026-07-18T02:16:00Z"
  },
  "links": {
    "self": "https://web.signcustomiser.com/api/v3/orders/123",
    "documentation": "https://www.signcustomiser.com/help/api/"
  },
  "meta": {
    "api_version": "v3",
    "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
  }
}
Response 401
{
  "type": "https://www.signcustomiser.com/help/api/problems/missing_api_key",
  "title": "Missing API key",
  "status": 401,
  "code": "missing_api_key",
  "detail": "Provide a store API key as a bearer token.",
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
Response 403
{
  "type": "https://www.signcustomiser.com/help/api/problems/insufficient_scope",
  "title": "Insufficient scope",
  "status": 403,
  "code": "insufficient_scope",
  "detail": "This operation requires the orders:read scope.",
  "required_scopes": [
    "orders:read"
  ],
  "granted_scopes": [],
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
Response 404
{
  "type": "https://www.signcustomiser.com/help/api/problems/resource_not_found",
  "title": "Resource not found",
  "status": 404,
  "code": "resource_not_found",
  "detail": "The requested resource does not exist or does not belong to the authenticated store.",
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
Response 422
{
  "type": "https://www.signcustomiser.com/help/api/problems/unknown_parameter",
  "title": "Unknown query parameter",
  "status": 422,
  "code": "unknown_parameter",
  "detail": "This endpoint accepts no query parameters.",
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
Response 429
{
  "type": "https://www.signcustomiser.com/help/api/problems/rate_limited",
  "title": "Too many requests",
  "status": 429,
  "code": "rate_limited",
  "detail": "You have exceeded the request limit for this API key.",
  "retry_after": 60,
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}