Documentación de la API

Conecta tu negocio con Aura

La API REST de Aura te deja automatizar todo: catálogo, órdenes, clientes, facturación CFDI 4.0, inventario y pagos. Integra tu ERP, tu tienda o tus propias herramientas con llamadas HTTP sencillas y autenticación por API key.

Base URL https://aura.cownnection.com/api/v1

Qué puedes construir

Sincroniza tu inventario

Mantén el stock de tu ERP o tienda física al día en todos tus canales, en tiempo real.

Recibe tus órdenes

Trae automáticamente las ventas de Aura a tu sistema contable o de fulfillment.

Conecta tu CRM

Empuja contactos y leads desde tus formularios o landing pages hacia Aura.

Factura CFDI 4.0

Timbra y cancela facturas ante el SAT desde tu propio flujo, sin entrar al panel.

Reacciona a eventos

Escucha cuando entra una orden, un pago o baja el inventario y dispara tu automatización.

Carga tu catálogo

Sube y actualiza miles de productos y variantes de forma masiva por API.

Primeros pasos

  1. 1Genera tu API key

    Entra a tu panel de Aura → Configuración → API Keys y crea una llave. Elige los permisos (scopes) que tu integración necesita. La llave se muestra una sola vez: guárdala en un lugar seguro.

  2. 2Haz tu primera llamada

    Lista tus productos:

    curl -H "Authorization: Bearer aura_TU_LLAVE" \
      "https://aura.cownnection.com/api/v1/products?limit=20&page=1"
  3. 3Crea una orden
    curl -X POST "https://aura.cownnection.com/api/v1/orders" \
      -H "Authorization: Bearer aura_TU_LLAVE" \
      -H "Content-Type: application/json" \
      -d '{
        "customerId": "cust_123",
        "items": [{ "productId": "prod_456", "quantity": 2 }]
      }'

Autenticación

Todas las llamadas van con tu API key en el header Authorization.Las llaves empiezan con aura_ y son de larga duración.

Authorization: Bearer aura_a1b2c3d4e5f6...
Nunca expongas tu API key en el navegador ni en apps móviles. Úsala solo desde tu servidor. Si se filtra, revócala desde el panel y genera una nueva.

Permisos (scopes)

Cada API key tiene permisos acotados. Pide solo los que tu integración necesita — es más seguro. Una llave sin permisos es rechazada.

productsProductos, variantes, SKU/EAN, inventario
ordersListar, crear y actualizar órdenes y su fulfillment
customersClientes y contactos
leadsLeads y su conversión a oportunidad
dealsPipeline de ventas
invoicesCFDI 4.0, complementos, cancelación SAT
inboxWhatsApp / Instagram / Messenger
campaignsCampañas y automatizaciones
paymentsCobros, links de pago, reembolsos
webhooksSuscripciones a eventos
analyticsDashboards y reportes
warehousesStock, transferencias, WMS
*Todos los módulos (úsalo solo si de verdad lo necesitas)

Convenciones

Paginación

Los listados aceptan page y limit (máximo 100). La respuesta trae total para calcular las páginas.

Formato

Todo es JSON. Fechas en ISO 8601 (UTC). Montos en la moneda de la orden. IDs como strings.

Idempotencia

En operaciones sensibles (crear orden, timbrar factura) puedes mandar un Idempotency-Key para evitar duplicados si reintentas.

Productos

Administra tu catálogo: productos, variantes, precios e inventario.

GET/products
GET/products/:id
POST/products
PATCH/products/:id
DELETE/products/:id
curl -H "Authorization: Bearer aura_TU_LLAVE" \
  "https://aura.cownnection.com/api/v1/products?limit=20&page=1"
Respuesta
{
  "data": [
    {
      "id": "prod_456",
      "name": "Tenis Runner Pro",
      "sku": "RUN-PRO-42",
      "price": 1899.00,
      "currency": "MXN",
      "inventory": 34,
      "variants": [ { "id": "var_1", "name": "Talla 42", "inventory": 12 } ]
    }
  ],
  "total": 128,
  "page": 1,
  "limit": 20
}

Órdenes

Crea ventas, consúltalas y actualiza su estado de fulfillment.

GET/orders
GET/orders/:id
POST/orders
PATCH/orders/:id
curl -X POST "https://aura.cownnection.com/api/v1/orders" \
  -H "Authorization: Bearer aura_TU_LLAVE" \
  -H "Content-Type: application/json" \
  -d '{
    "customerId": "cust_123",
    "items": [{ "productId": "prod_456", "quantity": 2 }]
  }'
Respuesta
{
  "id": "ord_789",
  "orderNumber": "AUR-1042",
  "status": "pending",
  "customerId": "cust_123",
  "items": [ { "productId": "prod_456", "quantity": 2, "unitPrice": 1899.00 } ],
  "totalAmount": 3798.00,
  "currency": "MXN",
  "createdAt": "2026-07-13T08:15:00Z"
}

Clientes (CRM)

Sincroniza contactos y clientes con tu CRM o tus formularios.

GET/customers
POST/customers
GET/crm/leads
POST/crm/leads
curl -X POST "https://aura.cownnection.com/api/v1/customers" \
  -H "Authorization: Bearer aura_TU_LLAVE" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Juan Pérez", "email": "juan@correo.com", "phone": "+525512345678" }'

Facturación CFDI 4.0 (México)

Timbra y cancela CFDI 4.0 ante el SAT (vía PAC autorizado), con idempotencia y catálogos oficiales.

POST/invoices/:id/timbrar
POST/invoices/:id/cancel
GET/invoices/cfdi/cancellation-motivos
GET/invoices/cfdi/regimenes-fiscales

Timbrar consume 10 créditos. La cancelación exige un motivo SAT (01–04).

Webhooks

En vez de estar consultando la API, deja que Aura te avise. Suscribe una URL y recibirás un POST cada vez que ocurra un evento en tu cuenta. Firma HMAC-SHA256 y hasta 6 reintentos con espera creciente.

curl -X POST "https://aura.cownnection.com/api/v1/webhooks" \
  -H "Authorization: Bearer aura_TU_LLAVE" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://tu-servidor.com/webhook",
    "events": ["order.created", "order.paid", "inventory.low"]
  }'

Verifica la firma

Siempre valida que el POST venga de Aura antes de procesarlo:

import crypto from "crypto";

const firma = crypto
  .createHmac("sha256", TU_WEBHOOK_SECRET)
  .update(rawBody)
  .digest("hex");

if (firma !== req.headers["x-aura-signature-256"]) {
  return res.status(401).end(); // firma inválida
}

Eventos disponibles (18)

order.createdorder.updatedorder.paidorder.shippedorder.cancelledproduct.createdproduct.updatedproduct.deletedlead.createdlead.converteddeal.wondeal.lostinvoice.createdpayment.receivedcontact.createdinventory.lowapproval.requestedapproval.decided

Catálogo siempre actualizado en https://aura.cownnection.com/api/v1/webhooks/events.

Límites y errores

Rate limits
  • Global: 60 req/min por IP
  • Por API key: 3,600 req/hora (configurable)
  • Al exceder recibes 429 con Retry-After
Errores
  • 401Llave inválida o ausente
  • 403La llave no tiene ese permiso
  • 402Sin créditos (funciones de IA)
  • 429Límite de peticiones excedido

Los errores llegan con formato { statusCode, message, error }.