API Reference

Elicita API

Accede programáticamente al dataset de contratación pública española más completo: más de 66 millones de registros agregados de PLACE, TED, BOE, BORME y los boletines oficiales de las principales comunidades autónomas.

66M+
registros indexados
12
fuentes oficiales
<200ms
latencia media p95

Autenticación

Los endpoints de la API v1 utilizan autenticación Bearer. Incluye tu API key en el header Authorization. Las API keys se generan y gestionan desde /cuenta.

Authorization: Bearer elicita_live_<id>_<secreto>

También puedes usar /api/v1/search autenticado con tu sesión de Clerk (cookie __session) mientras navegas por la aplicación.

Rate Limits

Los límites se aplican por periodo de 24 horas y se devuelven en los headers de respuesta.

Plan Consultas/día Notas
Free (anónimo) 10 / IP /api/public/search
Developer 100 Requiere API key
Empresa ilimitado* *Con fair-use y rate limit por minuto

Endpoints

POST /api/v1/keys Auth

Crear API key

Crea una nueva API key. El secreto completo solo se muestra una vez. Requiere plan Developer/Empresa.

GET /api/v1/keys Auth

Listar API keys

Devuelve metadatos de las API keys activas (sin mostrar el secreto).

DELETE /api/v1/keys/:id Auth

Revocar API key

Marca una API key como revocada. Las claves revocadas dejan de funcionar inmediatamente.

POST /mcp/sse Auth

MCP server

Servidor MCP (Model Context Protocol) con transporte JSON-RPC. Requiere plan Empresa.

cURL — búsqueda pública

cURL — búsqueda autenticada

cURL — crear API key

JavaScript (fetch)

JavaScript (API key)

Python (requests)

Parámetros de búsqueda

Parámetro Tipo Requerido Descripción
q string Sí* Término de búsqueda. Se busca en título, organismo y adjudicatario. *Obligatorio si no se usa otro filtro.
cpv string No Código CPV o prefijo (p. ej. 45230000). Filtra por CPV cuando la fuente lo publica.
importeMin number No Importe mínimo de adjudicación (€).
importeMax number No Importe máximo de adjudicación (€).
estado string No Estado del contrato: Anuncio, Adjudicada, Formalizado, etc.
fuente string No Fuente: PLACE, TED, Galicia, Andalucía, Euskadi, Madrid, Catalunya.
nif string No NIF/CIF del adjudicatario.
desde string (YYYY) No Año de inicio del rango de publicación.
hasta string (YYYY) No Año de fin del rango de publicación.
limit number No Máximo de resultados. Público: ≤20, v1: ≤100. Default: 10/20.
offset number No Desplazamiento para paginación.
sort string No Columna de ordenación: titulo, organismo, adjudicatario, importe, fuente, fecha.
dir string No Dirección: asc o desc. Default: desc.

Ejemplo de respuesta

Respuesta típica de /api/public/search y /api/v1/search:

MCP

Elicita expone un servidor Model Context Protocol (MCP) en /mcp/sse. Permite que agentes de IA con acceso OAuth a tu cuenta de Elicita ejecuten búsquedas, consulten perfiles y gestionen alertas directamente.

POST https://elicita.es/mcp/sse

Disponible exclusivamente en el plan Empresa. Tools expuestas:

Tool Descripción
elicita_search Buscar contratos públicos por texto, CPV, importe y fecha.
elicita_profile Perfil de empresa y historial de adjudicaciones por CIF/nombre.
elicita_alerts_list Listar alertas activas del usuario.
elicita_alerts_create Crear una alerta de contratos (solo Empresa).
elicita_export Exportar resultados a PDF/CSV (solo Empresa).

Errores

Código Nombre Descripción
400 Bad Request Faltan parámetros obligatorios (p. ej. q) o son inválidos.
401 Unauthorized Falta API key, es inválida o la sesión de Clerk no está activa.
403 Forbidden El plan actual no tiene acceso a la API o al MCP.
429 Too Many Requests Se ha alcanzado el límite diario de consultas o de rate limit.
500 Internal Server Error Error inesperado. Reintentar o contactar soporte.