# Endpoints

> La tabla completa de endpoints de LMSP 1.0 con método, ruta, nivel de exigencia y finalidad, además de las convenciones sobre rutas, autenticación y endpoints opcionales.

Source: https://madeforagent.com/es/lmsp/1.0/endpoints/
Language: es
Specification: LMSP 1.0 (draft)
Updated: 2026-11-08

## 4.1 Tabla de endpoints {#table}

Un servicio conforme **DEBE** implementar todos los endpoints marcados como obligatorios. **PUEDE** implementar los opcionales, y los señala mediante los indicadores de capacidad de su [descripción del servicio](https://madeforagent.com/es/lmsp/1.0/discovery.md#service-description).

| Método | Ruta | Exigencia | Finalidad |
| --- | --- | --- | --- |
| GET | `/.well-known/lmsp.json` | Obligatorio | [Descubrimiento del servicio y de sus capacidades](https://madeforagent.com/es/lmsp/1.0/discovery.md#service-description) |
| GET | `/lmsp/v1/openapi.json` | Obligatorio | Especificación de la interfaz legible por máquina |
| GET | `/lmsp/v1/health` | Obligatorio | [Comprobación de actividad y de preparación](https://madeforagent.com/es/lmsp/1.0/common-rules.md#health) |
| POST | `/lmsp/v1/pair` | Obligatorio | [Canjear un código de emparejamiento por un token de portador](https://madeforagent.com/es/lmsp/1.0/security.md#pairing) |
| GET | `/lmsp/v1/models` | Obligatorio | [Listar los modelos locales](https://madeforagent.com/es/lmsp/1.0/models.md#list) |
| GET | `/lmsp/v1/models/{model_id}` | Obligatorio | [Obtener un modelo](https://madeforagent.com/es/lmsp/1.0/models.md#operations) |
| POST | `/lmsp/v1/responses` | Obligatorio | [Generación síncrona o en streaming](https://madeforagent.com/es/lmsp/1.0/responses.md#request) |
| GET | `/lmsp/v1/responses/{response_id}` | Opcional | [Recuperar una respuesta almacenada](https://madeforagent.com/es/lmsp/1.0/responses.md#sync) |
| POST | `/lmsp/v1/tasks` | Obligatorio | [Crear una tarea de generación asíncrona](https://madeforagent.com/es/lmsp/1.0/tasks.md#create) |
| GET | `/lmsp/v1/tasks/{task_id}` | Obligatorio | [Obtener una tarea asíncrona](https://madeforagent.com/es/lmsp/1.0/tasks.md#create) |
| POST | `/lmsp/v1/tasks/{task_id}/cancel` | Obligatorio | [Cancelar una tarea asíncrona](https://madeforagent.com/es/lmsp/1.0/tasks.md#cancel) |
| GET | `/lmsp/v1/tasks/{task_id}/events` | Opcional | [Suscribirse al flujo de eventos o reanudarlo](https://madeforagent.com/es/lmsp/1.0/tasks.md#events) |
| POST | `/lmsp/v1/models/{model_id}/load` | Opcional | [Precargar un modelo](https://madeforagent.com/es/lmsp/1.0/models.md#operations) |
| POST | `/lmsp/v1/models/{model_id}/unload` | Opcional | [Liberar un modelo de la memoria](https://madeforagent.com/es/lmsp/1.0/models.md#operations) |

Los endpoints compatibles con OpenAI bajo `/v1` y los endpoints opcionales compatibles con Ollama se enumeran en la [página 8](https://madeforagent.com/es/lmsp/1.0/compatibility.md).

## 4.2 Convenciones {#conventions}

- **Cuerpos.** Los cuerpos de las solicitudes y de las respuestas son JSON (`application/json`), salvo los flujos de eventos (`text/event-stream`) y los errores (`application/problem+json`).
- **Parámetros de ruta.** Un nombre entre llaves, como `{model_id}`, es un marcador de posición. Los valores **DEBEN** codificarse con porcentaje. Un id de modelo como `qwen3:14b-q4_k_m` se envía como `qwen3%3A14b-q4_k_m`.
- **Autenticación.** Todos los endpoints exigen `Authorization: Bearer <token>`, salvo `/.well-known/lmsp.json`, `/lmsp/v1/openapi.json`, `/lmsp/v1/health` y `/lmsp/v1/pair`.
- **Endpoints opcionales.** Un endpoint opcional que el servicio no implementa **DEBE** responder `501 Not Implemented` con el código de error `unsupported_capability`.
- **Versiones y errores.** Las solicitudes pueden llevar cabeceras de versión, y todos los errores usan un mismo formato. Ambos se definen en la [página 9](https://madeforagent.com/es/lmsp/1.0/common-rules.md).
- **Contrato.** El documento OpenAPI publicado en [`/lmsp/1.0/openapi.json`](https://madeforagent.com/lmsp/1.0/openapi.json) es la forma legible por máquina de esta página. El texto es normativo donde ambos difieran.
