API pública de profesores, estudios y clases

Lee el mismo directorio que la gente ve en MoveMentors: profesores independientes, estudios pequeños y sus próximas clases. Sin registro, sin clave, JSON sencillo. Pensada para que agentes de IA y herramientas pequeñas lleven a la gente a clases cercanas sin hacer scraping.

URL base

https://movementors.com/api/v1

Todos los endpoints de abajo empiezan aquí. Un GET sobre ella devuelve la lista de todos en JSON.

Pruébala

Busca cinco profesores de pilates. Pega esto en una terminal:

curl "https://movementors.com/api/v1/mentors?category=pilates&limit=5"

Endpoints

Todos son de solo lectura y gratuitos. Las listas aceptan page y limit (hasta 50).

EndpointQué devuelve
GET/api/v1/mentorsBusca profesores independientes por texto, ciudad o disciplina.
GET/api/v1/mentors/{slug}El perfil público de un profesor: disciplinas, lugares y certificaciones.
GET/api/v1/studiosBusca estudios pequeños. Añade rentable=1 para salas que otros profesores pueden alquilar.
GET/api/v1/studios/{slug}El perfil público de un estudio y sus ubicaciones.
GET/api/v1/classesPróximas sesiones, online o presenciales, con fechas, precios y anfitriones.
GET/api/v1/classes/{id}Una clase con su horario y su anfitrión.
GET/api/v1/healthSi el servicio está funcionando.
GET/api/v1/openapi.jsonEl contrato OpenAPI 3.1 completo, para generadores de código y agentes.

Autenticación

Ninguna para los endpoints de esta página. Para reservar una clase o gestionar un horario en nombre de alguien, un agente usa nuestro servidor MCP con OAuth, así esa persona lo aprueba primero.

Conecta un asistente de IA

Errores

Cada error llega como JSON en el formato de problema RFC 9457 (application/problem+json), nunca como una página HTML. Lee code para decidir qué hacer y hint para saber cómo arreglarlo.

  • 400invalid_parameter

    Un parámetro de la consulta es incorrecto. El campo param lo indica.

  • 404not_found

    No existe ese endpoint, profesor, estudio o clase.

  • 405method_not_allowed

    Estos endpoints solo leen. Usa GET.

  • 429rate_limited

    Demasiadas peticiones. Espera los segundos que indica Retry-After.

  • 500internal_error

    Algo falló de nuestro lado. Reintenta esperando un poco más cada vez.

  • 503service_unavailable

    El servicio está caído un momento. Reintenta más tarde.

HTTP/1.1 404 Not Found
Content-Type: application/problem+json

{
  "type": "https://movementors.com/developers#error-not_found",
  "title": "Not Found",
  "status": 404,
  "detail": "Teacher not found",
  "instance": "/api/v1/mentors/unknown",
  "code": "not_found",
  "hint": "Check the path and identifier. GET /api/v1 lists every public endpoint.",
  "error": "Teacher not found"
}

Límites de uso

Los límites son por dirección IP: 100 peticiones por minuto, más 5.000 al día en los endpoints de listas. Cada respuesta te dice cómo vas, para que puedas bajar el ritmo antes de quedarte sin cupo.

  • RateLimit-Policy

    Tus cuotas, por ejemplo "burst";q=100;w=60.

  • RateLimit

    Peticiones restantes y segundos hasta que se renueva cada cuota.

  • RateLimit-Limit / -Remaining / -Reset

    Lo mismo para la cuota más cerca de agotarse, en el formato antiguo de un solo valor.

  • Retry-After

    En un 429, cuántos segundos esperar.

Versiones

La versión va en la ruta, así que nada cambia sin aviso.

  • Los nuevos endpoints, parámetros y campos se añaden a v1 sin más. Tu código sigue funcionando.
  • Todo lo que rompería código existente, como quitar o renombrar un campo, sale como /api/v2.
  • Antes de retirar una versión, sus respuestas llevan una cabecera Deprecation (RFC 9745) y una cabecera Sunset (RFC 8594) con la fecha, con al menos 6 meses de antelación.

Para agentes y herramientas

Puntos de entrada legibles por máquinas: GET /api/v1 · OpenAPI 3.1 · API catalog (RFC 9727) · llms.txt · MCP server card

¿Preguntas, o necesitas un límite más alto? Escribe a support@movementors.com