API Генериране на ЕГН

Endpoint

Parameters

Име Тип Задължително Описание
day integer 0-31 Не Ден от дата на раждане, 0 за случаен
month integer 0-12 Не Месец от дата на раждане, 0 за случаен
year integer Не Година от 1800 до 2099; 0 избира случайна година от 1900 до 2010
sex integer Не Пол, 0 - случаен, 1 - мъж, 2 - жена
region integer Не Регион на раждане
quantity integer 0-100 Да Бройка генерирани ЕГН
Accept header Препоръчително application/json

Невъзможна дата или брой над наличните уникални комбинации връща HTTP 422. При успех се връща точно заявеният брой различни ЕГН като текстови низове.

Регион на раждане

Стойност (value) Регион JSON
0 Случаен
43 Благоевград
93 Бургас
139 Варна
169 Велико Търново
183 Видин
217 Враца
233 Габрово
281 Кърджали
301 Кюстендил
319 Ловеч
341 Монтана
377 Пазарджик
395 Перник
435 Плевен
501 Пловдив
527 Разград
555 Русе
575 Силистра
601 Сливен
623 Смолян
721 София - град
751 София - окръг
789 Стара Загора
821 Добрич (Толбухин)
843 Търговище
871 Хасково
903 Шумен
925 Ямбол
999 Друг/Неизвестен

Authorization

Не е необходима регистрация или токен.

Лимит: до 60 заявки на минута от един IP адрес.

Приложението не записва параметрите и генерираните ЕГН в API логове. Вижте политиката за поверителност.

Request

POST /api/egn/generate HTTP/1.1
Host: egn.bg
Accept: application/json
Content-Type: application/x-www-form-urlencoded
        
day=12&month=5&year=1980&sex=1®ion=555&quantity=5

Response

Генерирани ЕГН и адрес за проверка:

{
  "valid": true,
  "result": [
    {
      "egn": 5406254557,
      "url": "https://egn.bg/egn/validirane/5406254557"
    },
    {
      "egn": 5003028823,
      "url": "https://egn.bg/egn/validirane/5003028823"
    },
    {
      "egn": 4503186091,
      "url": "https://egn.bg/egn/validirane/4503186091"
    },
    {
      "egn": "0208279460",
      "url": "https://egn.bg/egn/validirane/0208279460"
    },
    {
      "egn": 9612085810,
      "url": "https://egn.bg/egn/validirane/9612085810"
    }
  ]
}
Параметър Тип Описание
valid boolean Показва дали ЕГН е валидно
result.egn integer Генерирано ЕГН
result.url string Url адрес за проверка
result.compiled html Човешко описание

Грешен формат :

{
  "valid": false,
  "errors": {
    "egn": [
      "ЕГН трябва да съдържа точно 10 цифри."
    ]
  }
}
Параметър Тип Описание
valid boolean Винаги false
errors.egn array Списък с грешки

Примери

cURL

curl -X POST https://egn.bg/api/egn/generate \
  -H "Accept: application/json" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "day=12&month=5&year=1980&sex=1&region=22&quantity=5"

Python (requests)

import requests

response = requests.post(
    "https://egn.bg/api/egn/generate",
    headers={"Accept": "application/json"},
    data={
        "day": 12,
        "month": 5,
        "year": 1980,
        "sex": 1,
        "region": 22,
        "quantity": 5
    }
)

print(response.json())

JavaScript (fetch)

fetch("https://egn.bg/api/egn/generate", {
  method: "POST",
  headers: {
    "Accept": "application/json",
    "Content-Type": "application/x-www-form-urlencoded"
  },
  body: new URLSearchParams({
    day: 12,
    month: 5,
    year: 1980,
    sex: 1,
    region: 22,
    quantity: 5
  })
})
.then(res => res.json())
.then(data => console.log(data));

Vue.js

this.$http.post(
  'https://egn.bg/api/egn/generate',
  new URLSearchParams({
    day: 12,
    month: 5,
    year: 1980,
    sex: 1,
    region: 22,
    quantity: 5
  }),
  {
    headers: { Accept: 'application/json' }
  }
).then(res => {
  console.log(res.data);
});

PHP (cURL)

<?php
$ch = curl_init("https://egn.bg/api/egn/generate");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'day' => 12,
        'month' => 5,
        'year' => 1980,
        'sex' => 1,
        'region' => 22,
        'quantity' => 5
    ]),
    CURLOPT_HTTPHEADER => ["Accept: application/json"]
]);
$response = curl_exec($ch);
echo $response;
?>