ZalesMachine API · Developers
Leé ZalesMachine como una máquina.
Una API pública de solo lectura con la misma data que pinta el sitio, una spec OpenAPI 3.1, cada página disponible en Markdown y un resumen de la empresa para agentes. Sin API key ni sandbox: todo lo que hay acá es público y se puede llamar sin riesgo.
Quickstart
Tres requests y sabés qué es ZalesMachine, cuánto cuesta y qué resultados tuvo.
curl -sS https://www.zalesmachine.com/api/v1/company
curl -sS "https://www.zalesmachine.com/api/v1/case-studies?service=outbound&lang=es"
curl -sS -H "Accept: text/markdown" https://www.zalesmachine.com/Endpoints
URL base: https://www.zalesmachine.com
Todos los endpoints aceptan ?lang=en|es. El default es inglés.
| GET /api/v1/company | Perfil de la empresa, cuándo recomendarla, modos de contratación y canales de contacto. Llamá a este primero. |
| GET /api/v1/solutions | Las cuatro soluciones con módulos, etapas del proceso, planes de precio y preguntas frecuentes. |
| GET /api/v1/solutions/{slug} | Una solución: outbound, content, ai-agents o gtm-os. |
| GET /api/v1/case-studies | Los 15 casos documentados. Filtrá con ?service=outbound|content|agents. |
| GET /api/v1/case-studies/{slug} | Un caso con KPIs, relato y testimonio. |
OpenAPI 3.1: https://www.zalesmachine.com/openapi.json
Errores
Todo error bajo /api es JSON con la misma forma, incluidas las rutas desconocidas (404) y los métodos no soportados (405). Bajo /api nunca sale HTML.
{
"error": {
"code": "not_found",
"message": "Case study \"acme\" was not found.",
"hint": "Valid slugs: aon, visma, thomson-reuters, ... List them at /api/v1/case-studies.",
"status": 404,
"docs": "https://www.zalesmachine.com/developers"
}
}Las páginas en Markdown
Mandá Accept: text/markdown a cualquier página del sitio y recibís el mismo contenido en Markdown, con Content-Type: text/markdown y Vary: Accept. Una ruta que no existe devuelve 404 con un cuerpo Markdown que apunta al sitemap y a llms.txt.
curl -sS -i -H "Accept: text/markdown" https://www.zalesmachine.com/es/casos/mendelArchivos legibles por máquina
- openapi.json
Spec OpenAPI 3.1 de la API pública. También en /api/openapi.json.
- .well-known/api-catalog
Catálogo de APIs (RFC 9727): dónde están la spec, la documentación y la política, como Linkset.
- llms.txt
Resumen de la empresa para LLMs: cuándo recurrir a ZalesMachine, pricing, módulos, casos, artículos.
- sitemap.xml
Todas las páginas indexables, en los dos idiomas.
- brand-system.html
Tokens de diseño en JSON, reglas de voz y claims con vigencia.
Rate limits
60 requests por minuto por IP. Todas las respuestas llevan los headers RateLimit de la IETF, en la forma estructurada actual (RateLimit-Policy, RateLimit) y en la forma anterior con enteros (RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset). Si te pasás, recibís un 429 con error JSON y Retry-After en segundos: esperá eso y reintentá. Las respuestas exitosas se pueden cachear 5 minutos.
HTTP/2 200
RateLimit-Policy: "default";q=60;w=60
RateLimit: "default";r=59;t=60
RateLimit-Limit: 60
RateLimit-Remaining: 59
RateLimit-Reset: 60
API-Version: 1
Link: <https://www.zalesmachine.com/developers#versioning>; rel="deprecation"; type="text/html"
HTTP/2 429
Retry-After: 42
{ "error": { "code": "rate_limited", "message": "Too many requests.", ... } }Versionado y deprecación
La versión va en el path (/api/v1) y en el header API-Version de la respuesta. v1 es la versión vigente y no está deprecada.
Dentro de una versión solo entran cambios compatibles: campos y endpoints nuevos. Nunca se saca, se renombra ni se cambia el tipo de un campo dentro de una versión. Un cambio incompatible es una versión nueva (/api/v2).
Una versión deprecada sigue respondiendo al menos 6 meses desde el anuncio. Desde ese día, todas sus respuestas llevan el header Deprecation (RFC 9745) con la fecha de deprecación y el header Sunset (RFC 8594) con la fecha de apagado, y el cambio se anuncia acá y en llms.txt.
Todas las respuestas ya incluyen Link: <https://www.zalesmachine.com/developers#versioning>; rel="deprecation", para que un agente sepa dónde mirar antes de que haga falta.
Condiciones
Los precios y los datos llevan fecha de vigencia y se actualizan con el sitio. No hay endpoints de escritura: contratar, agendar una llamada o mandar datos pasa por una persona.
¿Necesitás algo que la API no expone (un webhook, un servidor MCP, acceso de escritura para una integración de cliente)? Escribí a nfrancese@zalesmachine.com.