Estas guías explican cómo crear, consultar y gestionar envíos. Consultar la referencia de la API para ver los campos y respuestas de cada operación. Los datos de los ejemplos son ficticios.
Primeros pasos
Confirmar con Rapiboy la modalidad de la cuenta, país, configuración de origen, proveedor y ambiente autorizado. UAT es https://uat.rapiboy.com; producción es https://rapiboy.com. Los datos y la configuración pueden ser distintos. Usar credenciales específicas del ambiente.
Seleccionar el ambiente mediante BaseUrl. Para realizar pruebas, solicitar a Rapiboy la habilitación de una cuenta UAT antes de crear pedidos o configurar notificaciones. Validar la integración en esa cuenta antes de utilizar las credenciales de producción.
Enviar Content-Type: application/json y Token en el header. Algunas rutas por modalidad también aceptan Token en el cuerpo por compatibilidad; si se envía allí, puede tener prioridad. La ruta genérica Viaje/Post utiliza el header.
Descargar e importar la colección Postman desde la documentación, elegir BaseUrl, cargar el token únicamente en un valor local y reemplazar los identificadores y fechas de ejemplo. No publicar el token en valores compartidos, ejemplos ni capturas.
Elegir la ruta
La familia del endpoint no garantiza que todas sus operaciones existan en otras modalidades. La referencia enumera las rutas verificadas; no sustituir prefijos automáticamente para etiquetas, evidencias, rutas o reservas.
La ruta de creación de esta modalidad es POST /v1/NextDaySmart/Post. La ruta genérica POST /v1/Viaje/Post utiliza la modalidad de la cuenta.
Crear y consultar un pedido
Enviar la creación con direcciones, contacto y paquetes acordes a la cuenta y proveedor. Si el origen ya está configurado en la cuenta, confirmar qué campos pueden omitirse.
Guardar el IdPedido, la referencia y el tracking de la respuesta. Utilizar IdPedido para identificar el pedido; no utilizar $id ni $ref como identificadores del envío.
Consultar con GET /v1/NextDaySmart/GetQuery?IdPedido=.... La respuesta informa el resultado de la consulta en Resultado y los datos del pedido en Unico.
Consultar estados mediante GET /v1/LastMile/Estados. No interpretar el número del estado como un orden de progresión garantizado.
Ejemplo de creación por modalidad, para completar con los datos de la cuenta y respetando los requisitos de su proveedor:
Viaje/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query. Algunas operaciones Get requieren JSON en el cuerpo de la solicitud. Enviar los campos donde indica cada operación; no trasladarlos automáticamente a la query. Para buscar un pedido se ofrece GetQuery, que no necesita cuerpo.
NextDaySmart/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query.
Las coordenadas de creación son números o null, nunca cadenas vacías. Usar punto decimal.
En cotización NDS las coordenadas no admiten null: omitirlas para utilizar el valor predeterminado si se cotiza por código postal.
La creación devuelve Estado, no IdEstado. Precio es texto o null en la creación y numérico al cotizar. En Get/GetQuery, convertir Unico.Precio a número usando punto decimal; PrecioDouble no se completa en estas consultas y puede ser 0. En GetList, Precio puede incluir símbolo monetario y separadores locales: usar PrecioDouble para cálculos. Conservar estos tipos al leer las respuestas.
FechaProgramada usa dd/MM/yyyy o dd/MM/yyyy HH:mm. Si se omite, la fecha depende de la modalidad, el horario de corte y los días de servicio habilitados para la cuenta; puede pasar al siguiente día habilitado.
Editar, cancelar y reintentar
PUT .../Put?idPedido=... aplica una actualización parcial sujeta al estado del pedido. Omitir campos que no se desean modificar. No asumir que una cadena vacía elimina un dato; Vehiculo, Bulto y SKU no se ofrecen como modificaciones efectivas de esta operación. La respuesta exitosa actual es [].
PUT .../Cancel recibe al menos un identificador. Preferir IdPedido y evitar filtros contradictorios. La respuesta exitosa es HTTP 200 sin cuerpo. IdMotivo se aplica en ODS; consultar el catálogo vigente.
Si una creación demora o devuelve un timeout, consultar el pedido antes de volver a crear para evitar duplicados. No asumir que repetir una solicitud es seguro. Esta API no ofrece un header de idempotencia.
Listados, rutas y reservas
Los listados requieren FechaDesde y FechaHasta; ambos extremos se incluyen y una diferencia de diez días o más se rechaza. El período filtra por la fecha programada del pedido; si no tiene una, por la fecha de creación. Enviar fechas ISO de ejemplo 2030-01-15, sustituidas por el período real. Bultos puede ser null en GetList cuando no se incluye ese detalle.
IdEstado se aplica en los listados NextDaySmart.
Etiquetas y evidencias
NextDaySmart/Qr devuelve una lista de cadenas con JSON interior serializado para cada bulto; no devuelve PDF. NextDaySmart/Zpl devuelve una lista de cadenas ZPL. Los ejemplos de etiquetas son ilustrativos y no se garantizan imprimibles.
Para consultar evidencias, utilizar IdPedido en la operación correspondiente a la modalidad. Consultar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos.
Webhooks
La URL receptora, los eventos y la autenticación del webhook se acuerdan con Rapiboy. Validar la autenticación de cada notificación, evitar aplicar dos veces el mismo evento y consultar el pedido cuando sea necesario confirmar su estado. No asumir que las notificaciones llegan una sola vez o en orden.
Las fechas pueden ser textos locales dd/MM/yyyy HH:mm; en México pueden usar reloj de doce horas con AM/PM y la medianoche puede omitir 00:00. Otros campos pueden contener fechas ISO 8601 o null. Confirmar el formato de cada campo para el país de la cuenta antes de procesarlo.
Solicitar a Rapiboy el esquema y un ejemplo de los eventos configurados para la cuenta antes de implementar el receptor.
Referencia de operaciones
Familia
Método
Ruta
Operación
NextDaySmart
POST
/v1/NextDaySmart/Post
Crear pedido
NextDaySmart
GET
/v1/NextDaySmart/Get
Buscar pedido con query o cuerpo GET
NextDaySmart
GET
/v1/NextDaySmart/GetQuery
Buscar pedido con query
NextDaySmart
PUT
/v1/NextDaySmart/Put
Editar pedido
NextDaySmart
PUT
/v1/NextDaySmart/Cancel
Cancelar pedido
NextDaySmart
GET
/v1/NextDaySmart/GetList
Listar pedidos
Común
POST
/v1/Viaje/Post
Crear pedido con modalidad de la cuenta
Común
GET
/v1/Viaje/GetQuery
Buscar pedido con modalidad de la cuenta
NextDaySmart
GET
/v1/NextDaySmart/Qr
Obtener contenido QR por bulto
NextDaySmart
GET
/v1/NextDaySmart/Zpl
Obtener etiquetas ZPL
NextDaySmart
GET
/v1/NextDaySmart/InfoRepa
Consultar repartidor
NextDaySmart
GET
/v1/NextDaySmart/Cotizar
Cotizar NextDaySmart
Común
GET
/v1/Viaje/Evidencias
Obtener evidencias del pedido
NextDaySmart
GET
/v1/NextDaySmart/Evidencias
Obtener evidencias del pedido
Común
GET
/v1/LastMile/Estados
Estados de pedidos
Común
GET
/v1/LastMile/MotivosCancelado
Motivos de cancelación
Común
GET
/v1/LastMile/MotivosNoEntregado
Motivos de no entrega
Común
GET
/v1/LastMile/Vehiculos
Tipos de vehículo
Común
GET
/v1/Viaje/Get
Buscar pedido con query o cuerpo GET
Común
PUT
/v1/Viaje/Cancel
Cancelar pedido
Campos de la API
Pedido
Campo
Tipo
Receptor
object
DemoraMinutos
integer
Terminado
boolean
FechaProgramado
string / null
Visitas
integer
Id
integer
IdPedido
integer
TrackingEncriptado
string / null
TrackingUrl
string / null
ReferenciaExterna
string / null
UltimaActualizacion
string / null
UltimaActualizacionEstado
string / null
Comprobante
string / null
Precio
string / null
PrecioDouble
number
Origen
string / null
ObservacionOrigen
string / null
Destino
string / null
ObservacionDestino
string / null
TelefonoOrigen
string / null
TelefonoDestino
string / null
EmailDestino
string / null
Estado
integer
EstadoColor
string / null
EstadoNombre
string / null
Motivo
string / null
IdMotivoNoEntregado
integer / null
IdMotivoCancelado
integer / null
IdMotoboy
integer / null
IdViajeOnDemand
integer / null
Orden
integer
Fecha
string / null
Nombre
string / null
NombreDestino
string / null
TelefonoRepartidor
string / null
Patente
string / null
Programado
string / null
ProgramadoHora
string / null
ProgramadoDate
string / null
Vehiculo
string / null
Latitud
number / null
Longitud
number / null
DNI
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
LatitudDestino
number / null
LongitudDestino
number / null
Etiqueta
string / null
Descarga
string / null
Reserva
string / null
AsignadoRepaEnTurno
boolean
FotoNoEntregado
string / null
IdDetalle
integer
IdReserva
integer / null
IdRuta
integer / null
Libre
string / null
LlegadaLocal
string / null
RetiroLocal
string / null
LlegadaCliente
string / null
FechaDemoraMeli
string / null
FechaEnPreparacion
string / null
Demora
integer / null
IdViajeInversa
integer / null
Cancelado
boolean
AvisoExcedente
boolean
Codigo
string / null
CodigoVerificacion
string / null
Piso
string / null
Departamento
string / null
EsOnDemand
boolean
IdOrigen
integer
IdPlataforma
integer / null
RepartidorOnDemand
string / null
TrackingUrl_OnDemand
string / null
Excedente
number
MontoExtraIncentivoODS
number
Distancia
number / null
Historial
array
Bultos
array / null
$id
string
HistorialPedido
Campo
Tipo
Fecha
string / null
Estado
string / null
IdEstado
integer
Descripcion
string / null
Comentario
string / null
Motivo
string / null
IdMotivo
integer / null
Color
string / null
BultoRespuesta
Campo
Tipo
Id
integer
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
AclaracionesBulto
string / null
Receptor
Campo
Tipo
Nombre
string / null
Dni
string / null
Foto
string / null
Firma
string / null
Articulo
Campo
Tipo
IdArticulo
integer
Cantidad
integer
Nombre
string / null
PalabraClave
string / null
Paquete
Campo
Tipo
Id
integer / null
GuardarPaquete
boolean
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
Cantidad
integer
AclaracionesBulto
string / null
FreeShipping
boolean / null
ReferenciaExterna
string / null
Sku
string / null
CudNumber
string / null
CrearPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
CodigoPlataforma
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
FechaProgramadaHasta
string / null
ValorDeclarado
number
Inversa
boolean
Cambio
boolean
DisplayId
string / null
TiempoDeCocina
integer
CodigoVerificacion
string / null
Propina
integer / null
EsOnDemand
boolean
Piso
string / null
Departamento
string / null
Paquetes
array
Articulos
array
FechaHastaEntrega
string / null
Token
string / null
BuscarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingEncriptado
string / null
BuscarPedidoRespuesta
Campo
Tipo
$id
string
Resultado
boolean
Mensaje
string / null
Precio
number
Demora
number
Distancia
number
Unico
object
Lista
array
Fecha
string / null
IdUsuario
integer / null
EditarPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
Piso
string / null
Departamento
string / null
CancelarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingId
string / null
IdMotivo
integer / null
ListarPedidos
Campo
Tipo
FechaDesde
string
FechaHasta
string
IdEstado
integer / null
IdReserva
integer / null
InfoRepartidorFiltro
Campo
Tipo
IdMotoboy
integer / null
Documento
string / null
Patente
string / null
Cache
boolean
Token
string / null
InfoRepartidorRespuesta
Campo
Tipo
Nombre
string / null
Apellido
string / null
Documento
string / null
Patente
string / null
Latitud
number / null
Longitud
number / null
Viajes
array
CotizarNextDaySmart
Campo
Tipo
CPOrigen
string / null
CPDestino
string / null
CiudadOrigen
string / null
CiudadDestino
string / null
ValorDeclarado
number
LatitudDestino
number
LongitudDestino
number
LatitudOrigen
number
LongitudOrigen
number
Bultos
array
ViajeRepartidor
Campo
Tipo
Id
integer
Referencia
string / null
ClienteDestino
string / null
DireccionDestino
string / null
Guía de integración OnDemandSmart
Estas guías explican cómo crear, consultar y gestionar envíos. Consultar la referencia de la API para ver los campos y respuestas de cada operación. Los datos de los ejemplos son ficticios.
Primeros pasos
Confirmar con Rapiboy la modalidad de la cuenta, país, configuración de origen, proveedor y ambiente autorizado. UAT es https://uat.rapiboy.com; producción es https://rapiboy.com. Los datos y la configuración pueden ser distintos. Usar credenciales específicas del ambiente.
Seleccionar el ambiente mediante BaseUrl. Para realizar pruebas, solicitar a Rapiboy la habilitación de una cuenta UAT antes de crear pedidos o configurar notificaciones. Validar la integración en esa cuenta antes de utilizar las credenciales de producción.
Enviar Content-Type: application/json y Token en el header. Algunas rutas por modalidad también aceptan Token en el cuerpo por compatibilidad; si se envía allí, puede tener prioridad. La ruta genérica Viaje/Post utiliza el header.
Descargar e importar la colección Postman desde la documentación, elegir BaseUrl, cargar el token únicamente en un valor local y reemplazar los identificadores y fechas de ejemplo. No publicar el token en valores compartidos, ejemplos ni capturas.
Elegir la ruta
La familia del endpoint no garantiza que todas sus operaciones existan en otras modalidades. La referencia enumera las rutas verificadas; no sustituir prefijos automáticamente para etiquetas, evidencias, rutas o reservas.
La ruta de creación de esta modalidad es POST /v1/OnDemandSmart/Post. La ruta genérica POST /v1/Viaje/Post utiliza la modalidad de la cuenta.
Crear y consultar un pedido
Enviar la creación con direcciones, contacto y paquetes acordes a la cuenta y proveedor. Si el origen ya está configurado en la cuenta, confirmar qué campos pueden omitirse.
Guardar el IdPedido, la referencia y el tracking de la respuesta. Utilizar IdPedido para identificar el pedido; no utilizar $id ni $ref como identificadores del envío.
Consultar con GET /v1/OnDemandSmart/GetQuery?IdPedido=.... La respuesta informa el resultado de la consulta en Resultado y los datos del pedido en Unico.
Consultar estados mediante GET /v1/LastMile/Estados. No interpretar el número del estado como un orden de progresión garantizado.
Ejemplo de creación por modalidad, para completar con los datos de la cuenta y respetando los requisitos de su proveedor:
Viaje/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query. Algunas operaciones Get requieren JSON en el cuerpo de la solicitud. Enviar los campos donde indica cada operación; no trasladarlos automáticamente a la query. Para buscar un pedido se ofrece GetQuery, que no necesita cuerpo.
Las coordenadas de creación son números o null, nunca cadenas vacías. Usar punto decimal.
La creación devuelve Estado, no IdEstado. Precio es texto o null en la creación y numérico al cotizar. En Get/GetQuery, convertir Unico.Precio a número usando punto decimal; PrecioDouble no se completa en estas consultas y puede ser 0. En GetList, Precio puede incluir símbolo monetario y separadores locales: usar PrecioDouble para cálculos. Conservar estos tipos al leer las respuestas.
FechaProgramada usa dd/MM/yyyy o dd/MM/yyyy HH:mm. Si se omite, la fecha depende de la modalidad, el horario de corte y los días de servicio habilitados para la cuenta; puede pasar al siguiente día habilitado.
Cotizar y crear OnDemand
Cotizar antes de crear un pedido OnDemand con este flujo:
Confirmar cuenta OnDemandSmart o compatible Food2 de Argentina y disponibilidad del servicio.
Ejecutar POST /v1/OnDemandSmart/Cotizar con las coordenadas reales de origen y destino y Token en header.
La cotización ordinaria devuelve un precio y tiene una vigencia de tres minutos.
Crear mediante POST /v1/Viaje/Post con EsOnDemand: true, la misma cuenta y las mismas coordenadas de origen y destino de la cotización.
Si la cotización venció o la creación pide volver a cotizar, cotizar nuevamente antes de reintentar. No considerar creada una orden únicamente porque se obtuvo un precio.
La cotización puede seleccionar proveedores con requisitos adicionales. Rappi exige nombre, referencia externa, email válido, teléfono y dirección de destino. Completar los datos reales antes de ejecutar; el ejemplo no identifica proveedor ni garantiza cobertura o tarifa.
Si EsOnDemand es true, se admite una programación de hasta dos horas hacia adelante. Confirmar con Rapiboy cómo utilizar fecha y tiempo de cocina para el proveedor de la cuenta; la programación no garantiza una hora de llegada.
/v1/OnDemandSmart/Post utiliza la modalidad de la cuenta y tiene condiciones propias. Seguir el flujo indicado para cada operación. Una cotización con EsDedicado devuelve un precio, pero no habilita la creación mediante el flujo cotizar→crear descrito aquí; acordar su uso con Rapiboy.
Editar, cancelar y reintentar
PUT .../Put?idPedido=... aplica una actualización parcial sujeta al estado del pedido. Omitir campos que no se desean modificar. No asumir que una cadena vacía elimina un dato; Vehiculo, Bulto y SKU no se ofrecen como modificaciones efectivas de esta operación. La respuesta exitosa actual es [].
PUT .../Cancel recibe al menos un identificador. Preferir IdPedido y evitar filtros contradictorios. La respuesta exitosa es HTTP 200 sin cuerpo. IdMotivo se aplica en ODS; consultar el catálogo vigente.
Si una creación demora o devuelve un timeout, consultar el pedido antes de volver a crear para evitar duplicados. No asumir que repetir una solicitud es seguro. Esta API no ofrece un header de idempotencia.
Listados, rutas y reservas
Los listados requieren FechaDesde y FechaHasta; ambos extremos se incluyen y una diferencia de diez días o más se rechaza. El período filtra por la fecha programada del pedido; si no tiene una, por la fecha de creación. Enviar fechas ISO de ejemplo 2030-01-15, sustituidas por el período real. Bultos puede ser null en GetList cuando no se incluye ese detalle.
Etiquetas y evidencias
Para consultar evidencias, utilizar IdPedido en la operación correspondiente a la modalidad. Consultar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos.
Webhooks
La URL receptora, los eventos y la autenticación del webhook se acuerdan con Rapiboy. Validar la autenticación de cada notificación, evitar aplicar dos veces el mismo evento y consultar el pedido cuando sea necesario confirmar su estado. No asumir que las notificaciones llegan una sola vez o en orden.
Las fechas pueden ser textos locales dd/MM/yyyy HH:mm; en México pueden usar reloj de doce horas con AM/PM y la medianoche puede omitir 00:00. Otros campos pueden contener fechas ISO 8601 o null. Confirmar el formato de cada campo para el país de la cuenta antes de procesarlo.
Solicitar a Rapiboy el esquema y un ejemplo de los eventos configurados para la cuenta antes de implementar el receptor.
Referencia de operaciones
Familia
Método
Ruta
Operación
OnDemandSmart
POST
/v1/OnDemandSmart/ConversionMercadoLibre
Convertir pedido de Mercado Libre Flex
OnDemandSmart
POST
/v1/OnDemandSmart/Post
Crear pedido
OnDemandSmart
GET
/v1/OnDemandSmart/Get
Buscar pedido con cuerpo GET
OnDemandSmart
GET
/v1/OnDemandSmart/GetQuery
Buscar pedido con query
OnDemandSmart
PUT
/v1/OnDemandSmart/Put
Editar pedido
OnDemandSmart
PUT
/v1/OnDemandSmart/Cancel
Cancelar pedido
OnDemandSmart
GET
/v1/OnDemandSmart/GetList
Listar pedidos
Común
POST
/v1/Viaje/Post
Crear pedido con modalidad de la cuenta
Común
GET
/v1/Viaje/GetQuery
Buscar pedido con modalidad de la cuenta
Común
POST
/v1/OnDemandSmart/Cotizar
Cotizar OnDemand
Común
GET
/v1/Viaje/Evidencias
Obtener evidencias del pedido
OnDemandSmart
GET
/v1/OnDemandSmart/Evidencias
Obtener evidencias del pedido
Común
GET
/v1/LastMile/Estados
Estados de pedidos
Común
GET
/v1/LastMile/MotivosCancelado
Motivos de cancelación
Común
GET
/v1/LastMile/MotivosNoEntregado
Motivos de no entrega
Común
GET
/v1/LastMile/Vehiculos
Tipos de vehículo
Común
GET
/v1/Viaje/Get
Buscar pedido con query o cuerpo GET
Común
PUT
/v1/Viaje/Cancel
Cancelar pedido
Campos de la API
ConversionMercadoLibre
Campo
Tipo
IdFlex
integer / null
IdShipping
integer / null
Pedido
Campo
Tipo
Receptor
object
DemoraMinutos
integer
Terminado
boolean
FechaProgramado
string / null
Visitas
integer
Id
integer
IdPedido
integer
TrackingEncriptado
string / null
TrackingUrl
string / null
ReferenciaExterna
string / null
UltimaActualizacion
string / null
UltimaActualizacionEstado
string / null
Comprobante
string / null
Precio
string / null
PrecioDouble
number
Origen
string / null
ObservacionOrigen
string / null
Destino
string / null
ObservacionDestino
string / null
TelefonoOrigen
string / null
TelefonoDestino
string / null
EmailDestino
string / null
Estado
integer
EstadoColor
string / null
EstadoNombre
string / null
Motivo
string / null
IdMotivoNoEntregado
integer / null
IdMotivoCancelado
integer / null
IdMotoboy
integer / null
IdViajeOnDemand
integer / null
Orden
integer
Fecha
string / null
Nombre
string / null
NombreDestino
string / null
TelefonoRepartidor
string / null
Patente
string / null
Programado
string / null
ProgramadoHora
string / null
ProgramadoDate
string / null
Vehiculo
string / null
Latitud
number / null
Longitud
number / null
DNI
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
LatitudDestino
number / null
LongitudDestino
number / null
Etiqueta
string / null
Descarga
string / null
Reserva
string / null
AsignadoRepaEnTurno
boolean
FotoNoEntregado
string / null
IdDetalle
integer
IdReserva
integer / null
IdRuta
integer / null
Libre
string / null
LlegadaLocal
string / null
RetiroLocal
string / null
LlegadaCliente
string / null
FechaDemoraMeli
string / null
FechaEnPreparacion
string / null
Demora
integer / null
IdViajeInversa
integer / null
Cancelado
boolean
AvisoExcedente
boolean
Codigo
string / null
CodigoVerificacion
string / null
Piso
string / null
Departamento
string / null
EsOnDemand
boolean
IdOrigen
integer
IdPlataforma
integer / null
RepartidorOnDemand
string / null
TrackingUrl_OnDemand
string / null
Excedente
number
MontoExtraIncentivoODS
number
Distancia
number / null
Historial
array
Bultos
array / null
$id
string
HistorialPedido
Campo
Tipo
Fecha
string / null
Estado
string / null
IdEstado
integer
Descripcion
string / null
Comentario
string / null
Motivo
string / null
IdMotivo
integer / null
Color
string / null
BultoRespuesta
Campo
Tipo
Id
integer
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
AclaracionesBulto
string / null
Receptor
Campo
Tipo
Nombre
string / null
Dni
string / null
Foto
string / null
Firma
string / null
Articulo
Campo
Tipo
IdArticulo
integer
Cantidad
integer
Nombre
string / null
PalabraClave
string / null
Paquete
Campo
Tipo
Id
integer / null
GuardarPaquete
boolean
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
Cantidad
integer
AclaracionesBulto
string / null
FreeShipping
boolean / null
ReferenciaExterna
string / null
Sku
string / null
CudNumber
string / null
CrearPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
CodigoPlataforma
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
FechaProgramadaHasta
string / null
ValorDeclarado
number
Inversa
boolean
Cambio
boolean
DisplayId
string / null
TiempoDeCocina
integer
CodigoVerificacion
string / null
Propina
integer / null
EsOnDemand
boolean
Piso
string / null
Departamento
string / null
Paquetes
array
Articulos
array
FechaHastaEntrega
string / null
Token
string / null
BuscarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingEncriptado
string / null
BuscarPedidoRespuesta
Campo
Tipo
$id
string
Resultado
boolean
Mensaje
string / null
Precio
number
Demora
number
Distancia
number
Unico
object
Lista
array
Fecha
string / null
IdUsuario
integer / null
EditarPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
Piso
string / null
Departamento
string / null
CancelarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingId
string / null
IdMotivo
integer / null
ListarPedidos
Campo
Tipo
FechaDesde
string
FechaHasta
string
IdEstado
integer / null
IdReserva
integer / null
CotizarOnDemandSmart
Campo
Tipo
LatitudDestino
number
LongitudDestino
number
LatitudOrigen
number
LongitudOrigen
number
EsDedicado
boolean
Guía de integración OnDemandBasic
Estas guías explican cómo crear, consultar y gestionar envíos. Consultar la referencia de la API para ver los campos y respuestas de cada operación. Los datos de los ejemplos son ficticios.
Primeros pasos
Confirmar con Rapiboy la modalidad de la cuenta, país, configuración de origen, proveedor y ambiente autorizado. UAT es https://uat.rapiboy.com; producción es https://rapiboy.com. Los datos y la configuración pueden ser distintos. Usar credenciales específicas del ambiente.
Seleccionar el ambiente mediante BaseUrl. Para realizar pruebas, solicitar a Rapiboy la habilitación de una cuenta UAT antes de crear pedidos o configurar notificaciones. Validar la integración en esa cuenta antes de utilizar las credenciales de producción.
Enviar Content-Type: application/json y Token en el header. Algunas rutas por modalidad también aceptan Token en el cuerpo por compatibilidad; si se envía allí, puede tener prioridad. La ruta genérica Viaje/Post utiliza el header.
Descargar e importar la colección Postman desde la documentación, elegir BaseUrl, cargar el token únicamente en un valor local y reemplazar los identificadores y fechas de ejemplo. No publicar el token en valores compartidos, ejemplos ni capturas.
Elegir la ruta
La familia del endpoint no garantiza que todas sus operaciones existan en otras modalidades. La referencia enumera las rutas verificadas; no sustituir prefijos automáticamente para etiquetas, evidencias, rutas o reservas.
La ruta de creación de esta modalidad es POST /v1/OnDemandBasic/Post. La ruta genérica POST /v1/Viaje/Post utiliza la modalidad de la cuenta.
NextDayBasic utiliza cuentas OnDemandBasic; no representa una modalidad independiente. Esta guía incluye las operaciones de ambas familias.
Crear y consultar un pedido
Enviar la creación con direcciones, contacto y paquetes acordes a la cuenta y proveedor. Si el origen ya está configurado en la cuenta, confirmar qué campos pueden omitirse.
Guardar el IdPedido, la referencia y el tracking de la respuesta. Utilizar IdPedido para identificar el pedido; no utilizar $id ni $ref como identificadores del envío.
Consultar con GET /v1/OnDemandBasic/GetQuery?IdPedido=.... La respuesta informa el resultado de la consulta en Resultado y los datos del pedido en Unico.
Consultar estados mediante GET /v1/LastMile/Estados. No interpretar el número del estado como un orden de progresión garantizado.
Ejemplo de creación por modalidad, para completar con los datos de la cuenta y respetando los requisitos de su proveedor:
Viaje/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query. Algunas operaciones Get requieren JSON en el cuerpo de la solicitud. Enviar los campos donde indica cada operación; no trasladarlos automáticamente a la query. Para buscar un pedido se ofrece GetQuery, que no necesita cuerpo.
Las coordenadas de creación son números o null, nunca cadenas vacías. Usar punto decimal.
La creación devuelve Estado, no IdEstado. Precio es texto o null en la creación y numérico al cotizar. En Get/GetQuery, convertir Unico.Precio a número usando punto decimal; PrecioDouble no se completa en estas consultas y puede ser 0. En GetList, Precio puede incluir símbolo monetario y separadores locales: usar PrecioDouble para cálculos. Conservar estos tipos al leer las respuestas.
FechaProgramada usa dd/MM/yyyy o dd/MM/yyyy HH:mm. Si se omite, la fecha depende de la modalidad, el horario de corte y los días de servicio habilitados para la cuenta; puede pasar al siguiente día habilitado.
En la cotización OnDemandBasic, Fecha admite fecha y hora local, por ejemplo 2030-01-15T17:00:00. Antes de las 16:00 se selecciona el turno de mañana; desde las 16:00, el de tarde. Enviar solo la fecha equivale a las 00:00 y selecciona mañana.
Editar, cancelar y reintentar
PUT .../Put?idPedido=... aplica una actualización parcial sujeta al estado del pedido. Omitir campos que no se desean modificar. No asumir que una cadena vacía elimina un dato; Vehiculo, Bulto y SKU no se ofrecen como modificaciones efectivas de esta operación. La respuesta exitosa actual es [].
PUT .../Cancel recibe al menos un identificador. Preferir IdPedido y evitar filtros contradictorios. La respuesta exitosa es HTTP 200 sin cuerpo. IdMotivo se aplica en ODS; consultar el catálogo vigente.
Si una creación demora o devuelve un timeout, consultar el pedido antes de volver a crear para evitar duplicados. No asumir que repetir una solicitud es seguro. Esta API no ofrece un header de idempotencia.
Listados, rutas y reservas
Los listados requieren FechaDesde y FechaHasta; ambos extremos se incluyen y una diferencia de diez días o más se rechaza. El período filtra por la fecha programada del pedido; si no tiene una, por la fecha de creación. Enviar fechas ISO de ejemplo 2030-01-15, sustituidas por el período real. Bultos puede ser null en GetList cuando no se incluye ese detalle.
IdReserva se aplica en los listados de esta modalidad.
Para consultar o asignar reservas se utilizan las rutas Food/GetReservas y Food/AsignarReserva. GetReservas usa fecha local dd/MM/yyyy y rechaza fechas pasadas. AsignarReserva requiere la reserva y un identificador que el endpoint resuelva; ReferenciaExterna o IdViaje solos no garantizan superar su validación inicial.
Etiquetas y evidencias
Para consultar evidencias, utilizar IdPedido en la operación correspondiente a la modalidad. Consultar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos.
Webhooks
La URL receptora, los eventos y la autenticación del webhook se acuerdan con Rapiboy. Validar la autenticación de cada notificación, evitar aplicar dos veces el mismo evento y consultar el pedido cuando sea necesario confirmar su estado. No asumir que las notificaciones llegan una sola vez o en orden.
Las fechas pueden ser textos locales dd/MM/yyyy HH:mm; en México pueden usar reloj de doce horas con AM/PM y la medianoche puede omitir 00:00. Otros campos pueden contener fechas ISO 8601 o null. Confirmar el formato de cada campo para el país de la cuenta antes de procesarlo.
Solicitar a Rapiboy el esquema y un ejemplo de los eventos configurados para la cuenta antes de implementar el receptor.
Referencia de operaciones
Familia
Método
Ruta
Operación
OnDemandBasic
POST
/v1/OnDemandBasic/Post
Crear pedido
OnDemandBasic
GET
/v1/OnDemandBasic/Get
Buscar pedido con cuerpo GET
OnDemandBasic
GET
/v1/OnDemandBasic/GetQuery
Buscar pedido con query
OnDemandBasic
PUT
/v1/OnDemandBasic/Put
Editar pedido
OnDemandBasic
PUT
/v1/OnDemandBasic/Cancel
Cancelar pedido
OnDemandBasic
GET
/v1/OnDemandBasic/GetList
Listar pedidos
NextDayBasic
POST
/v1/NextDayBasic/Post
Crear pedido
NextDayBasic
GET
/v1/NextDayBasic/Get
Buscar pedido con cuerpo GET
NextDayBasic
GET
/v1/NextDayBasic/GetQuery
Buscar pedido con query
NextDayBasic
PUT
/v1/NextDayBasic/Put
Editar pedido
NextDayBasic
PUT
/v1/NextDayBasic/Cancel
Cancelar pedido
NextDayBasic
GET
/v1/NextDayBasic/GetList
Listar pedidos
Común
POST
/v1/Viaje/Post
Crear pedido con modalidad de la cuenta
Común
GET
/v1/Viaje/GetQuery
Buscar pedido con modalidad de la cuenta
Común
GET
/v1/Food/GetReservas
Consultar reservas
Común
POST
/v1/Food/AsignarReserva
Asignar pedido a reserva
OnDemandBasic
GET
/v1/OnDemandBasic/Cotizar
Cotizar OnDemandBasic
Común
GET
/v1/Viaje/Evidencias
Obtener evidencias del pedido
NextDayBasic
GET
/v1/NextDayBasic/Evidencias
Obtener evidencias del pedido
OnDemandBasic
GET
/v1/OnDemandBasic/Evidencias
Obtener evidencias del pedido
Común
GET
/v1/LastMile/Estados
Estados de pedidos
Común
GET
/v1/LastMile/MotivosCancelado
Motivos de cancelación
Común
GET
/v1/LastMile/MotivosNoEntregado
Motivos de no entrega
Común
GET
/v1/LastMile/Vehiculos
Tipos de vehículo
Común
GET
/v1/Viaje/Get
Buscar pedido con query o cuerpo GET
Común
PUT
/v1/Viaje/Cancel
Cancelar pedido
Campos de la API
Pedido
Campo
Tipo
Receptor
object
DemoraMinutos
integer
Terminado
boolean
FechaProgramado
string / null
Visitas
integer
Id
integer
IdPedido
integer
TrackingEncriptado
string / null
TrackingUrl
string / null
ReferenciaExterna
string / null
UltimaActualizacion
string / null
UltimaActualizacionEstado
string / null
Comprobante
string / null
Precio
string / null
PrecioDouble
number
Origen
string / null
ObservacionOrigen
string / null
Destino
string / null
ObservacionDestino
string / null
TelefonoOrigen
string / null
TelefonoDestino
string / null
EmailDestino
string / null
Estado
integer
EstadoColor
string / null
EstadoNombre
string / null
Motivo
string / null
IdMotivoNoEntregado
integer / null
IdMotivoCancelado
integer / null
IdMotoboy
integer / null
IdViajeOnDemand
integer / null
Orden
integer
Fecha
string / null
Nombre
string / null
NombreDestino
string / null
TelefonoRepartidor
string / null
Patente
string / null
Programado
string / null
ProgramadoHora
string / null
ProgramadoDate
string / null
Vehiculo
string / null
Latitud
number / null
Longitud
number / null
DNI
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
LatitudDestino
number / null
LongitudDestino
number / null
Etiqueta
string / null
Descarga
string / null
Reserva
string / null
AsignadoRepaEnTurno
boolean
FotoNoEntregado
string / null
IdDetalle
integer
IdReserva
integer / null
IdRuta
integer / null
Libre
string / null
LlegadaLocal
string / null
RetiroLocal
string / null
LlegadaCliente
string / null
FechaDemoraMeli
string / null
FechaEnPreparacion
string / null
Demora
integer / null
IdViajeInversa
integer / null
Cancelado
boolean
AvisoExcedente
boolean
Codigo
string / null
CodigoVerificacion
string / null
Piso
string / null
Departamento
string / null
EsOnDemand
boolean
IdOrigen
integer
IdPlataforma
integer / null
RepartidorOnDemand
string / null
TrackingUrl_OnDemand
string / null
Excedente
number
MontoExtraIncentivoODS
number
Distancia
number / null
Historial
array
Bultos
array / null
$id
string
HistorialPedido
Campo
Tipo
Fecha
string / null
Estado
string / null
IdEstado
integer
Descripcion
string / null
Comentario
string / null
Motivo
string / null
IdMotivo
integer / null
Color
string / null
BultoRespuesta
Campo
Tipo
Id
integer
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
AclaracionesBulto
string / null
Receptor
Campo
Tipo
Nombre
string / null
Dni
string / null
Foto
string / null
Firma
string / null
Articulo
Campo
Tipo
IdArticulo
integer
Cantidad
integer
Nombre
string / null
PalabraClave
string / null
Paquete
Campo
Tipo
Id
integer / null
GuardarPaquete
boolean
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
Cantidad
integer
AclaracionesBulto
string / null
FreeShipping
boolean / null
ReferenciaExterna
string / null
Sku
string / null
CudNumber
string / null
CrearPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
CodigoPlataforma
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
FechaProgramadaHasta
string / null
ValorDeclarado
number
Inversa
boolean
Cambio
boolean
DisplayId
string / null
TiempoDeCocina
integer
CodigoVerificacion
string / null
Propina
integer / null
EsOnDemand
boolean
Piso
string / null
Departamento
string / null
Paquetes
array
Articulos
array
FechaHastaEntrega
string / null
Token
string / null
BuscarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingEncriptado
string / null
BuscarPedidoRespuesta
Campo
Tipo
$id
string
Resultado
boolean
Mensaje
string / null
Precio
number
Demora
number
Distancia
number
Unico
object
Lista
array
Fecha
string / null
IdUsuario
integer / null
EditarPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
Piso
string / null
Departamento
string / null
CancelarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingId
string / null
IdMotivo
integer / null
ListarPedidos
Campo
Tipo
FechaDesde
string
FechaHasta
string
IdEstado
integer / null
IdReserva
integer / null
CotizarOnDemandBasic
Campo
Tipo
Direccion
string / null
Latitud
number / null
Longitud
number / null
IdVehiculo
integer
CPDestino
string / null
Fecha
string
AsignarReserva
Campo
Tipo
IdReserva
integer
IdPedido
integer / null
IdViaje
integer / null
TrackingEncriptado
string / null
ReferenciaExterna
string / null
Reserva
Campo
Tipo
$id
string
IdReserva
integer
NombreRepartidor
string / null
Desde
string / null
Hasta
string / null
Estado
string / null
EnviosEnCurso
array
EnviosEntregados
array
EnvioReserva
Campo
Tipo
Id
integer
ReferenciaExterna
string / null
IdEstado
integer
UrlTracking
string / null
Guía de integración Food
Estas guías explican cómo crear, consultar y gestionar envíos. Consultar la referencia de la API para ver los campos y respuestas de cada operación. Los datos de los ejemplos son ficticios.
Primeros pasos
Confirmar con Rapiboy la modalidad de la cuenta, país, configuración de origen, proveedor y ambiente autorizado. UAT es https://uat.rapiboy.com; producción es https://rapiboy.com. Los datos y la configuración pueden ser distintos. Usar credenciales específicas del ambiente.
Seleccionar el ambiente mediante BaseUrl. Para realizar pruebas, solicitar a Rapiboy la habilitación de una cuenta UAT antes de crear pedidos o configurar notificaciones. Validar la integración en esa cuenta antes de utilizar las credenciales de producción.
Enviar Content-Type: application/json y Token en el header. Algunas rutas por modalidad también aceptan Token en el cuerpo por compatibilidad; si se envía allí, puede tener prioridad. La ruta genérica Viaje/Post utiliza el header.
Descargar e importar la colección Postman desde la documentación, elegir BaseUrl, cargar el token únicamente en un valor local y reemplazar los identificadores y fechas de ejemplo. No publicar el token en valores compartidos, ejemplos ni capturas.
Elegir la ruta
La familia del endpoint no garantiza que todas sus operaciones existan en otras modalidades. La referencia enumera las rutas verificadas; no sustituir prefijos automáticamente para etiquetas, evidencias, rutas o reservas.
La ruta de creación de esta modalidad es POST /v1/Food/Post. La ruta genérica POST /v1/Viaje/Post utiliza la modalidad de la cuenta.
Crear y consultar un pedido
Enviar la creación con direcciones, contacto y paquetes acordes a la cuenta y proveedor. Si el origen ya está configurado en la cuenta, confirmar qué campos pueden omitirse.
Guardar el IdPedido, la referencia y el tracking de la respuesta. Utilizar IdPedido para identificar el pedido; no utilizar $id ni $ref como identificadores del envío.
Consultar con GET /v1/Food/GetQuery?IdPedido=.... La respuesta informa el resultado de la consulta en Resultado y los datos del pedido en Unico.
Consultar estados mediante GET /v1/LastMile/Estados. No interpretar el número del estado como un orden de progresión garantizado.
Ejemplo de creación por modalidad, para completar con los datos de la cuenta y respetando los requisitos de su proveedor:
Viaje/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query. Algunas operaciones Get requieren JSON en el cuerpo de la solicitud. Enviar los campos donde indica cada operación; no trasladarlos automáticamente a la query. Para buscar un pedido se ofrece GetQuery, que no necesita cuerpo.
Las coordenadas de creación son números o null, nunca cadenas vacías. Usar punto decimal.
La creación devuelve Estado, no IdEstado. Precio es texto o null en la creación y numérico al cotizar. En Get/GetQuery, convertir Unico.Precio a número usando punto decimal; PrecioDouble no se completa en estas consultas y puede ser 0. En GetList, Precio puede incluir símbolo monetario y separadores locales: usar PrecioDouble para cálculos. Conservar estos tipos al leer las respuestas.
FechaProgramada usa dd/MM/yyyy o dd/MM/yyyy HH:mm. Si se omite, la fecha depende de la modalidad, el horario de corte y los días de servicio habilitados para la cuenta; puede pasar al siguiente día habilitado.
Cotizar y crear OnDemand
Cotizar antes de crear un pedido OnDemand con este flujo:
Confirmar cuenta OnDemandSmart o compatible Food2 de Argentina y disponibilidad del servicio.
Ejecutar POST /v1/OnDemandSmart/Cotizar con las coordenadas reales de origen y destino y Token en header.
La cotización ordinaria devuelve un precio y tiene una vigencia de tres minutos.
Crear mediante POST /v1/Viaje/Post con EsOnDemand: true, la misma cuenta y las mismas coordenadas de origen y destino de la cotización.
Si la cotización venció o la creación pide volver a cotizar, cotizar nuevamente antes de reintentar. No considerar creada una orden únicamente porque se obtuvo un precio.
La cotización puede seleccionar proveedores con requisitos adicionales. Rappi exige nombre, referencia externa, email válido, teléfono y dirección de destino. Completar los datos reales antes de ejecutar; el ejemplo no identifica proveedor ni garantiza cobertura o tarifa.
Si EsOnDemand es true, se admite una programación de hasta dos horas hacia adelante. Confirmar con Rapiboy cómo utilizar fecha y tiempo de cocina para el proveedor de la cuenta; la programación no garantiza una hora de llegada.
/v1/OnDemandSmart/Post utiliza la modalidad de la cuenta y tiene condiciones propias. Seguir el flujo indicado para cada operación. Una cotización con EsDedicado devuelve un precio, pero no habilita la creación mediante el flujo cotizar→crear descrito aquí; acordar su uso con Rapiboy.
Editar, cancelar y reintentar
PUT .../Put?idPedido=... aplica una actualización parcial sujeta al estado del pedido. Omitir campos que no se desean modificar. No asumir que una cadena vacía elimina un dato; Vehiculo, Bulto y SKU no se ofrecen como modificaciones efectivas de esta operación. La respuesta exitosa actual es [].
PUT .../Cancel recibe al menos un identificador. Preferir IdPedido y evitar filtros contradictorios. La respuesta exitosa es HTTP 200 sin cuerpo. IdMotivo se aplica en ODS; consultar el catálogo vigente.
Si una creación demora o devuelve un timeout, consultar el pedido antes de volver a crear para evitar duplicados. No asumir que repetir una solicitud es seguro. Esta API no ofrece un header de idempotencia.
Listados, rutas y reservas
Los listados requieren FechaDesde y FechaHasta; ambos extremos se incluyen y una diferencia de diez días o más se rechaza. El período filtra por la fecha programada del pedido; si no tiene una, por la fecha de creación. Enviar fechas ISO de ejemplo 2030-01-15, sustituidas por el período real. Bultos puede ser null en GetList cuando no se incluye ese detalle.
IdReserva se aplica en los listados de esta modalidad.
Para consultar o asignar reservas se utilizan las rutas Food/GetReservas y Food/AsignarReserva. GetReservas usa fecha local dd/MM/yyyy y rechaza fechas pasadas. AsignarReserva requiere la reserva y un identificador que el endpoint resuelva; ReferenciaExterna o IdViaje solos no garantizan superar su validación inicial.
Food permite crear una ruta con fecha ISO, asignarle pedidos y retirar un pedido.
AsignarRuta requiere una ruta vacía y pedidos del cliente. El orden del array no garantiza el orden final de la ruta. Para QuitarRuta, informar la ruta actual del pedido.
Etiquetas y evidencias
Para consultar evidencias, utilizar IdPedido en la operación correspondiente a la modalidad. Consultar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos.
Webhooks
La URL receptora, los eventos y la autenticación del webhook se acuerdan con Rapiboy. Validar la autenticación de cada notificación, evitar aplicar dos veces el mismo evento y consultar el pedido cuando sea necesario confirmar su estado. No asumir que las notificaciones llegan una sola vez o en orden.
Las fechas pueden ser textos locales dd/MM/yyyy HH:mm; en México pueden usar reloj de doce horas con AM/PM y la medianoche puede omitir 00:00. Otros campos pueden contener fechas ISO 8601 o null. Confirmar el formato de cada campo para el país de la cuenta antes de procesarlo.
Solicitar a Rapiboy el esquema y un ejemplo de los eventos configurados para la cuenta antes de implementar el receptor.
Referencia de operaciones
Familia
Método
Ruta
Operación
Food
POST
/v1/Food/Post
Crear pedido
Food
GET
/v1/Food/Get
Buscar pedido con cuerpo GET
Food
GET
/v1/Food/GetQuery
Buscar pedido con query
Food
PUT
/v1/Food/Put
Editar pedido
Food
PUT
/v1/Food/Cancel
Cancelar pedido
Food
GET
/v1/Food/GetList
Listar pedidos
Común
POST
/v1/Viaje/Post
Crear pedido con modalidad de la cuenta
Común
GET
/v1/Viaje/GetQuery
Buscar pedido con modalidad de la cuenta
Food
POST
/v1/Food/Ruta
Crear ruta
Food
PUT
/v1/Food/AsignarRuta
Asignar pedidos a ruta
Food
PUT
/v1/Food/QuitarRuta
Quitar pedido de ruta
Común
GET
/v1/Food/GetReservas
Consultar reservas
Común
POST
/v1/Food/AsignarReserva
Asignar pedido a reserva
Común
POST
/v1/OnDemandSmart/Cotizar
Cotizar OnDemand
Común
GET
/v1/Viaje/Evidencias
Obtener evidencias del pedido
Food
GET
/v1/Food/Evidencias
Obtener evidencias del pedido
Común
GET
/v1/LastMile/Estados
Estados de pedidos
Común
GET
/v1/LastMile/MotivosCancelado
Motivos de cancelación
Común
GET
/v1/LastMile/MotivosNoEntregado
Motivos de no entrega
Común
GET
/v1/LastMile/Vehiculos
Tipos de vehículo
Común
GET
/v1/Viaje/Get
Buscar pedido con query o cuerpo GET
Común
PUT
/v1/Viaje/Cancel
Cancelar pedido
Food
GET
/v1/Food/Tracking
Consultar tracking de una reserva
Campos de la API
Pedido
Campo
Tipo
Receptor
object
DemoraMinutos
integer
Terminado
boolean
FechaProgramado
string / null
Visitas
integer
Id
integer
IdPedido
integer
TrackingEncriptado
string / null
TrackingUrl
string / null
ReferenciaExterna
string / null
UltimaActualizacion
string / null
UltimaActualizacionEstado
string / null
Comprobante
string / null
Precio
string / null
PrecioDouble
number
Origen
string / null
ObservacionOrigen
string / null
Destino
string / null
ObservacionDestino
string / null
TelefonoOrigen
string / null
TelefonoDestino
string / null
EmailDestino
string / null
Estado
integer
EstadoColor
string / null
EstadoNombre
string / null
Motivo
string / null
IdMotivoNoEntregado
integer / null
IdMotivoCancelado
integer / null
IdMotoboy
integer / null
IdViajeOnDemand
integer / null
Orden
integer
Fecha
string / null
Nombre
string / null
NombreDestino
string / null
TelefonoRepartidor
string / null
Patente
string / null
Programado
string / null
ProgramadoHora
string / null
ProgramadoDate
string / null
Vehiculo
string / null
Latitud
number / null
Longitud
number / null
DNI
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
LatitudDestino
number / null
LongitudDestino
number / null
Etiqueta
string / null
Descarga
string / null
Reserva
string / null
AsignadoRepaEnTurno
boolean
FotoNoEntregado
string / null
IdDetalle
integer
IdReserva
integer / null
IdRuta
integer / null
Libre
string / null
LlegadaLocal
string / null
RetiroLocal
string / null
LlegadaCliente
string / null
FechaDemoraMeli
string / null
FechaEnPreparacion
string / null
Demora
integer / null
IdViajeInversa
integer / null
Cancelado
boolean
AvisoExcedente
boolean
Codigo
string / null
CodigoVerificacion
string / null
Piso
string / null
Departamento
string / null
EsOnDemand
boolean
IdOrigen
integer
IdPlataforma
integer / null
RepartidorOnDemand
string / null
TrackingUrl_OnDemand
string / null
Excedente
number
MontoExtraIncentivoODS
number
Distancia
number / null
Historial
array
Bultos
array / null
$id
string
HistorialPedido
Campo
Tipo
Fecha
string / null
Estado
string / null
IdEstado
integer
Descripcion
string / null
Comentario
string / null
Motivo
string / null
IdMotivo
integer / null
Color
string / null
BultoRespuesta
Campo
Tipo
Id
integer
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
AclaracionesBulto
string / null
Receptor
Campo
Tipo
Nombre
string / null
Dni
string / null
Foto
string / null
Firma
string / null
Articulo
Campo
Tipo
IdArticulo
integer
Cantidad
integer
Nombre
string / null
PalabraClave
string / null
Paquete
Campo
Tipo
Id
integer / null
GuardarPaquete
boolean
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
Cantidad
integer
AclaracionesBulto
string / null
FreeShipping
boolean / null
ReferenciaExterna
string / null
Sku
string / null
CudNumber
string / null
CrearPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
CodigoPlataforma
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
FechaProgramadaHasta
string / null
ValorDeclarado
number
Inversa
boolean
Cambio
boolean
DisplayId
string / null
TiempoDeCocina
integer
CodigoVerificacion
string / null
Propina
integer / null
EsOnDemand
boolean
Piso
string / null
Departamento
string / null
Paquetes
array
Articulos
array
FechaHastaEntrega
string / null
Token
string / null
BuscarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingEncriptado
string / null
BuscarPedidoRespuesta
Campo
Tipo
$id
string
Resultado
boolean
Mensaje
string / null
Precio
number
Demora
number
Distancia
number
Unico
object
Lista
array
Fecha
string / null
IdUsuario
integer / null
EditarPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
Piso
string / null
Departamento
string / null
CancelarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingId
string / null
IdMotivo
integer / null
ListarPedidos
Campo
Tipo
FechaDesde
string
FechaHasta
string
IdEstado
integer / null
IdReserva
integer / null
CotizarOnDemandSmart
Campo
Tipo
LatitudDestino
number
LongitudDestino
number
LatitudOrigen
number
LongitudOrigen
number
EsDedicado
boolean
CrearRuta
Campo
Tipo
Fecha
string
AsignarRuta
Campo
Tipo
IdRuta
integer
IdPedidos
array
QuitarRuta
Campo
Tipo
IdRuta
integer
IdPedido
integer
AsignarReserva
Campo
Tipo
IdReserva
integer
IdPedido
integer / null
IdViaje
integer / null
TrackingEncriptado
string / null
ReferenciaExterna
string / null
Reserva
Campo
Tipo
$id
string
IdReserva
integer
NombreRepartidor
string / null
Desde
string / null
Hasta
string / null
Estado
string / null
EnviosEnCurso
array
EnviosEntregados
array
EnvioReserva
Campo
Tipo
Id
integer
ReferenciaExterna
string / null
IdEstado
integer
UrlTracking
string / null
Guía de integración Sims
Estas guías explican cómo crear, consultar y gestionar envíos. Consultar la referencia de la API para ver los campos y respuestas de cada operación. Los datos de los ejemplos son ficticios.
Primeros pasos
Confirmar con Rapiboy la modalidad de la cuenta, país, configuración de origen, proveedor y ambiente autorizado. UAT es https://uat.rapiboy.com; producción es https://rapiboy.com. Los datos y la configuración pueden ser distintos. Usar credenciales específicas del ambiente.
Seleccionar el ambiente mediante BaseUrl. Para realizar pruebas, solicitar a Rapiboy la habilitación de una cuenta UAT antes de crear pedidos o configurar notificaciones. Validar la integración en esa cuenta antes de utilizar las credenciales de producción.
Enviar Content-Type: application/json y Token en el header. Algunas rutas por modalidad también aceptan Token en el cuerpo por compatibilidad; si se envía allí, puede tener prioridad. La ruta genérica Viaje/Post utiliza el header.
Descargar e importar la colección Postman desde la documentación, elegir BaseUrl, cargar el token únicamente en un valor local y reemplazar los identificadores y fechas de ejemplo. No publicar el token en valores compartidos, ejemplos ni capturas.
Elegir la ruta
La familia del endpoint no garantiza que todas sus operaciones existan en otras modalidades. La referencia enumera las rutas verificadas; no sustituir prefijos automáticamente para etiquetas, evidencias, rutas o reservas.
La ruta de creación de esta modalidad es POST /v1/Sims/Post. La ruta genérica POST /v1/Viaje/Post utiliza la modalidad de la cuenta.
Crear y consultar un pedido
Enviar la creación con direcciones, contacto y paquetes acordes a la cuenta y proveedor. Si el origen ya está configurado en la cuenta, confirmar qué campos pueden omitirse.
Guardar el IdPedido, la referencia y el tracking de la respuesta. Utilizar IdPedido para identificar el pedido; no utilizar $id ni $ref como identificadores del envío.
Consultar con GET /v1/Sims/GetQuery?IdPedido=.... La respuesta informa el resultado de la consulta en Resultado y los datos del pedido en Unico.
Consultar estados mediante GET /v1/LastMile/Estados. No interpretar el número del estado como un orden de progresión garantizado.
Ejemplo de creación por modalidad, para completar con los datos de la cuenta y respetando los requisitos de su proveedor:
Viaje/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query. Algunas operaciones Get requieren JSON en el cuerpo de la solicitud. Enviar los campos donde indica cada operación; no trasladarlos automáticamente a la query. Para buscar un pedido se ofrece GetQuery, que no necesita cuerpo.
Las coordenadas de creación son números o null, nunca cadenas vacías. Usar punto decimal.
La creación devuelve Estado, no IdEstado. Precio es texto o null en la creación y numérico al cotizar. En Get/GetQuery, convertir Unico.Precio a número usando punto decimal; PrecioDouble no se completa en estas consultas y puede ser 0. En GetList, Precio puede incluir símbolo monetario y separadores locales: usar PrecioDouble para cálculos. Conservar estos tipos al leer las respuestas.
FechaProgramada usa dd/MM/yyyy o dd/MM/yyyy HH:mm. Si se omite, la fecha depende de la modalidad, el horario de corte y los días de servicio habilitados para la cuenta; puede pasar al siguiente día habilitado.
Editar, cancelar y reintentar
PUT .../Put?idPedido=... aplica una actualización parcial sujeta al estado del pedido. Omitir campos que no se desean modificar. No asumir que una cadena vacía elimina un dato; Vehiculo, Bulto y SKU no se ofrecen como modificaciones efectivas de esta operación. La respuesta exitosa actual es [].
PUT .../Cancel recibe al menos un identificador. Preferir IdPedido y evitar filtros contradictorios. La respuesta exitosa es HTTP 200 sin cuerpo. IdMotivo se aplica en ODS; consultar el catálogo vigente.
Si una creación demora o devuelve un timeout, consultar el pedido antes de volver a crear para evitar duplicados. No asumir que repetir una solicitud es seguro. Esta API no ofrece un header de idempotencia.
Listados, rutas y reservas
Los listados requieren FechaDesde y FechaHasta; ambos extremos se incluyen y una diferencia de diez días o más se rechaza. El período filtra por la fecha programada del pedido; si no tiene una, por la fecha de creación. Enviar fechas ISO de ejemplo 2030-01-15, sustituidas por el período real. Bultos puede ser null en GetList cuando no se incluye ese detalle.
Etiquetas y evidencias
En Sims, las evidencias se consultan mediante GET /v1/Viaje/Evidencias.
Para consultar evidencias, utilizar IdPedido en la operación correspondiente a la modalidad. Consultar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos.
Webhooks
La URL receptora, los eventos y la autenticación del webhook se acuerdan con Rapiboy. Validar la autenticación de cada notificación, evitar aplicar dos veces el mismo evento y consultar el pedido cuando sea necesario confirmar su estado. No asumir que las notificaciones llegan una sola vez o en orden.
Las fechas pueden ser textos locales dd/MM/yyyy HH:mm; en México pueden usar reloj de doce horas con AM/PM y la medianoche puede omitir 00:00. Otros campos pueden contener fechas ISO 8601 o null. Confirmar el formato de cada campo para el país de la cuenta antes de procesarlo.
Solicitar a Rapiboy el esquema y un ejemplo de los eventos configurados para la cuenta antes de implementar el receptor.
Referencia de operaciones
Familia
Método
Ruta
Operación
Sims
POST
/v1/Sims/Post
Crear pedido
Sims
GET
/v1/Sims/Get
Buscar pedido con cuerpo GET
Sims
GET
/v1/Sims/GetQuery
Buscar pedido con query
Sims
PUT
/v1/Sims/Put
Editar pedido
Sims
PUT
/v1/Sims/Cancel
Cancelar pedido
Sims
GET
/v1/Sims/GetList
Listar pedidos
Común
POST
/v1/Viaje/Post
Crear pedido con modalidad de la cuenta
Común
GET
/v1/Viaje/GetQuery
Buscar pedido con modalidad de la cuenta
Común
GET
/v1/Viaje/Evidencias
Obtener evidencias del pedido
Común
GET
/v1/LastMile/Estados
Estados de pedidos
Común
GET
/v1/LastMile/MotivosCancelado
Motivos de cancelación
Común
GET
/v1/LastMile/MotivosNoEntregado
Motivos de no entrega
Común
GET
/v1/LastMile/Vehiculos
Tipos de vehículo
Común
GET
/v1/Viaje/Get
Buscar pedido con query o cuerpo GET
Común
PUT
/v1/Viaje/Cancel
Cancelar pedido
Campos de la API
Pedido
Campo
Tipo
Receptor
object
DemoraMinutos
integer
Terminado
boolean
FechaProgramado
string / null
Visitas
integer
Id
integer
IdPedido
integer
TrackingEncriptado
string / null
TrackingUrl
string / null
ReferenciaExterna
string / null
UltimaActualizacion
string / null
UltimaActualizacionEstado
string / null
Comprobante
string / null
Precio
string / null
PrecioDouble
number
Origen
string / null
ObservacionOrigen
string / null
Destino
string / null
ObservacionDestino
string / null
TelefonoOrigen
string / null
TelefonoDestino
string / null
EmailDestino
string / null
Estado
integer
EstadoColor
string / null
EstadoNombre
string / null
Motivo
string / null
IdMotivoNoEntregado
integer / null
IdMotivoCancelado
integer / null
IdMotoboy
integer / null
IdViajeOnDemand
integer / null
Orden
integer
Fecha
string / null
Nombre
string / null
NombreDestino
string / null
TelefonoRepartidor
string / null
Patente
string / null
Programado
string / null
ProgramadoHora
string / null
ProgramadoDate
string / null
Vehiculo
string / null
Latitud
number / null
Longitud
number / null
DNI
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
LatitudDestino
number / null
LongitudDestino
number / null
Etiqueta
string / null
Descarga
string / null
Reserva
string / null
AsignadoRepaEnTurno
boolean
FotoNoEntregado
string / null
IdDetalle
integer
IdReserva
integer / null
IdRuta
integer / null
Libre
string / null
LlegadaLocal
string / null
RetiroLocal
string / null
LlegadaCliente
string / null
FechaDemoraMeli
string / null
FechaEnPreparacion
string / null
Demora
integer / null
IdViajeInversa
integer / null
Cancelado
boolean
AvisoExcedente
boolean
Codigo
string / null
CodigoVerificacion
string / null
Piso
string / null
Departamento
string / null
EsOnDemand
boolean
IdOrigen
integer
IdPlataforma
integer / null
RepartidorOnDemand
string / null
TrackingUrl_OnDemand
string / null
Excedente
number
MontoExtraIncentivoODS
number
Distancia
number / null
Historial
array
Bultos
array / null
$id
string
HistorialPedido
Campo
Tipo
Fecha
string / null
Estado
string / null
IdEstado
integer
Descripcion
string / null
Comentario
string / null
Motivo
string / null
IdMotivo
integer / null
Color
string / null
BultoRespuesta
Campo
Tipo
Id
integer
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
AclaracionesBulto
string / null
Receptor
Campo
Tipo
Nombre
string / null
Dni
string / null
Foto
string / null
Firma
string / null
Articulo
Campo
Tipo
IdArticulo
integer
Cantidad
integer
Nombre
string / null
PalabraClave
string / null
Paquete
Campo
Tipo
Id
integer / null
GuardarPaquete
boolean
Largo
number / null
Ancho
number / null
Alto
number / null
Peso
number / null
Cantidad
integer
AclaracionesBulto
string / null
FreeShipping
boolean / null
ReferenciaExterna
string / null
Sku
string / null
CudNumber
string / null
CrearPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
CodigoPlataforma
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
FechaProgramadaHasta
string / null
ValorDeclarado
number
Inversa
boolean
Cambio
boolean
DisplayId
string / null
TiempoDeCocina
integer
CodigoVerificacion
string / null
Propina
integer / null
EsOnDemand
boolean
Piso
string / null
Departamento
string / null
Paquetes
array
Articulos
array
FechaHastaEntrega
string / null
Token
string / null
BuscarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingEncriptado
string / null
BuscarPedidoRespuesta
Campo
Tipo
$id
string
Resultado
boolean
Mensaje
string / null
Precio
number
Demora
number
Distancia
number
Unico
object
Lista
array
Fecha
string / null
IdUsuario
integer / null
EditarPedido
Campo
Tipo
NombreOrigen
string / null
DireccionOrigen
string / null
ObservacionOrigen
string / null
BarrioOrigen
string / null
TelefonoOrigen
string / null
LatitudOrigen
number / null
LongitudOrigen
number / null
CiudadOrigen
string / null
CPOrigen
string / null
NombreDestino
string / null
DireccionDestino
string / null
ObservacionDestino
string / null
BarrioDestino
string / null
TelefonoDestino
string / null
LatitudDestino
number / null
LongitudDestino
number / null
CiudadDestino
string / null
CPDestino
string / null
EmailDestino
string / null
ReferenciaExterna
string / null
FechaProgramada
string / null
Piso
string / null
Departamento
string / null
CancelarPedido
Campo
Tipo
IdPedido
integer / null
ReferenciaExterna
string / null
TrackingId
string / null
IdMotivo
integer / null
ListarPedidos
Campo
Tipo
FechaDesde
string
FechaHasta
string
IdEstado
integer / null
IdReserva
integer / null
Guía de integración SaaS
Estas guías explican cómo crear, consultar y gestionar envíos. Consultar la referencia de la API para ver los campos y respuestas de cada operación. Los datos de los ejemplos son ficticios.
Primeros pasos
Confirmar con Rapiboy la modalidad de la cuenta, país, configuración de origen, proveedor y ambiente autorizado. UAT es https://uat.rapiboy.com; producción es https://rapiboy.com. Los datos y la configuración pueden ser distintos. Usar credenciales específicas del ambiente.
Seleccionar el ambiente mediante BaseUrl. Para realizar pruebas, solicitar a Rapiboy la habilitación de una cuenta UAT antes de crear pedidos o configurar notificaciones. Validar la integración en esa cuenta antes de utilizar las credenciales de producción.
Enviar Content-Type: application/json y Token en el header. Algunas rutas por modalidad también aceptan Token en el cuerpo por compatibilidad; si se envía allí, puede tener prioridad. La ruta genérica Viaje/Post utiliza el header.
Descargar e importar la colección Postman desde la documentación, elegir BaseUrl, cargar el token únicamente en un valor local y reemplazar los identificadores y fechas de ejemplo. No publicar el token en valores compartidos, ejemplos ni capturas.
Elegir la ruta
La familia del endpoint no garantiza que todas sus operaciones existan en otras modalidades. La referencia enumera las rutas verificadas; no sustituir prefijos automáticamente para etiquetas, evidencias, rutas o reservas.
La ruta de creación de esta modalidad es POST /v1/SaaS/Post. La ruta genérica POST /v1/Viaje/Post utiliza la modalidad de la cuenta.
Crear y consultar un pedido
Enviar la creación con direcciones, contacto y paquetes acordes a la cuenta y proveedor. Si el origen ya está configurado en la cuenta, confirmar qué campos pueden omitirse.
Guardar el IdPedido, la referencia y el tracking de la respuesta. Utilizar IdPedido para identificar el pedido; no utilizar $id ni $ref como identificadores del envío.
Consultar con GET /v1/SaaS/GetQuery?IdPedido=.... La respuesta informa el resultado de la consulta en Resultado y los datos del pedido en Unico.
Consultar estados mediante GET /v1/LastMile/Estados. No interpretar el número del estado como un orden de progresión garantizado.
Ejemplo de creación por modalidad, para completar con los datos de la cuenta y respetando los requisitos de su proveedor:
Viaje/Get también admite IdPedido, ReferenciaExterna y TrackingEncriptado por query. Algunas operaciones Get requieren JSON en el cuerpo de la solicitud. Enviar los campos donde indica cada operación; no trasladarlos automáticamente a la query. Para buscar un pedido se ofrece GetQuery, que no necesita cuerpo.
Las coordenadas de creación son números o null, nunca cadenas vacías. Usar punto decimal.
La creación devuelve Estado, no IdEstado. Precio es texto o null en la creación y numérico al cotizar. En Get/GetQuery, convertir Unico.Precio a número usando punto decimal; PrecioDouble no se completa en estas consultas y puede ser 0. En GetList, Precio puede incluir símbolo monetario y separadores locales: usar PrecioDouble para cálculos. Conservar estos tipos al leer las respuestas.
FechaProgramada usa dd/MM/yyyy o dd/MM/yyyy HH:mm. Si se omite, la fecha depende de la modalidad, el horario de corte y los días de servicio habilitados para la cuenta; puede pasar al siguiente día habilitado.
Editar, cancelar y reintentar
PUT .../Put?idPedido=... aplica una actualización parcial sujeta al estado del pedido. Omitir campos que no se desean modificar. No asumir que una cadena vacía elimina un dato; Vehiculo, Bulto y SKU no se ofrecen como modificaciones efectivas de esta operación. La respuesta exitosa actual es [].
PUT .../Cancel recibe al menos un identificador. Preferir IdPedido y evitar filtros contradictorios. La respuesta exitosa es HTTP 200 sin cuerpo. IdMotivo se aplica en ODS; consultar el catálogo vigente.
Si una creación demora o devuelve un timeout, consultar el pedido antes de volver a crear para evitar duplicados. No asumir que repetir una solicitud es seguro. Esta API no ofrece un header de idempotencia.
Listados, rutas y reservas
Los listados requieren FechaDesde y FechaHasta; ambos extremos se incluyen y una diferencia de diez días o más se rechaza. El período filtra por la fecha programada del pedido; si no tiene una, por la fecha de creación. Enviar fechas ISO de ejemplo 2030-01-15, sustituidas por el período real. Bultos puede ser null en GetList cuando no se incluye ese detalle.
IdReserva se aplica en los listados de esta modalidad.
Etiquetas y evidencias
Para consultar evidencias, utilizar IdPedido en la operación correspondiente a la modalidad. Consultar únicamente pedidos de la cuenta y proteger las fotos y datos personales recibidos.
Webhooks
La URL receptora, los eventos y la autenticación del webhook se acuerdan con Rapiboy. Validar la autenticación de cada notificación, evitar aplicar dos veces el mismo evento y consultar el pedido cuando sea necesario confirmar su estado. No asumir que las notificaciones llegan una sola vez o en orden.
Las fechas pueden ser textos locales dd/MM/yyyy HH:mm; en México pueden usar reloj de doce horas con AM/PM y la medianoche puede omitir 00:00. Otros campos pueden contener fechas ISO 8601 o null. Confirmar el formato de cada campo para el país de la cuenta antes de procesarlo.
Solicitar a Rapiboy el esquema y un ejemplo de los eventos configurados para la cuenta antes de implementar el receptor.