Webhook Suite / mensaje empaquetado tipo PubSub

validateDataPubSub decodifica Base64 y valida con etiquetasSuiteSchema. 2) EtiquetaService.receiveRequest → generarEtiqueta({ suiteRequest, apiResponse: true }). 3) Respuesta HTTP: mismo envelope que reconstrucción API (data.message = Procesado correctamente, data.responses = una entrada por guía procesada). Sin preHandler auth.

POST /receive v2.13.9
Autenticación
Bearer Token
Ambiente
Entorno de pruebas

Descripción

  1. validateDataPubSub decodifica Base64 y valida con etiquetasSuiteSchema. 2) EtiquetaService.receiveRequestgenerarEtiqueta({ suiteRequest, apiResponse: true }). 3) Respuesta HTTP: mismo envelope que reconstrucción API (data.message = Procesado correctamente, data.responses = una entrada por guía procesada). Sin preHandler auth.

Quick Start

  1. Obtén tus credenciales de acceso (Bearer Token).
  2. Selecciona el ambiente y completa los parámetros requeridos.
  3. Envía la solicitud y procesa la respuesta.

Ejemplo rápido

Generando ejemplo…

Endpoint

POST /receive

Base URL https://etiquetas-service-test.coordinadora.com/etiquetas

Parámetros

Sin parámetros declarados.

Body *

{
    "$ref": "#/components/schemas/PubSubEnvelope"
}

Ejemplo de request

{
    "message": {
        "data": "eyJndWlhIjp7ImNvZGlnb1JlbWlzaW9uIjoiNzM5NDAxMTUyMDcifX0=",
        "attributes": {
            "fuente": "suite"
        },
        "publishTime": "2026-04-16T21:40:00.000Z",
        "messageId": "msg-001"
    },
    "debug": {
        "geo": false
    }
}

Respuesta

200
Procesado. Cuerpo alineado con IAPIResponse en data (no expone el JSON crudo de Suite).
{
    "isError": false,
    "data": {
        "message": "Procesado correctamente",
        "responses": [
            {
                "codigoRemision": "73940115207",
                "existe": true,
                "reconstruido": false
            }
        ]
    },
    "timestamp": "2026-04-16T21:44:31.539Z",
    "id": "e94e4890ab315bc9ecbecbbfd5d1148a9b014a7f"
}

Ejemplo de respuesta

200 Procesado. Cuerpo alineado con `IAPIResponse` en `data` (no expone el JSON crudo de Suite).
{
    "isError": false,
    "data": {
        "message": "Procesado correctamente",
        "responses": [
            {
                "codigoRemision": "73940115207",
                "existe": true,
                "reconstruido": false
            }
        ]
    },
    "timestamp": "2026-04-16T21:44:31.539Z",
    "id": "e94e4890ab315bc9ecbecbbfd5d1148a9b014a7f"
}

Errores

400
Payload inválido o JSON interno inválido
{
    "isError": true,
    "message": "no se encontró data de pubsub",
    "code": "BAD_MESSAGE",
    "statusCode": 400,
    "timestamp": "2026-04-16 16:44:31",
    "id": "bad-pub-1"
}
500
Error no controlado
{
    "isError": true,
    "message": "Error interno",
    "code": "UNKNOWN_ERROR",
    "statusCode": 500,
    "timestamp": "2026-04-16 16:50:00",
    "id": "recv-500"
}