Autenticación

El acceso a la API de Online Booking se realiza con credenciales de partner emitidas por HMS. El endpoint de inicio de sesión canjea apiKey y apiSecret por un token, que se envía como Authorization: Bearer en todas las demás solicitudes. Consulta la guía de Autenticación para más detalles.

Iniciar sesión y obtener un token#

POST/external/public/login

No requiere autenticación · Cuerpo: application/x-www-form-urlencoded o multipart/form-data

Valida las credenciales del partner y emite un token si el partner está autorizado para el hotel. El token está vinculado a un solo hotel; inicia sesión por separado para cada hotel.

Campos de formulario

apiKeystringobligatorio
Clave de partner emitida por HMS.
apiSecretstringobligatorio
Secreto del partner. Guárdalo solo en el servidor.
hotelCodeintegerobligatorio
ID del hotel en HMS (hotelID). El partner debe estar autorizado para este hotel.
hotelSeoUrlstring
Slug SEO del hotel en HMS. Solo lo usa el propio motor de reservas de HMS, en lugar de hotelCode; las integraciones de terceros deben enviar hotelCode.

Respuesta

200 Token y datos del hotel. El token es válido durante 7 días; renuévalo iniciando sesión de nuevo antes de que caduque.

successboolean
Indicador de resultado.
hotelCodestring
ID del hotel al que está vinculado el token.
tokenstring
Token Bearer. Trátalo como un valor opaco; no lo analices.
hotelSeoUrlstring | null
Slug SEO del hotel.

Respuestas de error

  • 200 partner_is_not_found — el par de claves no coincide; hotel_is_not_found — no hay ningún hotel para hotelSeoUrl; hotel_permission_is_not_found — el partner no está autorizado para este hotel o la autorización está inactiva.
Solicitud
curl "https://test.hms.gen.tr/external/public/login" \
  -d "apiKey=5y94tLmALIKDyUVdEPlAAjg5xWGQNgQtnALlV4+Am7Q=" \
  -d "apiSecret=a143d6408634696b811def06d236682950cacb9761aa8ad5827da4015bda4b19" \
  -d "hotelCode=1000"
Respuesta · 200
{
    "success": true,
    "hotelCode": "1000",
    "token": "eyJlbmREYXRlIjp7ImRhdGUiOiIyMDI2LTA5LTE1IDEwOjI0OjMxLjAwMDAwMCIsInRpbWV6b25lX3R5cGUiOjMsInRpbWV6b25lIjoiRXVyb3BlL0lzdGFuYnVsIn0sInRva2VuIjoiM2tkOXNscTJwbTh2eHI0dHp5Nm53YjFoYzdmajVnYTAiLCJob3RlbElEIjoxMDAwLCJ1c2VySUQiOjQyLCJkYXRlIjp7ImRhdGUiOiIyMDI2LTA5LTA4IDEwOjI0OjMxLjAwMDAwMCJ9fQ==",
    "hotelSeoUrl": "demo-otel"
}
Respuesta · 200 (fallida)
{
    "success": false,
    "token": null,
    "message": "hotel_permission_is_not_found"
}
Última actualización: 21 de septiembre de 2026¿Has encontrado un error? Avísanos