# Una API para generar y comprobar contraseñas · password.es

> api.password.es ya responde: POST /v1/generate devuelve contraseñas y su análisis exacto, con los mismos números que este sitio. 60 peticiones/min, sin registro.

password.es · Original: https://password.es/api/

---

# Una API para generar y comprobar contraseñas

`api.password.es` ya responde. Una petición devuelve contraseñas y su análisis con los mismos números que ves en este sitio: la misma fórmula de bits, el mismo modelo de ataque y la misma escala de nivel que el comprobador.

**Sin registro y sin clave.** Se llama y ya: 60 peticiones por minuto y por IP. Generar funciona hoy; comprobar todavía no, y aquí abajo se dice exactamente por qué.

## Lo que responde hoy

Todo cuelga de `https://api.password.es`. Tres direcciones responden y una todavía no; la referencia completa —parámetros, campos y errores— está en [la documentación](https://password.es/api/docs/).

- POST/v1/generate Genera una o varias contraseñas y devuelve su análisis.
- GET/openapi.json La descripción de la API, en OpenAPI 3.1.
- POST/mcp Servidor MCP para asistentes. Una herramienta: `generate_password`.
- POST/v1/check 501 Todavía no existe. El error explica qué falta y adónde ir mientras tanto.

## En diez segundos

Sin clave, sin registro y sin cabeceras. Esto es la llamada entera:

Una contraseña, sin más

```
curl -X POST https://api.password.es/v1/generate
```

Devuelve una contraseña de 16 caracteres y su análisis: los bits, cuánto aguantaría un ataque y un nivel de 0 a 4 — los mismos números que ves en la portada de este sitio. Todo lo demás son opciones.

## La referencia completa

En [la documentación de la API](https://password.es/api/docs/) están los nueve parámetros, todos los campos de la respuesta explicados uno a uno, los códigos de error, los límites y cómo se elige el idioma. Es la página que se abre con el editor al lado; esta es la que cuenta de qué va.

## Lo que todavía no existe

Sin fechas, porque no las hay. Se cuenta para que se vea hacia dónde va esto, no como compromiso.

- **`/v1/check`**. La intención es que analice una contraseña con los mismos números que el comprobador. Hoy devuelve `501` y dice por qué: exige el mismo motor de patrones que la web, y eso cuesta entre 11 ms y 3,6 s de CPU por petición según lo que se le mande. Está pendiente de una decisión —dónde poner el tope de longitud— que todavía no se ha tomado.
- **Comprobar por k-anonymity**: mirar si una contraseña aparece en una filtración sin llegar a enviarla entera.
- **El paquete local**: el mismo motor para ejecutarlo en tu máquina y no llamarnos nunca. Es la parte cara de todo esto, así que no la des por hecha.
- **Claves y planes.** Ni fecha ni compromiso. Hoy no hay registro ni precios, y por eso no hay un solo enlace a ellos en toda la API — ni siquiera en el error de límite superado.

## Lo que no vamos a esconder

Una API que genera contraseñas es, en el fondo, un antipatrón: la contraseña viaja por la red y pasa por una máquina que no es la tuya. Ahora que se puede llamar de verdad es cuando este aviso hace falta, no cuando esta página era una promesa.

Por eso no vive solo aquí: **cada respuesta lleva su propio `notice`** diciendo lo mismo, en el idioma que pidas. Para una contraseña que vayas a usar de verdad, [el generador de este sitio](https://password.es/) corre entero en tu navegador y no envía nada; [el comprobador](https://password.es/comprobador/), igual.

La salida de verdad a este antipatrón es el paquete local de la lista de arriba: el mismo motor, en tu máquina, sin nosotros en medio. Es una intención, no una fecha.
