با یک کلید API، همان فهرست کشورها و نامهایی را که در سایت میبینید بهصورت JSON دریافت کنید. این API هم مثل خود سایت نمایشی است: همهٔ مقادیر تصادفی و ساختگیاند و فقط ۱۰۰ ردیف اول هر فهرست مقدار دارد.
…
همه درخواستها به این آدرس فرستاده میشوند:
http://localhost:8000/v1کلید را در هدر زیر بفرستید: X-API-Key. Authorization: Bearer هم پذیرفته میشود.
X-API-Key: YOUR_API_KEYکلید را فقط در سمت سرور نگه دارید و در کد سمت مرورگر یا مخزن عمومی قرار ندهید.
/v1/schemaدستهها و عنوان فیلدهای قفلشده، برای ساختن ستونهای جدول در سمت خودتان.
/v1/countriesفهرست همه کشورها با جمعیت تقریبی و اینکه فایل نام دارند یا نه.
/v1/countries/{code}جزئیات یک کشور: ملیتها و تعداد ردیف قابل نمایش هر ملیت.
| پارامتر | توضیح |
|---|---|
code | کد دوحرفی ISO کشور، مثل DE |
/v1/countries/{code}/peopleفهرست صفحهبندیشده نامها (حداکثر ۱ میلیون ردیف). ۱۰۰ ردیف اول هر فهرست در fields مقدار نمونهٔ تصادفی دارد؛ بقیه locked=true و fields=null است.
| پارامتر | توضیح |
|---|---|
nationality | اختیاری؛ کلید ملیت مثل german. پیشفرض: بزرگترین ملیت کشور |
page | شماره صفحه، از ۱ |
page_size | تعداد ردیف؛ حداکثر ۵۰ در Sandbox |
/v1/countries/{code}/people/{rank}/search-history| پارامتر | توضیح |
|---|---|
rank | شمارهٔ ردیف فرد |
nationality | کلید ملیت (اختیاری) |
/v1/usageمصرف امروز و سهمیه باقیمانده کلید.
curl "http://localhost:8000/v1/countries/DE/people?page=1&page_size=20" \
-H "X-API-Key: YOUR_API_KEY"{
"country": "DE",
"nationality": "german",
"source": "names",
"page": 1,
"page_size": 20,
"total": 1000000,
"pages": 50000,
"preview_rows": 100,
"items": [
{
"rank": 1,
"first_name": "Lukas",
"last_name": "Müller",
"nationality": "آلمانی",
"preview": true,
"fields": {
"identity.1": "1990-04-12",
"contact.0": "+49 155 0100123",
"location.2": "Berlin",
"medical.0": "A+"
}
},
{
"rank": 250,
"first_name": "Mia",
"last_name": "Schäfer",
"nationality": "آلمانی",
"preview": false,
"fields": {}
}
]
}مستندات تعاملی (Swagger) هم در دسترس است: http://localhost:8000/docs
کلید هر فیلد در آبجکت fields ثابت است (مثل identity.1) و با تغییر عنوان در پنل مدیریت عوض نمیشود. در پلن رایگان فقط ۱۰۰ ردیف اول این مقادیر را دارند و همه ساختگیاند.
خطاها با کد وضعیت HTTP و بدنهٔ {"detail": {"code": "...", "message": "..."}} برمیگردند. هر پاسخ موفق هدرهای X-RateLimit-Limit و X-RateLimit-Remaining دارد.
| وضعیت | کد | معنی |
|---|---|---|
| 401 | missing_api_key | کلید ارسال نشده است. |
| 401 | invalid_api_key | کلید نامعتبر است. |
| 403 | revoked_api_key | کلید باطل شده است. |
| 404 | — | کشور یا ملیت پیدا نشد. |
| 429 | rate_limited | بیش از ۶۰ درخواست در دقیقه. هدر Retry-After زمان انتظار را میگوید. |
| 429 | daily_quota_exceeded | سهمیه روزانه تمام شده است. |
این API بخشی از یک پروژهٔ نمایشی است؛ کلید Live قابل خرید نیست و هیچ پرداختی انجام نمیشود.