Kimlik Doğrulama (Authentication)

GenderAPI’ye yapılan tüm API istekleri kimlik doğrulaması gerektirir. İsteklerinizi iki şekilde doğrulayabilirsiniz:

  1. API Key’i POST gövdesinde key parametresi olarak göndermek
  2. API Key’i Authorization başlığında Bearer token kullanarak göndermek

1. API Key’i POST Gövdesinde Göndermek

Kimlik doğrulamanın en basit yolu, API Key’inizi key isimli bir alan olarak JSON formatında POST isteğinin gövdesine eklemektir.

Örneğin, “Alice” isminin cinsiyetini belirlemek için:


cURL Örneği

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

JavaScript fetch Örneği

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));

Python requests Örneği

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’i Authorization Başlığında Göndermek (Bearer Token)

Daha yüksek güvenlik ve daha temiz istekler için API Key’inizi Authorization başlığında Bearer şemasıyla gönderebilirsiniz. Bu yöntemle API Key’i JSON gövdesine eklemeniz gerekmez.

Bunun yerine, yalnızca giriş parametreleriniz (ör. name) POST gövdesine yazılır.

Örneğin, “Alice” isminin cinsiyetini belirlemek için:


cURL Örneği

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

JavaScript fetch Örneği

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));

Python requests Örneği

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())

İki Yöntem Arasında Seçim Yapmak

Her iki kimlik doğrulama yöntemi de tüm API endpoint’lerinde desteklenmektedir. Ancak Authorization başlığını kullanmak daha güvenlidir, çünkü API Key’iniz istek gövdesine dahil edilmez ve yanlışlıkla loglara düşmesi engellenir.

Hangi yöntemi kullanırsanız kullanın, POST istekleri gönderirken Content-Type başlığını mutlaka application/json olarak ayarlayın.