Sherk API
Один endpoint для поиска. Ключ из бота, ответ — JSON или YAML.
Старт
1. Откройте бота → Профиль → API → Создать ключ (skay-...).
2. Отправьте запрос:
curl "https://sherk.opik.net/api/v1/search?key=skay-KEY&query=@durov&type=username"
3. YAML вместо JSON:
curl "https://sherk.opik.net/api/v1/search?key=skay-KEY&query=@durov&type=username&format=yaml"
Подписка бота не открывает API. Нужен баланс запросов на аккаунте.
Авторизация
Ключ можно передать тремя способами (достаточно одного):
| Способ | Пример |
|---|---|
Query key | ?key=skay-... |
Заголовок X-Api-Key | X-Api-Key: skay-... |
| Bearer | Authorization: Bearer skay-... |
curl -H "X-Api-Key: skay-ваш_ключ" \ "https://sherk.opik.net/api/v1/search?query=+79991234567&type=phone&format=yaml"
Запрос
GET https://sherk.opik.net/api/v1/search
Только GET. Тело запроса не используется.
Параметры
| Параметр | Обяз. | Описание |
|---|---|---|
key | да* | Ключ skay-... (или заголовок) |
query | да | Строка поиска (username, телефон, ФИО…) |
type | да | Тип поиска — см. таблицу «Типы» |
format | нет | json (по умолчанию) или yaml / yml |
* ключ обязателен, но может быть в заголовке вместо query.
Формат ответа
По умолчанию — JSON (application/json). YAML включается так:
- параметр
format=yamlилиformat=yml - заголовок
Accept: application/yaml(илиapplication/x-yaml/text/yaml)
Content-Type ответа: application/yaml.
Примеры поиска
Замените skay-KEY на свой ключ. Ниже — готовые URL по типам.
Username Telegram
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=@durov&type=username https://sherk.opik.net/api/v1/search?key=skay-KEY&query=durov&type=username&format=yaml
Telegram ID
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=123456789&type=id https://sherk.opik.net/api/v1/search?key=skay-KEY&query=123456789&type=tgid&format=yaml
Телефон
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=%2B79991234567&type=phone https://sherk.opik.net/api/v1/search?key=skay-KEY&query=79991234567&type=phone&format=yaml https://sherk.opik.net/api/v1/search?key=skay-KEY&query=8+999+123-45-67&type=phone
ФИО
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=Иванов+Иван+Иванович&type=fio https://sherk.opik.net/api/v1/search?key=skay-KEY&query=Иванов+Иван+01.01.1990&type=fio&format=yaml https://sherk.opik.net/api/v1/search?key=skay-KEY&query=Петров+Пётр+15.03.1985&type=fio
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=ivanov@mail.ru&type=email https://sherk.opik.net/api/v1/search?key=skay-KEY&query=name%2Btag%40gmail.com&type=email&format=yaml
Авто (госномер)
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=А001АА77&type=car https://sherk.opik.net/api/v1/search?key=skay-KEY&query=A001AA77&type=car&format=yaml
VIN
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=XTA212130T1186583&type=vin https://sherk.opik.net/api/v1/search?key=skay-KEY&query=WVWZZZ1JZYW123456&type=vin&format=yaml
ВКонтакте
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=https://vk.com/id1&type=vk https://sherk.opik.net/api/v1/search?key=skay-KEY&query=vk.com/durov&type=vk&format=yaml https://sherk.opik.net/api/v1/search?key=skay-KEY&query=id1&type=vk
Паспорт
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=6516244966&type=passport https://sherk.opik.net/api/v1/search?key=skay-KEY&query=45+08+123456&type=passport&format=yaml
ИНН / СНИЛС / ОГРН
https://sherk.opik.net/api/v1/search?key=skay-KEY&query=383600465404&type=inn https://sherk.opik.net/api/v1/search?key=skay-KEY&query=11531187016&type=snils&format=yaml https://sherk.opik.net/api/v1/search?key=skay-KEY&query=1027700132195&type=ogrn
Код
cURL — JSON
curl -sG "https://sherk.opik.net/api/v1/search" \ --data-urlencode "key=skay-ваш_ключ" \ --data-urlencode "query=@durov" \ --data-urlencode "type=username"
cURL — YAML
curl -sG "https://sherk.opik.net/api/v1/search" \ -H "Accept: application/yaml" \ --data-urlencode "key=skay-ваш_ключ" \ --data-urlencode "query=+79991234567" \ --data-urlencode "type=phone"
Python — JSON
import requests
r = requests.get("https://sherk.opik.net/api/v1/search", params={
"key": "skay-ваш_ключ",
"query": "@durov",
"type": "username",
})
print(r.json())
Python — YAML
import requests
import yaml # pip install pyyaml
r = requests.get("https://sherk.opik.net/api/v1/search", params={
"key": "skay-ваш_ключ",
"query": "Иванов Иван 01.01.1990",
"type": "fio",
"format": "yaml",
})
print(r.text)
data = yaml.safe_load(r.text)
print(data.get("ok"), data.get("balance"))
JavaScript (fetch)
const url = new URL("https://sherk.opik.net/api/v1/search");
url.searchParams.set("query", "А001АА77");
url.searchParams.set("type", "car");
url.searchParams.set("format", "yaml");
const res = await fetch(url, {
headers: { "X-Api-Key": "skay-ваш_ключ" },
});
console.log(await res.text());
Ответ
JSON
{
"ok": true,
"balance": 47,
"daily_free": 0,
"data": {
"id": 123456789,
"username": "@durov",
"phone": "+79991234567",
"first_name": "Pavel"
}
}
YAML
ok: true balance: 47 daily_free: 0 data: id: 123456789 username: "@durov" phone: "+79991234567" first_name: Pavel
Ничего не найдено
ok: true balance: 47 data: null message: Не найдено
Ошибки
| Код | Значение |
|---|---|
| 200 | Успех (в т.ч. «не найдено») |
| 400 | Неверные параметры / type |
| 401 | Неверный или отсутствующий ключ |
| 402 | Недостаточно запросов для API |
| 403 | Ключ привязан к другому IP (сброс 50₽ / @sherkpro_bot) |
| 429 | Лимит 1 запрос/сек (или IP) |
| 502 | Ошибка поиска |
| 504 | Таймаут поиска |
Тело ошибки в том же формате, что и успешный ответ:
ok: false error: Неверный API ключ
Типы
| type | Что ищем | Пример query |
|---|---|---|
username | Ник Telegram | @durov / durov |
id | Числовой ID Telegram | 123456789 |
tgid | То же, что id | 123456789 |
phone | Телефон | +79991234567 |
fio | ФИО (± дата рождения) | Иванов Иван 01.01.1990 |
email | ivanov@mail.ru | |
car | Госномер | А001АА77 |
vin | VIN | XTA212130T1186583 |
vk | Профиль VK | https://vk.com/id1 |
passport | Паспорт РФ | 6516244966 |
inn | ИНН | 383600465404 |
snils | СНИЛС | 11531187016 |
ogrn | ОГРН | 1027700132195 |
Лимиты и защита
- 1 запрос в секунду на ключ
- 1 IP на ключ — закрепляется с первого запроса
- Сброс IP: 50₽ в боте (Профиль → API) или через @sherkpro_bot
- Списание с баланса запросов аккаунта
- Таймаут поиска ≈ 90 секунд