Authenticatie

Alle API-aanvragen naar GenderAPI vereisen authenticatie. Je kunt je aanvragen op twee manieren authenticeren:

  1. API Key in de POST-body als parameter key
  2. API Key in de Authorization-header met gebruik van een Bearer token

1. API Key in de POST-body

De eenvoudigste manier om te authenticeren is door je API Key mee te sturen als veld genaamd key in de JSON-body van je POST-aanvraag.

Bijvoorbeeld, om het geslacht van de naam “Alice” te bepalen:


Voorbeeld met cURL

curl -X POST "https://api.genderapi.io/api" \
     -H "Content-Type: application/json" \
     -d '{"name": "Alice", "key": "YOUR_API_KEY"}'

Voorbeeld met JavaScript fetch

fetch("https://api.genderapi.io/api", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    name: "Alice",
    key: "YOUR_API_KEY"
  })
})
.then(response => response.json())
.then(data => console.log(data));

Voorbeeld met Python requests

import requests

url = "https://api.genderapi.io/api"

payload = {
    "name": "Alice",
    "key": "YOUR_API_KEY"
}

headers = {
    "Content-Type": "application/json"
}

response = requests.post(url, headers=headers, json=payload)

print(response.json())

2. API Key in de Authorization-header (Bearer Token)

Voor betere beveiliging en nettere aanvragen kun je je API Key versturen in de Authorization-header met behulp van het Bearer-schema. Bij deze methode voeg je de API Key niet toe in de JSON-body.

In plaats daarvan stuur je alleen je inputparameters (zoals name) in de POST-body.

Bijvoorbeeld, om het geslacht van de naam “Alice” te bepalen:


Voorbeeld met cURL

curl -X POST "https://api.genderapi.io/api" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer YOUR_API_KEY" \
     -d '{"name": "Alice"}'

Voorbeeld met JavaScript fetch

fetch("https://api.genderapi.io/api", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
  },
  body: JSON.stringify({
    name: "Alice"
  })
})
.then(response => response.json())
.then(data => console.log(data));

Voorbeeld met Python requests

import requests

url = "https://api.genderapi.io/api"

payload = {
    "name": "Alice"
}

headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

response = requests.post(url, headers=headers, json=payload)

print(response.json())

Kiezen tussen de twee methodes

Beide authenticatiemethoden worden ondersteund op alle API-endpoints. Het gebruik van de Authorization-header is echter veiliger omdat je API Key dan niet in de body van het verzoek staat en zo niet per ongeluk gelogd kan worden.

Ongeacht de methode moet je altijd de header Content-Type instellen op application/json bij POST-aanvragen.