La API de integraciones de Customix te permite llevar tus pedidos personalizados a tus propios sistemas: los archivos de impresión que Customix ha generado y todo lo que tus clientes han introducido al personalizar, como nombres, textos personalizados, colores y diseños elegidos. Úsala cuando una herramienta de producción, una hoja de cálculo o una plataforma de automatización como Make necesite los detalles de tus pedidos sin que nadie tenga que copiarlos a mano.

Para obtener una clave de API, ve a Ajustes en la barra lateral izquierda, abre la pestaña Integraciones y haz clic en Crear clave en la tarjeta Clave de API. Consulta Cómo obtener la clave de API de Customix para ver los detalles.

🔑 Autenticación

Todas las solicitudes requieren tu clave de API en el encabezado:

Authorization: Bearer <your_api_key>

🌐 Base URL

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

📘 Endpoints

1. Obtener la lista de pedidos

Endpoint:

GET /orders

Descripción: obtiene tus pedidos personalizados, los más recientes primero de forma predeterminada.

Parámetros:

ParámetroTipoObligatorioDescripción
shopstring✅Nombre de la tienda de Shopify. Si la URL de tu tienda es abcdef.myshopify.com, entonces shop=abcdef
limitinteger⬜El valor predeterminado es 50 y el máximo es 250
created_at_mindate⬜Muestra los pedidos creados en esta fecha o después (formato: 2025-01-21)
created_at_maxdate⬜Muestra los pedidos creados en esta fecha o antes (formato: 2025-01-30)
order_statusstring⬜created: muestra solo los pedidos abiertos. paid: muestra solo los pedidos pagados. fulfilled: muestra solo los pedidos preparados.
order_bystring⬜El valor predeterminado es 'ordered_at desc'. También puede ser 'ordered_at asc', 'id asc' o 'id desc'

Encabezados:

EncabezadoValor
AuthorizationBearer API_KEY

Ejemplo de solicitud:

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

Respuesta:

{
  "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" }
          ]
        }
      ]
    }
  ]
}

Respuestas de error:

CódigoMensajeDescripción
401UnauthorizedToken no válido o ausente
403ForbiddenNo tienes permiso para ver los pedidos de esta tienda

2. Obtener un pedido concreto

Endpoint:

GET /orders/{id}

Descripción: obtiene un pedido, con sus archivos de impresión y los valores de personalización.

Parámetros:

ParámetroTipoObligatorioDescripción
shopstring✅Nombre de la tienda de Shopify. Si la URL de tu tienda es abcdef.myshopify.com, entonces shop=abcdef
idinteger✅ID del pedido de Shopify, en la ruta

Encabezados:

EncabezadoValor
AuthorizationBearer API_KEY
Content-Typeapplication/json

Ejemplo de solicitud:

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

Respuesta: un único pedido en data, con los mismos campos que una entrada de la lista anterior:

{
  "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" }
        ]
      }
    ]
  }
}

(Abreviado aquí: la respuesta real incluye todos los campos que se muestran en el ejemplo de la lista.)

Respuestas de error:

CódigoMensajeDescripción
401UnauthorizedToken no válido o ausente
403ForbiddenNo tienes permiso para ver este pedido
404Not FoundPedido no encontrado

3. Obtener la personalización de un pedido concreto

Endpoint:

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

Descripción: recupera una personalización de un pedido.

Parámetros:

ParámetroTipoObligatorioDescripción
shopstring✅Nombre de la tienda de Shopify. Si la URL de tu tienda es abcdef.myshopify.com, entonces shop=abcdef
order_idinteger✅ID del pedido de Shopify, en la ruta
public_customization_idstring✅El public_customization_id de la personalización, en la ruta. Está en la respuesta del pedido y, en Shopify, en el pedido como propiedad de artículo _cm-customization-id

Encabezados:

EncabezadoValor
AuthorizationBearer API_KEY
Content-Typeapplication/json

Ejemplo de solicitud:

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

Respuesta: la personalización por sí sola, sin envolver en 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" }
  ]
}

Respuestas de error:

CódigoMensajeDescripción
401UnauthorizedToken no válido o ausente
403ForbiddenNo tienes permiso para ver esta personalización
404Not FoundPedido no encontrado o personalización no encontrada

🖊️ Valores de personalización

Cada personalización incluye values: una entrada por cada campo de personalización guardado con el pedido, los mismos detalles que ves como propiedades del artículo en el pedido de Shopify. Cada entrada tiene:

  • key: el identificador del campo en tu plantilla. Es el mismo en todos los pedidos para el mismo campo de la misma plantilla, así que úsalo para asignar campos en tu integración.
  • label: el nombre de la opción que vieron tus clientes, por ejemplo "Name". Puede estar vacío en pedidos antiguos.
  • type: el tipo de opción, por ejemplo text-field, color-picker, font-swatch, image-swatch, layout-swatch, date-picker o file-upload.
  • value: lo que tu cliente eligió o introdujo, siempre como texto.

Cómo se lee value en cada tipo de opción:

  • Texto: exactamente lo que escribió tu cliente.
  • Selector de color: el código del color que eligió tu cliente.
  • Muestras de fuente, imagen, color y contorno: el valor de la muestra que eligió tu cliente.
  • Muestras de diseño: el nombre del diseño que eligió tu cliente, tal como se llamaba cuando hizo el pedido.
  • Selectores de fecha y hora: la fecha o la hora que eligió tu cliente.
  • Subidas de archivos y vectores: un enlace al archivo que subió tu cliente.
  • Paletas y fuentes de nube de palabras: los colores o las fuentes que eligió tu cliente, separados por comas.
  • Las opciones que no tienen forma de texto, como los estilos de mapa, las ubicaciones o las canciones de Spotify, devuelven un valor vacío: usa los archivos de impresión para esas.

⚠️ Códigos de error habituales

CódigoDescripción
400Bad Request
401Unauthorized: clave de API no válida o ausente
403Forbidden: sin permiso para esta tienda, o el acceso a la API no está disponible en tu plan actual
404Not Found
422Falta el nombre de la tienda: el parámetro shop es obligatorio
500Internal Server Error

📌 Notas

  • Todas las respuestas están en JSON.
  • Límite de solicitudes: 2 requests/second.
  • Escribe a [email protected] si tienes preguntas.

Actualizado el: 14/09/2026