# API do tworzenia i sprawdzania haseł · password.es

> api.password.es już odpowiada: POST /v1/generate zwraca hasła i ich dokładną analizę, tymi samymi liczbami co ta strona. 60 żądań/min, bez rejestracji.

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

---

# API do tworzenia i sprawdzania haseł

`api.password.es` już odpowiada. Jedno żądanie zwraca hasła wraz z analizą, tymi samymi liczbami, które widzisz na tej stronie: ten sam wzór na bity, ten sam model ataku i ta sama skala poziomów co w sprawdzaniu.

**Bez rejestracji i bez klucza.** Po prostu się je wywołuje: 60 żądań na minutę na adres IP. Tworzenie działa dziś; sprawdzanie jeszcze nie, i niżej jest napisane dokładnie dlaczego.

## Co odpowiada dzisiaj

Wszystko wisi pod `https://api.password.es`. Trzy adresy odpowiadają, a jeden jeszcze nie; pełna dokumentacja —parametry, pola i błędy— znajduje się w [dokumentacji](https://password.es/pl/api/docs/).

- POST/v1/generate Tworzy jedno lub kilka haseł i zwraca ich analizę.
- GET/openapi.json Opis API w formacie OpenAPI 3.1.
- POST/mcp Serwer MCP dla asystentów. Jedno narzędzie: `generate_password`.
- POST/v1/check 501 Jeszcze nie istnieje. Błąd mówi, czego brakuje i gdzie iść w międzyczasie.

## W dziesięć sekund

Bez klucza, bez rejestracji i bez nagłówków. Całe wywołanie to:

Jedno hasło, nic więcej

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

Zwraca hasło o długości 16 znaków i jego analizę: bity, ile wytrzymałoby wobec ataku i poziom od 0 do 4 — te same liczby, które widzisz na stronie głównej. Cała reszta to opcje.

## Pełna dokumentacja

W [dokumentacji API](https://password.es/pl/api/docs/) są wszystkie dziewięć parametrów, każde pole odpowiedzi wyjaśnione po kolei, kody błędów, limity i to, jak wybiera się język. To strona, którą otwiera się obok edytora; ta mówi, o co w tym chodzi.

## Czego jeszcze nie ma

Bez dat, bo ich nie ma. Jest to napisane, żeby było widać, dokąd to zmierza, a nie jako zobowiązanie.

- **`/v1/check`**. Zamiarem jest, żeby analizowało hasło tymi samymi liczbami co sprawdzanie na stronie. Dziś zwraca `501` i mówi dlaczego: wymaga dokładnie tego samego silnika wzorców co strona, a to kosztuje od 11 ms do 3,6 s czasu CPU na żądanie, zależnie od wejścia. Czeka na decyzję —gdzie postawić limit długości—, której jeszcze nie podjęto.
- **Sprawdzanie przez k-anonimowość**: ustalenie, czy hasło występuje w wycieku, bez wysyłania go w całości.
- **Pakiet lokalny**: ten sam silnik do uruchomienia na własnej maszynie, żeby nigdy do nas nie dzwonić. To najdroższa część tego wszystkiego, więc nie zakładaj, że powstanie.
- **Klucze i plany.** Ani daty, ani zobowiązania. Dziś nie ma rejestracji ani cennika, i dlatego w całym API nie ma do nich ani jednego odnośnika — nawet w błędzie przekroczonego limitu.

## Czego nie będziemy ukrywać

API, które tworzy hasła, jest w gruncie rzeczy antywzorcem: hasło wędruje przez sieć i przechodzi przez maszynę, która nie jest twoja. Właśnie teraz, gdy naprawdę da się je wywołać, to ostrzeżenie jest potrzebne — a nie wtedy, gdy ta strona była obietnicą.

Dlatego nie mieszka tylko tutaj: **każda odpowiedź niesie własny `notice`** mówiący to samo, w języku, o który poprosisz. Do hasła, którego naprawdę użyjesz, [generator tej strony](https://password.es/pl/) działa w całości w twojej przeglądarce i niczego nie wysyła; [sprawdzanie](https://password.es/pl/sprawdzanie/) tak samo.

Prawdziwym wyjściem z tego antywzorca jest pakiet lokalny z listy powyżej: ten sam silnik, na twojej maszynie, bez nas pośrodku. To zamiar, nie data.
