{
  "info": {
    "_postman_id": "62cea1a3-29a9-5968-806b-251c5cc08206",
    "name": "Rapiboy | API clientes",
    "description": "Documentación de integración de la API de Rapiboy. Los identificadores, personas y precios de los ejemplos son ficticios.\n\nLos identificadores y fechas son ejemplos: reemplazarlos por valores del ambiente autorizado.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "variable": [
    {
      "key": "BaseUrl",
      "value": "https://uat.rapiboy.com",
      "type": "string"
    },
    {
      "key": "Token",
      "value": "",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "NextDaySmart",
      "item": [
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido por query string",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Get?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Get"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Busca por IdPedido, ReferenciaExterna o TrackingEncriptado. Envíe al menos uno de esos identificadores. Unico.Precio es texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en esta consulta y puede ser 0.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Get?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Get"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Busca por IdPedido, ReferenciaExterna o TrackingEncriptado. Envíe al menos uno de esos identificadores. Unico.Precio es texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en esta consulta y puede ser 0.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Get?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Get"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Busca por IdPedido, ReferenciaExterna o TrackingEncriptado. Envíe al menos uno de esos identificadores. Unico.Precio es texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en esta consulta y puede ser 0.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. IdEstado se aplica en esta ruta. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. IdEstado se aplica en esta ruta. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. IdEstado se aplica en esta ruta. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener contenido QR por bulto",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Qr",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Qr"
              ]
            },
            "description": "Devuelve una lista de cadenas; cada cadena contiene JSON serializado para QR de un bulto. No es un PDF Base64. Los campos interiores actuales son Ref, IdR, Fle, Dir, IdB, IdxB y CanB.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartQr)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Qr",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Qr"
                  ]
                },
                "description": "Devuelve una lista de cadenas; cada cadena contiene JSON serializado para QR de un bulto. No es un PDF Base64. Los campos interiores actuales son Ref, IdR, Fle, Dir, IdB, IdxB y CanB.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartQr)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  \"{\\\"Ref\\\": \\\"PEDIDO-EJEMPLO-001\\\", \\\"IdR\\\": 900001, \\\"Fle\\\": null, \\\"Dir\\\": \\\"Dirección de ejemplo\\\", \\\"IdB\\\": 900101, \\\"IdxB\\\": 0, \\\"CanB\\\": 1}\"\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Qr",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Qr"
                  ]
                },
                "description": "Devuelve una lista de cadenas; cada cadena contiene JSON serializado para QR de un bulto. No es un PDF Base64. Los campos interiores actuales son Ref, IdR, Fle, Dir, IdB, IdxB y CanB.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartQr)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener etiquetas ZPL",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Zpl",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Zpl"
              ]
            },
            "description": "Lista de cadenas ZPL, una etiqueta por bulto. Su impresión depende de una impresora y configuración compatibles.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartZpl)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Zpl",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Zpl"
                  ]
                },
                "description": "Lista de cadenas ZPL, una etiqueta por bulto. Su impresión depende de una impresora y configuración compatibles.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartZpl)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  \"^XA^FO30,30^ADN,36,20^FDETIQUETA DE EJEMPLO^FS^XZ\"\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Zpl",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Zpl"
                  ]
                },
                "description": "Lista de cadenas ZPL, una etiqueta por bulto. Su impresión depende de una impresora y configuración compatibles.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartZpl)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Consultar repartidor",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/InfoRepa",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "InfoRepa"
              ]
            },
            "description": "Consulta información del repartidor. Envíe al menos uno de Documento, Patente o IdMotoboy; si envía varios, se combinan con AND. Reemplace el documento ilustrativo por el dato autorizado de su operación.\nRequiere una reserva del día actual, sin cancelar ni finalizar, propia de la cuenta o asociada a pedidos propios no cancelados ni eliminados. Sin ese vínculo no se divulgan datos personales ni ubicación del repartidor.\nLa respuesta incluye Nombre, Apellido, Patente, Documento, Latitud, Longitud y Viajes. Cada elemento de Viajes contiene Id, Referencia, ClienteDestino y DireccionDestino. Viajes contiene pedidos de la cuenta autenticada asociados al repartidor y a reservas del día actual.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartInfoRepa)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"Documento\": \"DOCUMENTO-DE-EJEMPLO\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/InfoRepa",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "InfoRepa"
                  ]
                },
                "description": "Consulta información del repartidor. Envíe al menos uno de Documento, Patente o IdMotoboy; si envía varios, se combinan con AND. Reemplace el documento ilustrativo por el dato autorizado de su operación.\nRequiere una reserva del día actual, sin cancelar ni finalizar, propia de la cuenta o asociada a pedidos propios no cancelados ni eliminados. Sin ese vínculo no se divulgan datos personales ni ubicación del repartidor.\nLa respuesta incluye Nombre, Apellido, Patente, Documento, Latitud, Longitud y Viajes. Cada elemento de Viajes contiene Id, Referencia, ClienteDestino y DireccionDestino. Viajes contiene pedidos de la cuenta autenticada asociados al repartidor y a reservas del día actual.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartInfoRepa)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"Documento\": \"DOCUMENTO-DE-EJEMPLO\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Nombre\": \"Repartidor de ejemplo\",\n  \"Apellido\": \"\",\n  \"Documento\": \"DOCUMENTO-DE-EJEMPLO\",\n  \"Patente\": \"PATENTE-DE-EJEMPLO\",\n  \"Viajes\": [\n    {\n      \"Id\": 900001,\n      \"Referencia\": \"PEDIDO-EJEMPLO-001\",\n      \"ClienteDestino\": \"Destinatario de ejemplo\",\n      \"DireccionDestino\": \"Av. de ejemplo 100\"\n    }\n  ]\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/InfoRepa",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "InfoRepa"
                  ]
                },
                "description": "Consulta información del repartidor. Envíe al menos uno de Documento, Patente o IdMotoboy; si envía varios, se combinan con AND. Reemplace el documento ilustrativo por el dato autorizado de su operación.\nRequiere una reserva del día actual, sin cancelar ni finalizar, propia de la cuenta o asociada a pedidos propios no cancelados ni eliminados. Sin ese vínculo no se divulgan datos personales ni ubicación del repartidor.\nLa respuesta incluye Nombre, Apellido, Patente, Documento, Latitud, Longitud y Viajes. Cada elemento de Viajes contiene Id, Referencia, ClienteDestino y DireccionDestino. Viajes contiene pedidos de la cuenta autenticada asociados al repartidor y a reservas del día actual.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartInfoRepa)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"Documento\": \"DOCUMENTO-DE-EJEMPLO\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cotizar NextDaySmart",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Cotizar",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Cotizar"
              ]
            },
            "description": "Usa Bultos, no Paquetes. Exige CPDestino válido o coordenadas destino válidas. Las coordenadas no admiten null: si se cotiza por código postal, omitirlas. Precio del ejemplo ficticio; no identifica una tarifa real.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"CPOrigen\": \"5000\",\n  \"CPDestino\": \"1416\",\n  \"ValorDeclarado\": 0,\n  \"Bultos\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Cotizar",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Cotizar"
                  ]
                },
                "description": "Usa Bultos, no Paquetes. Exige CPDestino válido o coordenadas destino válidas. Las coordenadas no admiten null: si se cotiza por código postal, omitirlas. Precio del ejemplo ficticio; no identifica una tarifa real.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"CPOrigen\": \"5000\",\n  \"CPDestino\": \"1416\",\n  \"ValorDeclarado\": 0,\n  \"Bultos\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Precio\": 100.5\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Cotizar",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Cotizar"
                  ]
                },
                "description": "Usa Bultos, no Paquetes. Exige CPDestino válido o coordenadas destino válidas. Las coordenadas no admiten null: si se cotiza por código postal, omitirlas. Precio del ejemplo ficticio; no identifica una tarifa real.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"CPOrigen\": \"5000\",\n  \"CPDestino\": \"1416\",\n  \"ValorDeclarado\": 0,\n  \"Bultos\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDaySmart/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDaySmart",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDaySmart/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDaySmart",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDaySmartEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "OnDemandSmart",
      "item": [
        {
          "name": "Convertir pedido de Mercado Libre Flex",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/ConversionMercadoLibre",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "ConversionMercadoLibre"
              ]
            },
            "description": "Convierte un pedido Flex de Mercado Libre en un pedido Rapiboy. Requiere Token en el header, una integración Flex activa de la cuenta autenticada y una dirección de origen configurada. Enviar exactamente uno de IdFlex o IdShipping, con valor positivo. IdFlex identifica el envío de Mercado Libre; IdShipping es la referencia numérica de la orden usada en la búsqueda del vendedor, no un alias de IdFlex. Se consultan únicamente las integraciones de la cuenta. La respuesta se devuelve después de completar la conversión y tiene los mismos campos que OnDemandSmart/Post, incluido IdPedido. Una orden o envío ya convertido se rechaza; ante un resultado incierto, consultar el pedido antes de reintentar.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartConversionMercadoLibre)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdFlex\": 1230001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Pedido convertido; respuesta equivalente a la creación de un pedido.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/ConversionMercadoLibre",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "ConversionMercadoLibre"
                  ]
                },
                "description": "Convierte un pedido Flex de Mercado Libre en un pedido Rapiboy. Requiere Token en el header, una integración Flex activa de la cuenta autenticada y una dirección de origen configurada. Enviar exactamente uno de IdFlex o IdShipping, con valor positivo. IdFlex identifica el envío de Mercado Libre; IdShipping es la referencia numérica de la orden usada en la búsqueda del vendedor, no un alias de IdFlex. Se consultan únicamente las integraciones de la cuenta. La respuesta se devuelve después de completar la conversión y tiene los mismos campos que OnDemandSmart/Post, incluido IdPedido. Una orden o envío ya convertido se rechaza; ante un resultado incierto, consultar el pedido antes de reintentar.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartConversionMercadoLibre)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdFlex\": 1230001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"TrackingId\": \"900001\",\n  \"Estado\": 10,\n  \"Precio\": \"100.50\"\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Token, identificador, integración o conversión inválidos; el mensaje depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/ConversionMercadoLibre",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "ConversionMercadoLibre"
                  ]
                },
                "description": "Convierte un pedido Flex de Mercado Libre en un pedido Rapiboy. Requiere Token en el header, una integración Flex activa de la cuenta autenticada y una dirección de origen configurada. Enviar exactamente uno de IdFlex o IdShipping, con valor positivo. IdFlex identifica el envío de Mercado Libre; IdShipping es la referencia numérica de la orden usada en la búsqueda del vendedor, no un alias de IdFlex. Se consultan únicamente las integraciones de la cuenta. La respuesta se devuelve después de completar la conversión y tiene los mismos campos que OnDemandSmart/Post, incluido IdPedido. Una orden o envío ya convertido se rechaza; ante un resultado incierto, consultar el pedido antes de reintentar.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartConversionMercadoLibre)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdFlex\": 1230001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\nEsta ruta sobrescribe EsOnDemand según la modalidad de la cuenta; no sustituye al flujo genérico /v1/Viaje/Post con EsOnDemand=true. Para ODS Argentina/Brasil fija FechaHastaEntrega a tres horas desde el alta.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\nEsta ruta sobrescribe EsOnDemand según la modalidad de la cuenta; no sustituye al flujo genérico /v1/Viaje/Post con EsOnDemand=true. Para ODS Argentina/Brasil fija FechaHastaEntrega a tres horas desde el alta.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": \"100.50\"\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\nEsta ruta sobrescribe EsOnDemand según la modalidad de la cuenta; no sustituye al flujo genérico /v1/Viaje/Post con EsOnDemand=true. Para ODS Argentina/Brasil fija FechaHastaEntrega a tres horas desde el alta.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con cuerpo GET",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/Get",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "Get"
              ]
            },
            "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "OnDemandBasic",
      "item": [
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con cuerpo GET",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/Get",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "Get"
              ]
            },
            "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cotizar OnDemandBasic",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/Cotizar",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "Cotizar"
              ]
            },
            "description": "Cotización OnDemandBasic mediante GET con body JSON. Informe direccion, idVehiculo y fecha. Obtenga idVehiculo desde LastMile/Vehiculos. El resultado depende de cobertura, cuenta, vehículo y fecha.\nRespuesta de éxito: Resultado, Precio, Demora y Distancia. Los valores numéricos del ejemplo son ilustrativos.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios. Enviar Fecha con hora para seleccionar el turno: antes de 16:00, mañana; desde 16:00, tarde. Enviar solo la fecha selecciona mañana.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"Direccion\": \"Dirección de ejemplo, Chile\",\n  \"IdVehiculo\": 1,\n  \"Fecha\": \"2030-01-15T17:00:00\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Cotizar",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Cotizar"
                  ]
                },
                "description": "Cotización OnDemandBasic mediante GET con body JSON. Informe direccion, idVehiculo y fecha. Obtenga idVehiculo desde LastMile/Vehiculos. El resultado depende de cobertura, cuenta, vehículo y fecha.\nRespuesta de éxito: Resultado, Precio, Demora y Distancia. Los valores numéricos del ejemplo son ilustrativos.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios. Enviar Fecha con hora para seleccionar el turno: antes de 16:00, mañana; desde 16:00, tarde. Enviar solo la fecha selecciona mañana.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"Direccion\": \"Dirección de ejemplo, Chile\",\n  \"IdVehiculo\": 1,\n  \"Fecha\": \"2030-01-15T17:00:00\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Precio\": 100.5,\n  \"Distancia\": 1.2,\n  \"Demora\": 20\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Cotizar",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Cotizar"
                  ]
                },
                "description": "Cotización OnDemandBasic mediante GET con body JSON. Informe direccion, idVehiculo y fecha. Obtenga idVehiculo desde LastMile/Vehiculos. El resultado depende de cobertura, cuenta, vehículo y fecha.\nRespuesta de éxito: Resultado, Precio, Demora y Distancia. Los valores numéricos del ejemplo son ilustrativos.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios. Enviar Fecha con hora para seleccionar el turno: antes de 16:00, mañana; desde 16:00, tarde. Enviar solo la fecha selecciona mañana.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"Direccion\": \"Dirección de ejemplo, Chile\",\n  \"IdVehiculo\": 1,\n  \"Fecha\": \"2030-01-15T17:00:00\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandBasic/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandBasic",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandBasic/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandBasic",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandBasicEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "Food",
      "item": [
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con cuerpo GET",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Get",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Get"
              ]
            },
            "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Crear ruta",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Ruta",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Ruta"
              ]
            },
            "description": "Crea una ruta manual de la cuenta autenticada. Fecha es obligatoria en la práctica: use una fecha válida, por ejemplo yyyy-MM-dd. La respuesta HTTP 200 es el IdRuta numérico. No envíe Fecha vacía.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n\n[Catálogo de errores](/documentacionapi/errores#foodRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"Fecha\": \"2030-01-15\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Ruta",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Ruta"
                  ]
                },
                "description": "Crea una ruta manual de la cuenta autenticada. Fecha es obligatoria en la práctica: use una fecha válida, por ejemplo yyyy-MM-dd. La respuesta HTTP 200 es el IdRuta numérico. No envíe Fecha vacía.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n\n[Catálogo de errores](/documentacionapi/errores#foodRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"Fecha\": \"2030-01-15\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "900201",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Ruta",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Ruta"
                  ]
                },
                "description": "Crea una ruta manual de la cuenta autenticada. Fecha es obligatoria en la práctica: use una fecha válida, por ejemplo yyyy-MM-dd. La respuesta HTTP 200 es el IdRuta numérico. No envíe Fecha vacía.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n\n[Catálogo de errores](/documentacionapi/errores#foodRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"Fecha\": \"2030-01-15\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Asignar pedidos a ruta",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/AsignarRuta",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "AsignarRuta"
              ]
            },
            "description": "Asigna pedidos a una ruta de la cuenta autenticada. IdRuta e IdPedidos son necesarios. La ruta y todos los pedidos deben pertenecer a la cuenta; la ruta no debe contener pedidos asignados. Envíe un array de IDs sin repetidos. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodAsignarRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdRuta\": 900201,\n  \"IdPedidos\": [\n    900001\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/AsignarRuta",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "AsignarRuta"
                  ]
                },
                "description": "Asigna pedidos a una ruta de la cuenta autenticada. IdRuta e IdPedidos son necesarios. La ruta y todos los pedidos deben pertenecer a la cuenta; la ruta no debe contener pedidos asignados. Envíe un array de IDs sin repetidos. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodAsignarRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdRuta\": 900201,\n  \"IdPedidos\": [\n    900001\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/AsignarRuta",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "AsignarRuta"
                  ]
                },
                "description": "Asigna pedidos a una ruta de la cuenta autenticada. IdRuta e IdPedidos son necesarios. La ruta y todos los pedidos deben pertenecer a la cuenta; la ruta no debe contener pedidos asignados. Envíe un array de IDs sin repetidos. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodAsignarRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdRuta\": 900201,\n  \"IdPedidos\": [\n    900001\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Quitar pedido de ruta",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/QuitarRuta",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "QuitarRuta"
              ]
            },
            "description": "Quita la asignación del pedido. La ruta y el pedido deben pertenecer a la cuenta autenticada. Informe la ruta actual del pedido. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n\n[Catálogo de errores](/documentacionapi/errores#foodQuitarRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdRuta\": 900201,\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/QuitarRuta",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "QuitarRuta"
                  ]
                },
                "description": "Quita la asignación del pedido. La ruta y el pedido deben pertenecer a la cuenta autenticada. Informe la ruta actual del pedido. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n\n[Catálogo de errores](/documentacionapi/errores#foodQuitarRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdRuta\": 900201,\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/QuitarRuta",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "QuitarRuta"
                  ]
                },
                "description": "Quita la asignación del pedido. La ruta y el pedido deben pertenecer a la cuenta autenticada. Informe la ruta actual del pedido. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n\n[Catálogo de errores](/documentacionapi/errores#foodQuitarRuta)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdRuta\": 900201,\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Consultar tracking de una reserva",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/Tracking?idReserva=900301",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "Tracking"
              ],
              "query": [
                {
                  "key": "idReserva",
                  "value": "900301",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Requiere una reserva de la cuenta con repartidor asignado. Devuelve coordenadas del repartidor y pedidos de esa reserva.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n\n[Catálogo de errores](/documentacionapi/errores#foodTracking)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Tracking?idReserva=900301",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Tracking"
                  ],
                  "query": [
                    {
                      "key": "idReserva",
                      "value": "900301",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Requiere una reserva de la cuenta con repartidor asignado. Devuelve coordenadas del repartidor y pedidos de esa reserva.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n\n[Catálogo de errores](/documentacionapi/errores#foodTracking)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Fecha\": null,\n  \"Nombre\": \"Repartidor de ejemplo\",\n  \"Latitud\": null,\n  \"Longitud\": null,\n  \"Pedidos\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/Tracking?idReserva=900301",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "Tracking"
                  ],
                  "query": [
                    {
                      "key": "idReserva",
                      "value": "900301",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Requiere una reserva de la cuenta con repartidor asignado. Devuelve coordenadas del repartidor y pedidos de esa reserva.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n\n[Catálogo de errores](/documentacionapi/errores#foodTracking)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "Sims",
      "item": [
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Sims/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Sims",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con cuerpo GET",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Sims/Get",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Sims",
                "Get"
              ]
            },
            "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Sims/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Sims",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Sims/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Sims",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Sims/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Sims",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Sims/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Sims",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Sims/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Sims",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. Esta ruta no aplica IdReserva como filtro en la implementación revisada.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#simsGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "SaaS",
      "item": [
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con cuerpo GET",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/Get",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "Get"
              ]
            },
            "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/SaaS/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "SaaS",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/SaaS/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "SaaS",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#saaSEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "NextDayBasic",
      "item": [
        {
          "name": "Crear pedido",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "Post"
              ]
            },
            "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Post"
                  ]
                },
                "description": "Creación por modalidad. Los requisitos se determinan por cuenta y proveedor. Token en header recomendado; las rutas por modalidad admiten compatibilidad con Token en cuerpo. Antes de reintentar una creación, consultar el pedido para evitar duplicados.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicPost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con cuerpo GET",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/Get",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "Get"
              ]
            },
            "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Get",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Get"
                  ]
                },
                "description": "Enviar al menos un identificador; consultar permisos de managers acordados con Rapiboy.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con query",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Enviar al menos un identificador y evitar filtros contradictorios.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Editar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/Put?idPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "Put"
              ],
              "query": [
                {
                  "key": "idPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Put?idPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Put"
                  ],
                  "query": [
                    {
                      "key": "idPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "Actualización parcial sujeta al estado y modalidad. Enviar únicamente los campos documentados. No interpretar un valor vacío como borrado. Vehiculo y Bulto no modifican el pedido en esta operación.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicPut)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"NombreDestino\": \"Destinatario actualizado de ejemplo\",\n  \"ObservacionDestino\": \"Nueva indicación para la entrega\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Listar pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/GetList",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "GetList"
              ]
            },
            "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura. Precio puede incluir moneda y separadores locales; el formato monetario del ejemplo es ilustrativo.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"$ 100,50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": [],\n    \"PrecioDouble\": 100.5\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/GetList",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "GetList"
                  ]
                },
                "description": "Enviar fechas y un rango menor a diez días. El período se aplica a la fecha programada del pedido; si no tiene una, a la fecha de creación. Esta ruta no aplica IdEstado como filtro en la implementación revisada. IdReserva se aplica en esta ruta.\n\nEsta ruta recibe JSON en el cuerpo de GET. Algunos clientes/proxies no lo soportan. No convertir automáticamente sus campos en query; para buscar un pedido usar GetQuery.\n\nPedido.Precio se devuelve como texto. Usar PrecioDouble para cálculos. GetList puede incluir moneda y separadores locales.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicGetList)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"FechaDesde\": \"2030-01-15\",\n  \"FechaHasta\": \"2030-01-16\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/NextDayBasic/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "NextDayBasic",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/NextDayBasic/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "NextDayBasic",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#nextDayBasicEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    },
    {
      "name": "Operaciones comunes",
      "item": [
        {
          "name": "Crear pedido con modalidad de la cuenta",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Viaje/Post",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Viaje",
                "Post"
              ]
            },
            "description": "Utiliza Token del header y resuelve la modalidad de la cuenta. Para el flujo cotizar→crear, enviar EsOnDemand=true y mantener una cotización vigente de OnDemandSmart/Cotizar. Ver guía OnDemand. No equivale automáticamente a OnDemandSmart/Post.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajePost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ],\n  \"EsOnDemand\": true\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Post"
                  ]
                },
                "description": "Utiliza Token del header y resuelve la modalidad de la cuenta. Para el flujo cotizar→crear, enviar EsOnDemand=true y mantener una cotización vigente de OnDemandSmart/Cotizar. Ver guía OnDemand. No equivale automáticamente a OnDemandSmart/Post.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajePost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ],\n  \"EsOnDemand\": true\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"IdPedido\": 900001,\n  \"Bultos\": [\n    900101\n  ],\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"IdCambio\": null,\n  \"TrackingId\": \"900001\",\n  \"TrackingEncriptado\": \"TRACKING_DE_EJEMPLO\",\n  \"Etiqueta\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001\",\n  \"Link\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\",\n  \"Descarga\": \"https://uat.rapiboy.com/miturno/Etiqueta?trackingId=900001&download=true\",\n  \"CodigoVerificacion\": null,\n  \"Estado\": 10,\n  \"Precio\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Post",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Post"
                  ]
                },
                "description": "Utiliza Token del header y resuelve la modalidad de la cuenta. Para el flujo cotizar→crear, enviar EsOnDemand=true y mantener una cotización vigente de OnDemandSmart/Cotizar. Ver guía OnDemand. No equivale automáticamente a OnDemandSmart/Post.\n\nPrecio de creación es texto o null según modalidad y vinculación OnDemand. Guardar IdPedido para consultas; $id y $ref no son identificadores del pedido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajePost)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"DireccionDestino\": \"Av. de ejemplo 100\",\n  \"CiudadDestino\": \"CABA\",\n  \"NombreDestino\": \"Destinatario de ejemplo\",\n  \"TelefonoDestino\": \"\",\n  \"EmailDestino\": \"\",\n  \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n  \"LatitudDestino\": null,\n  \"LongitudDestino\": null,\n  \"FechaProgramada\": null,\n  \"Paquetes\": [\n    {\n      \"Largo\": 20,\n      \"Ancho\": 15,\n      \"Alto\": 10,\n      \"Peso\": 1,\n      \"Cantidad\": 1,\n      \"ReferenciaExterna\": \"BULTO-EJEMPLO-001\"\n    }\n  ],\n  \"EsOnDemand\": true\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido con modalidad de la cuenta",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Viaje/GetQuery?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Viaje",
                "GetQuery"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. La modalidad se resuelve desde la cuenta. Enviar al menos un identificador.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. La modalidad se resuelve desde la cuenta. Enviar al menos un identificador.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": []\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/GetQuery?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "GetQuery"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. La modalidad se resuelve desde la cuenta. Enviar al menos un identificador.\n\nUnico.Precio se devuelve como texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en Get/GetQuery y puede ser 0; no usarlo como importe de esta consulta.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeGetQuery)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Consultar reservas",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/GetReservas?fecha=15/01/2030",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "GetReservas"
              ],
              "query": [
                {
                  "key": "fecha",
                  "value": "15/01/2030",
                  "description": "Fecha local dd/MM/yyyy. Se rechazan fechas pasadas.",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consulta reservas del día para cuentas Food u OnDemandBasic. Envíe fecha en la query con formato dd/MM/yyyy. No se admiten fechas pasadas. Configure FechaReserva antes de ejecutar.\nRespuesta: array con IdReserva, NombreRepartidor, Desde, Hasta, Estado, EnviosEnCurso y EnviosEntregados. Estados de reserva: No Comenzada, En Local, Repartiendo y Finalizada.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetReservas)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/GetReservas?fecha=15/01/2030",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "GetReservas"
                  ],
                  "query": [
                    {
                      "key": "fecha",
                      "value": "15/01/2030",
                      "description": "Fecha local dd/MM/yyyy. Se rechazan fechas pasadas.",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consulta reservas del día para cuentas Food u OnDemandBasic. Envíe fecha en la query con formato dd/MM/yyyy. No se admiten fechas pasadas. Configure FechaReserva antes de ejecutar.\nRespuesta: array con IdReserva, NombreRepartidor, Desde, Hasta, Estado, EnviosEnCurso y EnviosEntregados. Estados de reserva: No Comenzada, En Local, Repartiendo y Finalizada.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetReservas)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"IdReserva\": 900301,\n    \"NombreRepartidor\": \"Repartidor de ejemplo\",\n    \"Desde\": \"09:00\",\n    \"Hasta\": \"13:00\",\n    \"Estado\": \"Repartiendo\",\n    \"EnviosEnCurso\": [\n      {\n        \"Id\": 900001,\n        \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n        \"IdEstado\": 10,\n        \"UrlTracking\": \"https://uat.rapiboy.com/seguimientoPedido?id=TRACKING_DE_EJEMPLO\"\n      }\n    ],\n    \"EnviosEntregados\": []\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/GetReservas?fecha=15/01/2030",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "GetReservas"
                  ],
                  "query": [
                    {
                      "key": "fecha",
                      "value": "15/01/2030",
                      "description": "Fecha local dd/MM/yyyy. Se rechazan fechas pasadas.",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consulta reservas del día para cuentas Food u OnDemandBasic. Envíe fecha en la query con formato dd/MM/yyyy. No se admiten fechas pasadas. Configure FechaReserva antes de ejecutar.\nRespuesta: array con IdReserva, NombreRepartidor, Desde, Hasta, Estado, EnviosEnCurso y EnviosEntregados. Estados de reserva: No Comenzada, En Local, Repartiendo y Finalizada.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodGetReservas)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Asignar pedido a reserva",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Food/AsignarReserva",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Food",
                "AsignarReserva"
              ]
            },
            "description": "Asigna un pedido sin reserva a una reserva actual de la cuenta. Admite cuentas Food u OnDemandBasic. Envíe IdReserva y IdPedido; también puede identificar el pedido mediante TrackingEncriptado.\nLa referencia externa por sí sola no se resuelve actualmente: utilice IdPedido o TrackingEncriptado. Tanto pedido como reserva deben pertenecer al usuario. Posibles errores: Debe enviar al menos un filtro, Viaje no encontrado, Reserva no encontrada y Viaje ya asignado a una reserva. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodAsignarReserva)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdReserva\": 900301,\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/AsignarReserva",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "AsignarReserva"
                  ]
                },
                "description": "Asigna un pedido sin reserva a una reserva actual de la cuenta. Admite cuentas Food u OnDemandBasic. Envíe IdReserva y IdPedido; también puede identificar el pedido mediante TrackingEncriptado.\nLa referencia externa por sí sola no se resuelve actualmente: utilice IdPedido o TrackingEncriptado. Tanto pedido como reserva deben pertenecer al usuario. Posibles errores: Debe enviar al menos un filtro, Viaje no encontrado, Reserva no encontrada y Viaje ya asignado a una reserva. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodAsignarReserva)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdReserva\": 900301,\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Food/AsignarReserva",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Food",
                    "AsignarReserva"
                  ]
                },
                "description": "Asigna un pedido sin reserva a una reserva actual de la cuenta. Admite cuentas Food u OnDemandBasic. Envíe IdReserva y IdPedido; también puede identificar el pedido mediante TrackingEncriptado.\nLa referencia externa por sí sola no se resuelve actualmente: utilice IdPedido o TrackingEncriptado. Tanto pedido como reserva deben pertenecer al usuario. Posibles errores: Debe enviar al menos un filtro, Viaje no encontrado, Reserva no encontrada y Viaje ya asignado a una reserva. El éxito responde HTTP 200 sin contenido.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `RECURSO_NO_DISPONIBLE` · Recurso no disponible | Verificar el identificador usando las consultas autorizadas de la misma cuenta. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#foodAsignarReserva)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdReserva\": 900301,\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cotizar OnDemand",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/OnDemandSmart/Cotizar",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "OnDemandSmart",
                "Cotizar"
              ]
            },
            "description": "Argentina. Cuenta OnDemandSmart o compatible Food2. Requiere saldo cuando corresponda. La cotización ordinaria tiene una vigencia de tres minutos. Crear mediante /v1/Viaje/Post con EsOnDemand=true, la misma cuenta y las mismas coordenadas de origen y destino. EsDedicado devuelve un precio, pero no habilita la creación mediante este flujo; acordar su uso con Rapiboy.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"LatitudOrigen\": -34.583293,\n  \"LongitudOrigen\": -58.392263,\n  \"LatitudDestino\": -34.603712,\n  \"LongitudDestino\": -58.381533\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Cotizar",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Cotizar"
                  ]
                },
                "description": "Argentina. Cuenta OnDemandSmart o compatible Food2. Requiere saldo cuando corresponda. La cotización ordinaria tiene una vigencia de tres minutos. Crear mediante /v1/Viaje/Post con EsOnDemand=true, la misma cuenta y las mismas coordenadas de origen y destino. EsDedicado devuelve un precio, pero no habilita la creación mediante este flujo; acordar su uso con Rapiboy.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"LatitudOrigen\": -34.583293,\n  \"LongitudOrigen\": -58.392263,\n  \"LatitudDestino\": -34.603712,\n  \"LongitudDestino\": -58.381533\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Precio\": 100.5\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/OnDemandSmart/Cotizar",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "OnDemandSmart",
                    "Cotizar"
                  ]
                },
                "description": "Argentina. Cuenta OnDemandSmart o compatible Food2. Requiere saldo cuando corresponda. La cotización ordinaria tiene una vigencia de tres minutos. Crear mediante /v1/Viaje/Post con EsOnDemand=true, la misma cuenta y las mismas coordenadas de origen y destino. EsDedicado devuelve un precio, pero no habilita la creación mediante este flujo; acordar su uso con Rapiboy.\n\nPrecio de cotización se devuelve como número; los importes de ejemplo son ficticios.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#onDemandSmartCotizar)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"LatitudOrigen\": -34.583293,\n  \"LongitudOrigen\": -58.392263,\n  \"LatitudDestino\": -34.603712,\n  \"LongitudDestino\": -58.381533\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Obtener evidencias del pedido",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Viaje/Evidencias?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Viaje",
                "Evidencias"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "",
                  "disabled": false
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"Titulo\": \"Nombre de quien recibe:\",\n    \"Texto\": \"Receptor de ejemplo\",\n    \"Archivo\": null\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Evidencias?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Evidencias"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "",
                      "disabled": false
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Consultar con IdPedido para obtener los enlaces a las evidencias del envío. Utilizar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos. Requiere Token en el header y un pedido de la cuenta autenticada o de una cuenta vinculada al manager autorizado.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `AUTENTICACION` · Autenticación no válida | Verificar el token y el ambiente. No compartir la credencial en reportes de error. |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeEvidencias)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Estados de pedidos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/LastMile/Estados",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "LastMile",
                "Estados"
              ]
            },
            "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileEstados)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/Estados",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "Estados"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileEstados)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"$id\": \"1\",\n    \"Id\": 10,\n    \"Valor\": \"ProcesandoPedido\"\n  },\n  {\n    \"$id\": \"2\",\n    \"Id\": 11,\n    \"Valor\": \"EnCaminoARetirar\"\n  },\n  {\n    \"$id\": \"3\",\n    \"Id\": 12,\n    \"Valor\": \"Retirado\"\n  },\n  {\n    \"$id\": \"4\",\n    \"Id\": 13,\n    \"Valor\": \"Entregado\"\n  },\n  {\n    \"$id\": \"5\",\n    \"Id\": 14,\n    \"Valor\": \"Cancelado\"\n  },\n  {\n    \"$id\": \"6\",\n    \"Id\": 16,\n    \"Valor\": \"NoEntregado\"\n  },\n  {\n    \"$id\": \"7\",\n    \"Id\": 17,\n    \"Valor\": \"EnDeposito\"\n  },\n  {\n    \"$id\": \"8\",\n    \"Id\": 20,\n    \"Valor\": \"Eliminado\"\n  },\n  {\n    \"$id\": \"9\",\n    \"Id\": 22,\n    \"Valor\": \"EnProcesoDeDevolucion\"\n  },\n  {\n    \"$id\": \"10\",\n    \"Id\": 23,\n    \"Valor\": \"DireccionErronea\"\n  },\n  {\n    \"$id\": \"11\",\n    \"Id\": 24,\n    \"Valor\": \"Colectado\"\n  },\n  {\n    \"$id\": \"12\",\n    \"Id\": 25,\n    \"Valor\": \"EnCaminoARetirarInversa\"\n  },\n  {\n    \"$id\": \"13\",\n    \"Id\": 26,\n    \"Valor\": \"RetiradoInversa\"\n  },\n  {\n    \"$id\": \"14\",\n    \"Id\": 27,\n    \"Valor\": \"NoRetiradoInversa\"\n  },\n  {\n    \"$id\": \"15\",\n    \"Id\": 28,\n    \"Valor\": \"EnLocal\"\n  },\n  {\n    \"$id\": \"16\",\n    \"Id\": 29,\n    \"Valor\": \"EnDomicilioCliente\"\n  },\n  {\n    \"$id\": \"17\",\n    \"Id\": 30,\n    \"Valor\": \"Siniestrado\"\n  },\n  {\n    \"$id\": \"18\",\n    \"Id\": 31,\n    \"Valor\": \"EnRevision\"\n  },\n  {\n    \"$id\": \"19\",\n    \"Id\": 32,\n    \"Valor\": \"Devuelto\"\n  },\n  {\n    \"$id\": \"20\",\n    \"Id\": 33,\n    \"Valor\": \"NoDevuelto\"\n  },\n  {\n    \"$id\": \"21\",\n    \"Id\": 34,\n    \"Valor\": \"RetiroCanceladoInversa\"\n  },\n  {\n    \"$id\": \"22\",\n    \"Id\": 35,\n    \"Valor\": \"EnCentroDeDropOff\"\n  },\n  {\n    \"$id\": \"23\",\n    \"Id\": 36,\n    \"Valor\": \"EnCentroDeDistribucionNacional\"\n  },\n  {\n    \"$id\": \"24\",\n    \"Id\": 38,\n    \"Valor\": \"EnCentroDeDistribucionDeDestino\"\n  },\n  {\n    \"$id\": \"25\",\n    \"Id\": 39,\n    \"Valor\": \"RetiradoEnCaminoADestinoFinal\"\n  },\n  {\n    \"$id\": \"26\",\n    \"Id\": 40,\n    \"Valor\": \"RetiradoPorProveedorNacional\"\n  },\n  {\n    \"$id\": \"27\",\n    \"Id\": 41,\n    \"Valor\": \"RetiradoEnCaminoACentroDeDistribucionDeDestino\"\n  },\n  {\n    \"$id\": \"28\",\n    \"Id\": 42,\n    \"Valor\": \"DevolucionEnCentroDeDropOff\"\n  },\n  {\n    \"$id\": \"29\",\n    \"Id\": 43,\n    \"Valor\": \"Rechazado\"\n  },\n  {\n    \"$id\": \"30\",\n    \"Id\": 44,\n    \"Valor\": \"EnSucursalParaRetiro\"\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/Estados",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "Estados"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileEstados)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Motivos de cancelación",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/LastMile/MotivosCancelado",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "LastMile",
                "MotivosCancelado"
              ]
            },
            "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileMotivosCancelado)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/MotivosCancelado",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "MotivosCancelado"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileMotivosCancelado)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"$id\": \"1\",\n    \"Id\": 1,\n    \"Valor\": \"FueraAreaCobertura\"\n  },\n  {\n    \"$id\": \"2\",\n    \"Id\": 2,\n    \"Valor\": \"DomicilioIncorrecto\"\n  },\n  {\n    \"$id\": \"3\",\n    \"Id\": 3,\n    \"Valor\": \"ZonaInaccesible\"\n  },\n  {\n    \"$id\": \"4\",\n    \"Id\": 4,\n    \"Valor\": \"Robo\"\n  },\n  {\n    \"$id\": \"5\",\n    \"Id\": 5,\n    \"Valor\": \"ChipNoEntregadoRepa\"\n  },\n  {\n    \"$id\": \"6\",\n    \"Id\": 6,\n    \"Valor\": \"SuperoMaximoRechazo\"\n  },\n  {\n    \"$id\": \"7\",\n    \"Id\": 7,\n    \"Valor\": \"PerdidaTotal\"\n  },\n  {\n    \"$id\": \"8\",\n    \"Id\": 8,\n    \"Valor\": \"DañoTotal\"\n  },\n  {\n    \"$id\": \"9\",\n    \"Id\": 9,\n    \"Valor\": \"Retenido\"\n  },\n  {\n    \"$id\": \"10\",\n    \"Id\": 10,\n    \"Valor\": \"Confiscado\"\n  },\n  {\n    \"$id\": \"11\",\n    \"Id\": 11,\n    \"Valor\": \"SuperoMaximoReintentos\"\n  },\n  {\n    \"$id\": \"12\",\n    \"Id\": 12,\n    \"Valor\": \"Otro\"\n  },\n  {\n    \"$id\": \"13\",\n    \"Id\": 13,\n    \"Valor\": \"EntregaNoCorresponde\"\n  },\n  {\n    \"$id\": \"14\",\n    \"Id\": 14,\n    \"Valor\": \"FalloCreacionOnDemand\"\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/MotivosCancelado",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "MotivosCancelado"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileMotivosCancelado)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Motivos de no entrega",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/LastMile/MotivosNoEntregado",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "LastMile",
                "MotivosNoEntregado"
              ]
            },
            "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileMotivosNoEntregado)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/MotivosNoEntregado",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "MotivosNoEntregado"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileMotivosNoEntregado)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"$id\": \"1\",\n    \"Id\": 1,\n    \"Valor\": \"NoHabiaNadie\"\n  },\n  {\n    \"$id\": \"2\",\n    \"Id\": 2,\n    \"Valor\": \"ZonaInaccesible\"\n  },\n  {\n    \"$id\": \"3\",\n    \"Id\": 3,\n    \"Valor\": \"ClienteNoAcepto\"\n  },\n  {\n    \"$id\": \"4\",\n    \"Id\": 5,\n    \"Valor\": \"DomicilioIncorrecto\"\n  },\n  {\n    \"$id\": \"5\",\n    \"Id\": 6,\n    \"Valor\": \"InconvenienteVehiculo\"\n  },\n  {\n    \"$id\": \"6\",\n    \"Id\": 7,\n    \"Valor\": \"NoLlegoATiempo\"\n  },\n  {\n    \"$id\": \"7\",\n    \"Id\": 8,\n    \"Valor\": \"CanceladoPorVendedor\"\n  },\n  {\n    \"$id\": \"8\",\n    \"Id\": 9,\n    \"Valor\": \"MercaderíaDañada\"\n  },\n  {\n    \"$id\": \"9\",\n    \"Id\": 10,\n    \"Valor\": \"PedidoEquivocado\"\n  },\n  {\n    \"$id\": \"10\",\n    \"Id\": 11,\n    \"Valor\": \"DomicilioLaboral\"\n  },\n  {\n    \"$id\": \"11\",\n    \"Id\": 12,\n    \"Valor\": \"Otro\"\n  },\n  {\n    \"$id\": \"12\",\n    \"Id\": 13,\n    \"Valor\": \"NoAutorizado\"\n  },\n  {\n    \"$id\": \"13\",\n    \"Id\": 14,\n    \"Valor\": \"Vencido\"\n  },\n  {\n    \"$id\": \"14\",\n    \"Id\": 15,\n    \"Valor\": \"ReprogramadoPorComprador\"\n  },\n  {\n    \"$id\": \"15\",\n    \"Id\": 16,\n    \"Valor\": \"Dañado\"\n  },\n  {\n    \"$id\": \"16\",\n    \"Id\": 17,\n    \"Valor\": \"DireccionMalPineada\"\n  },\n  {\n    \"$id\": \"17\",\n    \"Id\": 18,\n    \"Valor\": \"EntregaraTecnico\"\n  },\n  {\n    \"$id\": \"18\",\n    \"Id\": 19,\n    \"Valor\": \"NoQuiereDevolver\"\n  },\n  {\n    \"$id\": \"19\",\n    \"Id\": 20,\n    \"Valor\": \"DejoDomicilioAnterior\"\n  },\n  {\n    \"$id\": \"20\",\n    \"Id\": 21,\n    \"Valor\": \"RoboExtravio\"\n  },\n  {\n    \"$id\": \"21\",\n    \"Id\": 22,\n    \"Valor\": \"DesconoceCita\"\n  },\n  {\n    \"$id\": \"22\",\n    \"Id\": 23,\n    \"Valor\": \"NuncaTuvoEquipo\"\n  },\n  {\n    \"$id\": \"23\",\n    \"Id\": 24,\n    \"Valor\": \"DesconoceBaja\"\n  },\n  {\n    \"$id\": \"24\",\n    \"Id\": 25,\n    \"Valor\": \"ReprogramadosPos21\"\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/MotivosNoEntregado",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "MotivosNoEntregado"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileMotivosNoEntregado)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Tipos de vehículo",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/LastMile/Vehiculos",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "LastMile",
                "Vehiculos"
              ]
            },
            "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileVehiculos)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/Vehiculos",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "Vehiculos"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileVehiculos)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "[\n  {\n    \"$id\": \"1\",\n    \"Id\": 1,\n    \"Valor\": \"Moto\"\n  },\n  {\n    \"$id\": \"2\",\n    \"Id\": 2,\n    \"Valor\": \"UtilitarioPequeño\"\n  },\n  {\n    \"$id\": \"3\",\n    \"Id\": 3,\n    \"Valor\": \"UtilitarioGrande\"\n  },\n  {\n    \"$id\": \"4\",\n    \"Id\": 4,\n    \"Valor\": \"Bicicleta\"\n  },\n  {\n    \"$id\": \"5\",\n    \"Id\": 5,\n    \"Valor\": \"CamionChasis\"\n  },\n  {\n    \"$id\": \"6\",\n    \"Id\": 6,\n    \"Valor\": \"CamionSider\"\n  },\n  {\n    \"$id\": \"7\",\n    \"Id\": 7,\n    \"Valor\": \"CamionSemi\"\n  }\n]",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/LastMile/Vehiculos",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "LastMile",
                    "Vehiculos"
                  ]
                },
                "description": "Catálogo consultado el 02/10/2026. Consultar esta ruta como fuente de valores vigentes; los ejemplos no congelan el catálogo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#lastMileVehiculos)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Buscar pedido por query string",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Viaje/Get?IdPedido=900001",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Viaje",
                "Get"
              ],
              "query": [
                {
                  "key": "IdPedido",
                  "value": "900001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": false
                },
                {
                  "key": "ReferenciaExterna",
                  "value": "PEDIDO-EJEMPLO-001",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                },
                {
                  "key": "TrackingEncriptado",
                  "value": "TRACKING_DE_EJEMPLO",
                  "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                  "disabled": true
                }
              ]
            },
            "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Busca por IdPedido, ReferenciaExterna o TrackingEncriptado. Envíe al menos uno de esos identificadores. Unico.Precio es texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en esta consulta y puede ser 0. Consultar con Rapiboy los permisos de las cuentas manager.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
          },
          "response": [
            {
              "name": "Respuesta exitosa. Los ejemplos son ficticios y no garantizan precio, estado o cobertura.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Get?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Get"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Busca por IdPedido, ReferenciaExterna o TrackingEncriptado. Envíe al menos uno de esos identificadores. Unico.Precio es texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en esta consulta y puede ser 0. Consultar con Rapiboy los permisos de las cuentas manager.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "OK",
              "code": 200,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Resultado\": true,\n  \"Unico\": {\n    \"Id\": 900001,\n    \"IdPedido\": 900001,\n    \"ReferenciaExterna\": \"PEDIDO-EJEMPLO-001\",\n    \"Estado\": 10,\n    \"EstadoNombre\": \"Ejemplo: consultar enumeraciones vigentes\",\n    \"Precio\": \"100.50\",\n    \"LatitudDestino\": null,\n    \"LongitudDestino\": null,\n    \"Historial\": [],\n    \"Bultos\": []\n  },\n  \"Lista\": [],\n  \"Precio\": 0,\n  \"Demora\": 0,\n  \"Distancia\": 0,\n  \"Mensaje\": null\n}",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "GET",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Get?IdPedido=900001",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Get"
                  ],
                  "query": [
                    {
                      "key": "IdPedido",
                      "value": "900001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": false
                    },
                    {
                      "key": "ReferenciaExterna",
                      "value": "PEDIDO-EJEMPLO-001",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    },
                    {
                      "key": "TrackingEncriptado",
                      "value": "TRACKING_DE_EJEMPLO",
                      "description": "Enviar al menos uno de IdPedido, ReferenciaExterna o TrackingEncriptado.",
                      "disabled": true
                    }
                  ]
                },
                "description": "En esta consulta GET, envíe los parámetros por query string, sin cuerpo JSON. Busca por IdPedido, ReferenciaExterna o TrackingEncriptado. Envíe al menos uno de esos identificadores. Unico.Precio es texto con punto decimal: convertirlo a número para cálculos. PrecioDouble no se completa en esta consulta y puede ser 0. Consultar con Rapiboy los permisos de las cuentas manager.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeGet)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados."
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        },
        {
          "name": "Cancelar pedido",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Token",
                "value": "{{Token}}"
              }
            ],
            "url": {
              "raw": "{{BaseUrl}}/v1/Viaje/Cancel",
              "host": [
                "{{BaseUrl}}"
              ],
              "path": [
                "v1",
                "Viaje",
                "Cancel"
              ]
            },
            "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"IdPedido\": 900001\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": [
            {
              "name": "HTTP 200 sin cuerpo. No esperar Resultado ni un objeto JSON.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "OK",
              "code": 200,
              "header": [],
              "body": "",
              "_postman_previewlanguage": "json"
            },
            {
              "name": "Solicitud o regla de negocio inválida. Ejemplo ilustrativo; el mensaje concreto depende de la validación.",
              "originalRequest": {
                "method": "PUT",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Token",
                    "value": "{{Token}}"
                  }
                ],
                "url": {
                  "raw": "{{BaseUrl}}/v1/Viaje/Cancel",
                  "host": [
                    "{{BaseUrl}}"
                  ],
                  "path": [
                    "v1",
                    "Viaje",
                    "Cancel"
                  ]
                },
                "description": "Se recomienda IdPedido. La cancelación depende del estado; IdMotivo se aplica a ODS. La respuesta exitosa no tiene cuerpo.\n\n### Catálogo de errores\n\n| HTTP | Categoría | Qué hacer |\n| --- | --- | --- |\n| 400 | `DATOS_INVALIDOS` · Datos inválidos | Revisar los campos, tipos y parámetros documentados antes de reenviar. |\n| 400 | `ERROR_PROCESAMIENTO` · Error de procesamiento | Comprobar el resultado con una consulta antes de repetir una operación que modifica datos. |\n| 400 | `SOLICITUD_RECHAZADA` · Solicitud rechazada | Revisar la solicitud documentada. Si persiste, contactar soporte sin enviar credenciales ni datos personales. |\n\n[Catálogo de errores](/documentacionapi/errores#viajeCancel)\n\nLas categorías son referencias de esta documentación, no códigos ni mensajes literales devueltos por la API. El HTTP indicado corresponde a respuestas declaradas de la operación; una validación o un fallo de procesamiento puede responder con HTTP 400. Los mensajes pueden variar. No se garantiza un listado exhaustivo de fallos de transporte o de respuestas de servicios externos. No reintentar automáticamente operaciones que modifican datos cuando el resultado sea incierto: consultar primero el recurso para evitar duplicados.",
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"IdPedido\": 900001\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "status": "Bad Request",
              "code": 400,
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"Message\": \"Solicitud inválida.\"\n}",
              "_postman_previewlanguage": "json"
            }
          ]
        }
      ]
    }
  ]
}
