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

# Authenticatie

> Leer hoe u zich kunt authenticeren met de VoiceCheap API

# Authenticatie

De VoiceCheap API gebruikt API-sleutels voor authenticatie. Alle API-verzoeken moeten uw API-sleutel bevatten in de `x-api-key` header.

## Uw API-sleutel verkrijgen

<Steps>
  <Step title="Meld u aan bij VoiceCheap">
    Ga naar [app.voicecheap.ai](https://app.voicecheap.ai) en meld u aan bij uw account.
  </Step>

  <Step title="Navigeer naar de API-pagina">
    Ga naar de **API**-pagina op [app.voicecheap.ai/page-api](https://app.voicecheap.ai/page-api).
  </Step>

  <Step title="API-sleutel genereren">
    Klik op **Nieuwe sleutel aanmaken** en geef uw sleutel een naam. Uw volledige API-sleutel wordt slechts één keer weergegeven - kopieer en bewaar deze direct op een veilige plek.
  </Step>
</Steps>

<Warning>
  **Belangrijk: Sla uw sleutel direct op**

  Uw volledige API-sleutel wordt **slechts één keer** weergegeven wanneer deze wordt aangemaakt. Nadat u het venster sluit, ziet u alleen een gemaskeerde versie (`vc_abc...xyz`). Als u uw sleutel verliest, moet u deze verwijderen en een nieuwe aanmaken.
</Warning>

## Limieten voor API-sleutels

* U kunt maximaal **5 API-sleutels** per account aanmaken
* Elke sleutel kan een naam krijgen voor eenvoudige identificatie (bijv. "Productie", "Ontwikkeling")
* Sleutels kunnen op elk gewenst moment worden verwijderd vanaf de API-pagina

## Uw API-sleutel gebruiken

Voeg uw API-sleutel toe aan de `x-api-key` header bij elk verzoek:

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://api.voicecheap.ai/v1/translate \
    -H "x-api-key: vc_your-api-key-here" \
    -F "file=@video.mp4" \
    -F "targetLanguage=spanish"
  ```

  ```typescript TypeScript theme={null}
  const formData = new FormData();
  formData.append('file', videoFile);
  formData.append('targetLanguage', 'spanish');

  const response = await fetch('https://api.voicecheap.ai/v1/translate', {
    method: 'POST',
    headers: {
      'x-api-key': 'vc_your-api-key-here'
    },
    body: formData
  });

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

  ```javascript JavaScript theme={null}
  const formData = new FormData();
  formData.append('file', videoFile);
  formData.append('targetLanguage', 'spanish');

  const response = await fetch('https://api.voicecheap.ai/v1/translate', {
    method: 'POST',
    headers: {
      'x-api-key': 'vc_your-api-key-here'
    },
    body: formData
  });

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

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

  files = {'file': open('video.mp4', 'rb')}
  data = {'targetLanguage': 'spanish'}
  headers = {'x-api-key': 'vc_your-api-key-here'}

  response = requests.post(
      'https://api.voicecheap.ai/v1/translate',
      headers=headers,
      files=files,
      data=data
  )
  ```
</CodeGroup>

## Vereisten

<Warning>
  **Betaald abonnement vereist**

  API-toegang vereist een actief betaald abonnement. Gratis accounts kunnen de API niet gebruiken. Als u probeert de API te gebruiken zonder een geldig abonnement, ontvangt u een `403 Forbidden`-foutmelding.
</Warning>

## Beveiliging van API-sleutels

<CardGroup cols={2}>
  <Card title="Houd het geheim" icon="lock">
    Stel uw API-sleutel nooit bloot in client-side code, openbare repositories of enige publiek toegankelijke locatie.
  </Card>

  <Card title="Gebruik omgevingsvariabelen" icon="shield">
    Sla uw API-sleutel op in omgevingsvariabelen of een veilige secrets manager.
  </Card>

  <Card title="Roteer regelmatig" icon="rotate">
    Roteer periodiek uw API-sleutels, vooral als u vermoedt dat ze gecompromitteerd zijn.
  </Card>

  <Card title="Monitor het gebruik" icon="eye">
    Houd uw API-gebruik bij om ongeautoriseerde toegang te detecteren.
  </Card>
</CardGroup>

## Foutmeldingen

Als de authenticatie mislukt, ontvangt u een van de volgende foutmeldingen:

| Statuscode | Foutcode                 | Beschrijving                                                 |
| ---------- | ------------------------ | ------------------------------------------------------------ |
| 401        | `MISSING_API_KEY`        | De `x-api-key` header werd niet verstrekt                    |
| 401        | `INVALID_API_KEY_FORMAT` | De API-sleutel gebruikt niet het verwachte `vc_`-voorvoegsel |
| 401        | `INVALID_API_KEY`        | De verstrekte API-sleutel is ongeldig                        |
| 403        | `API_ACCESS_REQUIRED`    | API-toegang is niet ingeschakeld voor dit account            |
| 403        | `SUBSCRIPTION_REQUIRED`  | API-toegang vereist een actief betaald abonnement            |
| 403        | `INSUFFICIENT_CREDITS`   | Uw account heeft onvoldoende credits voor deze bewerking     |

## Voorbeeld van een foutmelding

```json theme={null}
{
  "code": "INVALID_API_KEY",
  "message": "The provided API key is invalid. Please check your API key and try again."
}
```
