Моля потвърдете имейл адреса си. За да го потвърдите, проверете пощата си ({{hc.user.email}}) за изпратен имейл от нас. Натиснете тук за изпращане на нов имейл за потвърждение.
post_add
Моля изчакайте...

API документация

В този раздел можете да научите основите как да изпращате и получавате данни от nekorekten.com и как да внедрите API, платформи, продукти и SDK според нуждите на вашето приложение. Информацията по-долу е предназначена единствено за разработчици и е с технически характер. Ако имате въпроси относно API-то на nekorekten.com, моля свържете се с нас чрез нашата форма за контакт email

Задължително, когато предоставяте услугата на трети лица, моля да добавите в секцията, където се показват или изпращат сигнали към и от нас, да посочите ясно, че са от нашата платформа (например заглавие на секцията с линк към платформата).

Моля проверете и/или добавете във вашата политика за поверителност, в примерна секция "С кого споделяме вашите данни?", нашата платформа. По този начин всеки клиент, който прави поръчки, изрично се е съгласил, че можете да споделите данните му с нас при злоупотреби.

Примерен текст:

  • Доставчици на услуги като Nekorekten.com, които защитават търговци и клиенти от некоректни практики, измами и други.

API адрес

https://api.nekorekten.com

Максимум 10 заявки в минута по подразбиране! Актуалният лимит за вашия план можете да видите чрез /api/v1/api-keys/current/usage.

↑ Към съдържанието

Автентикация

Хедър:
Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx
Можете да генерирате API ключове от вашия профил. За повече информация как да получите API ключ, моля прочетете тази статия: api API ключове

IP whitelist: всеки API ключ работи само от IP адресите, зададени при създаването му (или редакцията му чрез /api/v1/api-keys). Заявки от всеки друг IP адрес получават отговор 403.

↑ Към съдържанието

Формат на отговорите и кодове за грешка

Всички отговори са във формат JSON. При грешка HTTP кодът е различен от 200, а в полето message има описание на проблема:

{
    "message": "Невалиден телефон",
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 400 }
}
Примерен отговор при неподдържан HTTP метод (405):
{
    "message": "Методът не се поддържа за този адрес.",
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 405 }
}
Код Описание
400 Невалидна заявка – липсващи или невалидни параметри (телефон, имейл, URL, град, файл, непотвърден профил и др.). Причината е описана в message.
401 Липсва, невалиден или неактивен API ключ (хедър Api-Key).
403 Заявката е от IP адрес, който не е в списъка с разрешени IP адреси на ключа.
405 Методът не се поддържа за този адрес.
429 Надвишен е лимитът на заявките в минута или лимитът за търсене за последните 24 часа според вашия абонаментен план. Опитайте отново по-късно.
↑ Към съдържанието

Операции със сигнали

GET https://api.nekorekten.com/api/v1/reports
Услуга за извличане (търсене) на сигнали по критерии.

Параметри в адреса (query):
Поле Тип Задължително Описание
phone string Не* Търсене по телефонен номер
email string Не* Търсене по имейл
name string Не* Търсене по име
siteUrl string Не* Търсене по сайт
searchMode string Не (по подразбиране: 'all') Възможни стойности:
  • 'all' - търсене по всички подадени филтри.
  • 'one-of' - търсене по някой от подадените филтри.
page integer Не (по подразбиране: 1) Номер на страницата.
itemsPerPage integer Не (по подразбиране: 20) Брой елементи на страница. Минимум 1, максимум 100.
*Нито един от филтрите не е задължителен сам по себе си, но за успешна заявка трябва да е подаден поне един.
Маскиране на данни: в резултатите личните данни (phone, email, firstName, lastName, facebookUrl) са частично маскирани. Данните за съответното поле не се маскират само ако сте търсили по него (напр. при търсене по phone телефонът се връща в пълен вид). Сигналите, създадени от вашия акаунт, се връщат без маскиране. Изображенията към сигнали, които още не са прегледани от модератор, се връщат със заместващо id и name със стойност review.
Примерна заявка:
curl --location --request GET 'https://api.nekorekten.com/api/v1/reports?phone=359888888888' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": null,
    "items": [
        {
            "id": "0obgyGbp1Ms",
            "firstName": "Ив**",
            "lastName": "Ив****",
            "email": "ivan.p*****@example.com",
            "phone": "+359888888888",
            "text": "Не плати поръчката и не вдига телефона.",
            "facebookUrl": null,
            "siteUrl": "example.com/profile/123",
            "siteUrlMapped": "http://example.com/profile/123",
            "user": {
                "id": "k3Jd9aWq2Lp",
                "firstName": "Петър",
                "lastName": "Петров",
                "email": "se****@shop.bg"
            },
            "city": {
                "id": 1,
                "name": "София",
                "region": "София-град",
                "postCode": 1000,
                "phoneCode": 2
            },
            "parent": null,
            "children": [],
            "categories": [],
            "files": [
                {
                    "file": { "id": "Xy7bN2mQ4Ta", "name": "chat.webp", "mimeType": "image/webp" }
                }
            ],
            "createDate": "2026-10-01T10:15:00+03:00",
            "views": 12,
            "liked": 0,
            "visibleOnlyForCreator": false,
            "isArchived": false
        }
    ],
    "count": 1,
    "currentPage": 1,
    "itemsPerPage": 20,
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
POST https://api.nekorekten.com/api/v1/reports
Услуга за създаване (добавяне) на нов сигнал.

Параметри в тялото на заявката:
Поле Тип Задължително Описание
text string Да Описание на сигнала – кратък текст какво, къде и как е станало.
phone string Не* Телефонен номер на лицето – използва се като филтър за търсене. Номерът трябва да е с код на държавата, като един низ (напр. 359888888888 или +359888888888). Български номера във формат 08XXXXXXXX / 09XXXXXXXX се приемат и без код. Интервалите се игнорират, номерът се валидира и се записва в международен формат (E.164).
email string Не* Имейл на лицето – използва се като филтър за търсене.
siteUrl string Не* URL на сайта – използва се като филтър за търсене.
facebookUrl string Не* Facebook URL на лицето – използва се като филтър за търсене.
firstName string Не Собствено име на лицето – използва се като филтър за търсене.
lastName string Не Фамилия на лицето – използва се като филтър за търсене.
files array Не Масив с ID-та на файлове.
cityID int Не Град на лицето. Списък можете да получите от /api/v1/cities.
*Нито едно от тези полета не е задължително само по себе си, но поне едно от тях трябва да е подадено.
Примерна заявка:
curl --location --request POST 'https://api.nekorekten.com/api/v1/reports' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
    --header 'Content-Type: application/json' \
    --data-raw '{ "text": "Не плати поръчката", "firstName": "Иван", "lastName": "Иванов", "phone": "359888888888" }'
Примерен отговор:
{
    "message": "Сигналът е изпратен успешно.",
    "details": {
        "id": "0obgyGbp1Ms",
        "firstName": "Иван",
        "lastName": "Иванов",
        "email": null,
        "phone": "+359888888888",
        "facebookUrl": null,
        "siteUrl": null,
        "text": "Не плати поръчката",
        "user": {
            "id": "k3Jd9aWq2Lp",
            "firstName": "Петър",
            "lastName": "Петров",
            "email": "[email protected]"
        },
        "city": null,
        "parent": null,
        "categories": [],
        "files": [],
        "children": [],
        "createDate": "2026-10-06T12:00:00+03:00",
        "views": 0,
        "liked": 0,
        "isView": false,
        "visibleOnlyForCreator": false
    },
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
PATCH https://api.nekorekten.com/api/v1/reports/{id}
Услуга за редактиране на сигнал.

Параметри в тялото на заявката:
Поле Тип Задължително Описание
text string Не Описание на сигнала – кратък текст какво, къде и как е станало.
phone string Не Телефонен номер на лицето – използва се като филтър за търсене. Номерът трябва да е с код на държавата, като един низ (напр. 359888888888 или +359888888888). Български номера във формат 08XXXXXXXX / 09XXXXXXXX се приемат и без код. Интервалите се игнорират, номерът се валидира и се записва в международен формат (E.164).
email string Не Имейл на лицето – използва се като филтър за търсене.
siteUrl string Не URL на сайта – използва се като филтър за търсене.
facebookUrl string Не Facebook URL на лицето – използва се като филтър за търсене.
firstName string Не Собствено име на лицето – използва се като филтър за търсене.
lastName string Не Фамилия на лицето – използва се като филтър за търсене.
files array Не Масив с ID-та на файлове.
cityID int Не Град на лицето. Списък можете да получите от /api/v1/cities.
Примерна заявка:
curl --location --request PATCH 'https://api.nekorekten.com/api/v1/reports/XXXXXXX' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
    --header 'Content-Type: application/json' \
    --data-raw '{ "firstName": "Иван", "lastName": "Иванов", "phone": "359888888888" }'
Примерен отговор:
{
    "message": "Сигналът е редактиран успешно",
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
DELETE https://api.nekorekten.com/api/v1/reports/{id}
Услуга за изтриване на сигнал.

Примерна заявка:
curl --location --request DELETE 'https://api.nekorekten.com/api/v1/reports/0obgyGbp1Ms' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": "Репортът е изтрит успешно",
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
↑ Към съдържанието

Файлове

POST https://api.nekorekten.com/api/v1/files
Услуга за добавяне (качване) на файлове. След успешно качване услугата връща ID-та на файловете, които могат да се използват при създаване на нови сигнали.

Параметри в тялото на заявката:
Поле Тип Задължително Описание
files[] file Да Файловете могат да са изображения с поддържани разширения: "jpeg", "jpg", "png", "webp". Изображенията се оразмеряват до максимум 1980px по по-дългата страна, метаданните им се премахват и се конвертират във формат WebP. Максималният размер на един файл е 25 MB. Максималният брой изображения към един сигнал зависи от абонаментния план (maxReportImages).
Примерна заявка:
curl --location --request POST 'https://api.nekorekten.com/api/v1/files' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
    --form 'files[]=@"/path/to/file/chat.jpg"'
Примерен отговор:
{
    "message": null,
    "items": [
        {
            "id": "Xy7bN2mQ4Ta",
            "name": "chat.webp",
            "md5": "9e107d9d372bb6826bd81d3542a419d6",
            "size": 48213,
            "mimeType": "image/webp",
            "modifications": null
        }
    ],
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
↑ Към съдържанието

Градове

GET https://api.nekorekten.com/api/v1/cities
Услуга за получаване на списък с градове.

Примерна заявка:
curl --location --request GET 'https://api.nekorekten.com/api/v1/cities' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": null,
    "items": [
        {
            "id": 1,
            "name": "София",
            "region": "София-град",
            "postCode": 1000,
            "phoneCode": 2
        }
    ],
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
↑ Към съдържанието

API ключове

GET https://api.nekorekten.com/api/v1/api-keys
Връща всички API ключове на автентикирания потребител.

Примерна заявка:
curl --location --request GET 'https://api.nekorekten.com/api/v1/api-keys' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": null,
    "items": [
        {
            "id": "Qw8eR5tY2Uo",
            "name": "My key",
            "key": "0123456789abcdef0123456789abcdef01234567",
            "ips": ["192.168.1.1"],
            "createDate": "2026-10-01 10:00:00"
        }
    ],
    "count": 1,
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
POST https://api.nekorekten.com/api/v1/api-keys
Създава нов API ключ за автентикирания потребител. Отговорът съдържа само данните за ключа, без данни за потребителя.

Параметри в тялото на заявката:
Поле Тип Задължително Описание
name string Да Име (етикет) на API ключа.
ips string Да Списък с разрешени IP адреси (IPv4/IPv6) или CIDR диапазони (напр. 173.245.48.0/20), разделени със запетая или нов ред. Заявки от други IP адреси се отхвърлят с код 403. Стойността * позволява всички IP адреси (не се препоръчва; позволена е само за един ключ).
Примерна заявка:
curl --location --request POST 'https://api.nekorekten.com/api/v1/api-keys' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
    --header 'Content-Type: application/json' \
    --data-raw '{ "name": "My key", "ips": "192.168.1.1" }'
Примерен отговор:
{
    "message": "Ключът е създаден успешно",
    "details": {
        "id": 15,
        "name": "My key",
        "key": "0123456789abcdef0123456789abcdef01234567",
        "createDate": "2026-10-06T12:00:00+03:00",
        "ips": ["192.168.1.1"]
    },
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
PATCH https://api.nekorekten.com/api/v1/api-keys/{id}
Редактира съществуващ API ключ.

Параметри в тялото на заявката:
Поле Тип Задължително Описание
name string Не Име (етикет) на API ключа.
ips string Не Списък с разрешени IP адреси (IPv4/IPv6) или CIDR диапазони (напр. 173.245.48.0/20), разделени със запетая или нов ред. Заявки от други IP адреси се отхвърлят с код 403. Стойността * позволява всички IP адреси (не се препоръчва; позволена е само за един ключ).
Примерна заявка:
curl --location --request PATCH 'https://api.nekorekten.com/api/v1/api-keys/XXXXXXX' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
    --header 'Content-Type: application/json' \
    --data-raw '{ "name": "Updated key" }'
Примерен отговор:
{
    "message": "The API key has been edited successfully",
    "details": {
        "id": "XXXXXXX"
    },
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
DELETE https://api.nekorekten.com/api/v1/api-keys/{id}
Изтрива API ключ.

Примерна заявка:
curl --location --request DELETE 'https://api.nekorekten.com/api/v1/api-keys/XXXXXXX' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": "The api key has been deleted successfully",
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
GET https://api.nekorekten.com/api/v1/api-keys/{id}/requests
Връща странициран списък със заявките, направени с дадения API ключ. Максималният период е 7 дни.

Параметри в адреса (query):
Поле Тип Задължително Описание
fromDate string Да Начална дата/час в UTC (напр. 2026-04-29 00:00:00). Не може да е по-стара от 31 дни.
toDate string Да Крайна дата/час в UTC (напр. 2026-04-29 23:59:59). Максимум 7 дни след fromDate.
responseCode integer Не Филтър по HTTP код на отговора (напр. 200, 429).
page integer Не (по подразбиране: 1) Номер на страницата.
itemsPerPage integer Не (по подразбиране: 20) Брой елементи на страница.
Примерна заявка:
curl --location --request GET 'https://api.nekorekten.com/api/v1/api-keys/XXXXXXX/requests?fromDate=2026-04-29+00:00:00&toDate=2026-04-29+23:59:59' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": null,
    "items": [
        {
            "id": "Lk4jH7gF1Ds",
            "url": "/api/v1/reports",
            "httpResponseCode": 400,
            "ip": "192.168.1.1",
            "createDate": "2026-04-29 10:15:00",
            "getParameters": [],
            "postParameters": [],
            "response": {
                "message": "Моля посочете критерии за търсене.",
                "server": { "date": "2026-04-29 10:15:00", "httpCode": 400 }
            }
        }
    ],
    "count": 1,
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
GET https://api.nekorekten.com/api/v1/api-keys/current/usage
Връща текущото използване и лимитите на абонаментния план за API ключа, с който е автентикирана заявката.

Полета в отговора:
Поле Тип Описание
plan.name string Име на активния абонаментен план.
apiRequests.used integer Брой API заявки за последната минута.
apiRequests.limit integer Максимален брой API заявки в минута.
searchRequests.used integer Брой заявки за търсене за последните 24 часа.
searchRequests.limit integer Максимален брой заявки за търсене на ден.
maxReportImages integer Максимален брой изображения към един сигнал.
searchPeriod integer Период на историята на търсенията в години.
Примерна заявка:
curl --location --request GET 'https://api.nekorekten.com/api/v1/api-keys/current/usage' \
    --header 'Api-Key: xxxxxxxxxxxxxxxxxxxxxxxx'
Примерен отговор:
{
    "message": null,
    "items": {
        "plan": { "name": "Безплатен" },
        "apiRequests": { "used": 2, "limit": 10, "period": "minute" },
        "searchRequests": { "used": 15, "limit": 100, "period": "day" },
        "maxReportImages": 10,
        "searchPeriod": 2
    },
    "server": { "date": "2026-10-06 12:00:00", "httpCode": 200 }
}
↑ Към съдържанието