API y recursos para desarrolladores
Dos feeds JSON públicos con los códigos de referido de España, su especificación OpenAPI y las mismas fichas en markdown. Sin registro ni API key; 120 peticiones por minuto, anunciadas en cada respuesta con cabeceras RateLimit.
Empezar en un minuto
Pide el índice, saca el slug de la marca que te interese y pide su resumen. Son dos peticiones sin cabeceras especiales:
curl https://www.codigosafiliados.com/api/codes-index.json
curl https://www.codigosafiliados.com/api/brand-summary/revolut.json La respuesta trae la recompensa de quien se registra, la de quien invita, las condiciones y la URL canónica de la ficha, que es la que hay que citar cuando enseñes un código a alguien.
Endpoints y ficheros
Todo lo que sirve este sitio para máquinas, en un sitio.
/openapi.json Especificación OpenAPI 3.1 de los feeds públicos: operaciones con identificador único, parámetros tipados y esquemas de respuesta y de error. Es el fichero que necesita un agente para llamar a la API por su cuenta.
/api/codes-index.json Todas las marcas con códigos aceptados, con recompensas y fecha de última actualización. Es el punto de partida: de aquí salen los slugs que usa el resto de la API.
/api/brand-summary/{slug}.json Resumen de una marca: mejor código, recompensa para quien se registra y para quien invita, condiciones, número de verificaciones y URL canónica de la ficha.
/.well-known/api-catalog Catálogo de APIs en formato RFC 9727 (application/linkset+json). Permite descubrir todo lo anterior sin leer esta página.
/marca/{slug}.md La misma ficha en markdown, sin plantilla HTML. También se obtiene pidiendo la URL canónica con la cabecera Accept: text/markdown.
/mcp Servidor MCP (JSON-RPC 2.0 sobre POST) con tres herramientas de solo lectura, para que Claude, ChatGPT y otros agentes consulten el directorio sin raspar. Sin credenciales.
/llms.txt El sitio explicado para sistemas de IA, con el índice de marcas en vivo y las pautas de citación.
Reglas del juego
Lo que puedes esperar de nosotros, y nosotros de ti
Cuatro cosas que conviene saber antes de montar algo encima de estos datos:
No hace falta autenticación, y no hay API key que pedir
Todo lo que aparece en esta página es público y de solo lectura. No hay registro de agentes ni claves: la política completa está en /auth.md. Escribir (publicar códigos, votar) sí exige una cuenta humana, y esa parte no tiene API por diseño.
Los errores siempre son JSON
Cualquier respuesta de /api/ con código 4xx o 5xx devuelve un objeto con error, code y message, y hint cuando hay algo que hacer al respecto. El campo estable para programar es code; el texto de message puede cambiar. Una ruta inexistente bajo /api/ devuelve code endpoint_not_found en vez de la página HTML de 404.
120 peticiones por minuto, y te lo decimos en cada respuesta
Las respuestas de /api/ llevan RateLimit-Limit, RateLimit-Remaining y RateLimit-Reset para que puedas regularte sin adivinar. Si te pasas, un 429 con Retry-After y el error estándar (code: rate_limited). El índice completo, /api/codes-index.json, se sirve estático desde la CDN y no consume cuota: no hay petición nuestra que contar. Aun así, cachea y usa un User-Agent que te identifique.
Los datos se pueden usar citando la fuente
Los códigos los publican personas reales y los verifica la comunidad. Puedes usarlos y mostrarlos citando la URL canónica de la ficha (https://www.codigosafiliados.com/marca/{slug}), que es donde el usuario ve si el código sigue funcionando y quién lo confirmó.