CREATE FREE ACCOUNT · NO CARD REQUIRED START FREE
  • LOG IN
MuseRelay
  • Home
  • Solutions
    • Customer support
    • Automated sales
    • Bookings & appointments
    • AI Assistants
    • Automation
  • Channels
    • WhatsApp Chatbot
    • Instagram Chatbot
    • Messenger Chatbot
    • Web Chatbot
  • White label
    • White-label chatbot
    • Reseller panel
    • For agencies
    • How to start as reseller
  • Pricing
LOG IN SIGN UP
Home
Getting Started
Chatbots & AI
Agent Tools
Channels
Voice Agents
Operations
White Label
API Reference
Documentación
Documentation / Overview / API Reference — Introducción

API Reference — Introducción

La API de MuseRelay permite a aplicaciones externas, asistentes de IA y herramientas de automatización interactuar con calendarios, citas y disponibilidad.


Autenticación

Todas las llamadas a la Calendar API requieren un token personal de calendario.

Crear un token

  1. Entra en tu panel → Ajustes → API e Integraciones → Tokens de API
  2. Haz clic en Nuevo token
  3. Elige un nombre descriptivo, los scopes y los calendarios a los que tendrá acceso
  4. Copia el token — solo se muestra una vez

Los tokens tienen el prefijo mrcal_. El sistema guarda el hash SHA-256, no el token en claro.

Usar el token

Authorization: Bearer mrcal_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Si la cabecera falta o el token está vacío:

{ "error": "Bearer token required" }

Si el token es inválido, inactivo o caducado:

{ "error": "Unauthorized" }

Rate limits

LímiteValor
Por minuto120 requests / minuto por token (por defecto)
Máximo configurable3000 requests / minuto
Mínimo aplicado1 request / minuto
Por díaSin límite si no está configurado; configurable por token
Por IPSin límite adicional salvo que el token tenga CIDRs restringidos

Si se supera el límite: 429 Too Many Requests con cabecera Retry-After.

Las respuestas incluyen:

Cache-Control: no-store, max-age=0
X-Request-Id: mrcal_req_...
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 119

Convenciones

URL base

https://muserelay.com/api/calendar/v1

Formato de fechas

Las citas se devuelven como strings ISO 8601. Cada cita incluye el campo timezone con la zona horaria del calendario.

2026-05-12T10:30:00+02:00

Listas

EndpointParámetroPor defectoMáximo
GET /calendars/{calendar}/availabilitylimit120500
GET /calendars/{calendar}/appointmentslimit100200

No hay paginación page / per_page ni objeto meta.

Idempotencia

POST /api/calendar/v1/calendars/{calendar}/appointments
Idempotency-Key: retell-call-abc123-slot-20260512-1030
PuntoValor
CabeceraIdempotency-Key
TTL24 horas
ReplayHTTP 200 con el mismo payload cacheado
Cabecera en replayX-Idempotent-Replay: true

Respuestas de error

Errores del middleware de token

HTTPBody
401{ "error": "Bearer token required" }
401{ "error": "Unauthorized" }
403{ "error": "IP not allowed for token" }
403{ "error": "Insufficient scope" }
429{ "error": "Too many requests" }
429{ "error": "Daily token limit exceeded" }

Errores del controlador

HTTPBody
422{ "message": "to_must_be_after_from" }
422{ "message": "slot_unavailable" }

Errores de validación y recursos

Los errores calendar_not_found, calendar_not_allowed, service_not_found, service_not_allowed, resource_not_found y resource_not_allowed usan el formato estándar de Laravel.


APIs disponibles

APIBase URLEstado
Calendar API v1/api/calendar/v1Disponible
Calendar WebhooksConfiguración en panelDisponible

Quickstart — primera llamada en 2 minutos

# 1. Crear token en el panel → Ajustes → API e Integraciones → Tokens de API

# 2. Ver tus calendarios disponibles
curl -H "Authorization: Bearer mrcal_..." \
  https://muserelay.com/api/calendar/v1/calendars

# 3. Consultar servicios del calendario
curl -H "Authorization: Bearer mrcal_..." \
  https://muserelay.com/api/calendar/v1/calendars/12/services

# 4. Consultar disponibilidad
curl -H "Authorization: Bearer mrcal_..." \
  "https://muserelay.com/api/calendar/v1/calendars/12/availability?service_id=5&from=2026-05-12&to=2026-05-16&limit=20"

# 5. Crear una cita
curl -X POST \
  -H "Authorization: Bearer mrcal_..." \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: mi-integracion-reserva-001" \
  -d '{
    "service_id": 5,
    "start_at": "2026-05-12T10:30:00+02:00",
    "customer": {
      "name": "Ana Pérez",
      "phone": "+34600111222",
      "email": "ana@example.com"
    }
  }' \
  https://muserelay.com/api/calendar/v1/calendars/12/appointments

Siguiente paso

Consulta la referencia completa de la Calendar API v1 →.

En esta página
  • Cargando...

Platform

  • WhatsApp Chatbot
  • Instagram Chatbot
  • Messenger Chatbot
  • Web Chatbot
  • Automation
  • Integrations

White label

  • White-label chatbot
  • Reseller panel
  • For agencies
  • How to start

Resources

  • Blog
  • Documentation
  • Guides
  • API docs
  • Pricing
  • Contact

Legal

  • Legal Notice
  • Privacy
  • Terms
  • Cookies
  • DPA
  • Subprocessors
  • Integrations & GDPR
  • Data Deletion

© 2026 Muse Layer LLC · Infrastructure and data processing in the EU · GDPR compliant

Privacy | Legal notice | Terms | Cookies
ES | EN

LOG IN

Access your MuseRelay account

Forgot your password?
Don't have an account? Create new account

Create new account

Join the MuseRelay beta community

Contact us to get your code: webmaster@muserelay.com
Already have an account? LOG IN
We value your privacy

We use strictly necessary technical cookies for the platform to work. No advertising or third-party tracking cookies. Cookie Policy · Privacy