> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enrow.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Uwierzytelnianie

> Jak uwierzytelniać żądania API Enrow za pomocą klucza API w nagłówku x-api-key

API Enrow korzysta z uwierzytelniania za pomocą klucza API. Każde żądanie musi zawierać Twój klucz API w nagłówku `x-api-key`. Nie ma żadnych przepływów OAuth ani tokenów bearer do zarządzania — jeden klucz API uwierzytelnia każdy punkt końcowy.

## Jak uzyskać klucz API?

1. Zarejestruj się na [app.enrow.io](https://app.enrow.io)
2. Kliknij **API** w menu po lewej stronie
3. Skopiuj swój klucz API

<Warning>
  Przechowuj swój klucz API w bezpieczny sposób i nigdy nie umieszczaj go w systemie kontroli wersji. Traktuj go jak hasło. Jeśli klucz kiedykolwiek zostanie ujawniony, wygeneruj go ponownie — zobacz [Najlepsze praktyki](#best-practices).
</Warning>

## Jak uwierzytelnić żądanie?

Dołącz swój klucz API w nagłówku `x-api-key` przy każdym żądaniu:

<CodeGroup>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.enrow.io/email/find/single \
    --header 'Content-Type: application/json' \
    --header 'x-api-key: YOUR_API_KEY' \
    --data '{
      "fullname": "John Doe",
      "company_domain": "example.com"
    }'
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://api.enrow.io/email/find/single', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'x-api-key': 'YOUR_API_KEY'
    },
    body: JSON.stringify({
      fullname: 'John Doe',
      company_domain: 'example.com'
    })
  });

  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  url = "https://api.enrow.io/email/find/single"
  headers = {
      "Content-Type": "application/json",
      "x-api-key": "YOUR_API_KEY"
  }
  payload = {
      "fullname": "John Doe",
      "company_domain": "example.com"
  }

  response = requests.post(url, json=payload, headers=headers)
  data = response.json()
  ```
</CodeGroup>

Ten sam nagłówek `x-api-key` działa dla każdego punktu końcowego — [Email Finder](/pl/api-reference/email-finder/find-single), [Email Verifier](/pl/api-reference/email-verifier/verify-single), [Phone Finder](/pl/api-reference/phone/find-single) oraz [Informacje o koncie](/pl/api-reference/account/info).

## Dlaczego otrzymuję błąd 401?

Odpowiedź `401 Unauthorized` oznacza, że Twój klucz API jest brakujący lub nieprawidłowy.

Jeśli klucz API jest nieprawidłowy, otrzymasz:

```json theme={null}
{
  "message": "This apikey is not valid"
}
```

Jeśli nie podano żadnego klucza API, komunikat `message` przyjmuje zamiast tego wartość `"No apikey found in the x-api-key headers"`.

Pełną listę kodów statusu i formatów błędów znajdziesz w sekcjach [Kody statusu](/pl/status-codes) oraz [Obsługa błędów](/pl/error-handling).

## Jak sprawdzić swoje konto i kredyty?

Informacje o swoim koncie (saldo kredytów i zarejestrowane webhooki) możesz pobrać za pomocą tego samego nagłówka `x-api-key` — nie jest wymagana żadna treść żądania:

```bash theme={null}
curl https://api.enrow.io/account/info \
  -H "x-api-key: YOUR_API_KEY"
```

```json Odpowiedź theme={null}
{
  "credits": 8500,
  "webhooks": ["https://your-app.com/webhooks/enrow"]
}
```

Aby zrozumieć, jak kredyty są zużywane przez poszczególne punkty końcowe, zobacz [Kredyty i rozliczenia](/pl/credits-billing).

## Najlepsze praktyki

<AccordionGroup>
  <Accordion title="Używaj zmiennych środowiskowych">
    Przechowuj swój klucz API w zmiennych środowiskowych, zamiast wpisywać go na stałe w kodzie:

    ```bash theme={null}
    export ENROW_API_KEY="your_api_key_here"
    ```
  </Accordion>

  <Accordion title="Regularnie zmieniaj klucze">
    Dla zwiększenia bezpieczeństwa okresowo zmieniaj swoje klucze API i usuwaj nieużywane klucze.
  </Accordion>

  <Accordion title="Używaj różnych kluczy dla różnych środowisk">
    Twórz osobne klucze API dla środowisk programistycznego, testowego i produkcyjnego.
  </Accordion>
</AccordionGroup>

## Następne kroki

<CardGroup cols={2}>
  <Card title="Znajdź e-mail" icon="envelope" href="/pl/api-reference/email-finder/find-single">
    Wyszukaj służbowy adres e-mail na podstawie imienia, nazwiska i firmy.
  </Card>

  <Card title="Zweryfikuj e-mail" icon="circle-check" href="/pl/api-reference/email-verifier/verify-single">
    Sprawdź, czy adres e-mail jest prawidłowy i możliwy do dostarczenia.
  </Card>

  <Card title="Kredyty i rozliczenia" icon="coins" href="/pl/credits-billing">
    Zobacz, jak kredyty są zużywane przez poszczególne punkty końcowe.
  </Card>

  <Card title="Limity zapytań" icon="gauge-high" href="/pl/rate-limits">
    Poznaj limity żądań API, zanim zwiększysz skalę.
  </Card>
</CardGroup>
