VKSHOP

API

Автозалив: один запрос выставляет один аккаунт или пачку. Пачка проверяется одновременно, как загрузка файлов на сайте. Маркет сам проверяет куки и отвечает, прошёл аккаунт или нет.

Токен

Запрос идёт на https://vkshop.top/api/accounts/sell (только HTTPS). Сессия сайта не подходит, нужен токен:

Authorization: Bearer <токен>

Цена в запросе — в рублях. Токен показывается один раз, потом его можно только отозвать.

Залив через API идёт только через ваши прокси из Настроек профиля. Без рабочих прокси API вернёт 429. Прокси маркета для API по умолчанию недоступны.

Войдите, чтобы создать токен.

Запрос

POST /api/accounts/sell нужен токен

Тело — JSON. Обязательны цена, происхождение и куки. Остальное можно не передавать: перепродажа и спам тогда будут «Нет».

priceЦена в рублях. Число или строка, например 100.
originПроисхождение: Брут, Авторег, Фишинг, Логи, Личный. Те же значения короткими кодами: brute, auto, fishing, stealer, personal.
cookiesТекст куков, как в форме продажи. Netscape или JSON. Чтобы залить пачку, передайте массив таких текстов: проверка идёт одновременно, до 500 аккаунтов, как при загрузке файлов.
is_reselltrue или false. Можно вместо этого передать resale: Да или Нет.
was_used_in_servicestrue или false. Можно вместо этого передать spam: Да или Нет.
markКороткая метка продавца, до 80 символов. В ответ не попадают сами куки.
{
  "price": 100,
  "origin": "Логи",
  "is_resell": false,
  "was_used_in_services": false,
  "mark": "cookie-1",
  "cookies": "# Netscape HTTP Cookie File\n..."
}

Пачка — тот же адрес и те же цена и происхождение на все аккаунты. В cookies массив. Ответ 200, внутри items результат каждого аккаунта в том же порядке. result у элемента: valid, invalid, duplicate или error. Проверка идёт через ваши прокси из Настроек.

{
  "price": 100,
  "origin": "Логи",
  "cookies": [
    "# Netscape HTTP Cookie File\n...",
    "# Netscape HTTP Cookie File\n..."
  ]
}

Ответ

Проверка выполняется в этом же запросе. Отдельного ожидания нет.

200 — аккаунт валиден и выставлен. result равен valid, status — active.

{
  "ok": true,
  "message": "Объявление сохранено",
  "data": {
    "listing_id": 120,
    "status": "active",
    "status_reason": null,
    "result": "valid",
    "origin": "Логи",
    "mark": "cookie-1"
  }
}

422 — аккаунт не выставлен. В message причина, в data.result — invalid или duplicate.

{
  "ok": false,
  "message": "не удалось получить web_token",
  "data": {
    "status": "invalid",
    "status_reason": "invalid_credentials",
    "result": "invalid"
  }
}

401 — нет токена или он отозван. 503 — проверка не выполнилась, аккаунт не выставлен и не отклонён. Этот запрос можно повторить.

Результат проверки

valid200. Аккаунт в продаже, status: active.
invalid422. message — текст проверки. status_reason: invalid, invalid_credentials, blocked или deactivated.
duplicate422. Текст один из: «Уже продается», «Продается вами», «Был ранее продан вами», «Был продан менее 14 дней назад». status_reason: already_selling, already_yours, sold_by_you, sold_recently.
error503. Сеть или сбой проверки. status_reason: manual. Лот не создаётся.

Получить аккаунты

GET /api/accounts токен не обязателен

Список аккаунтов в продаже. Фильтры те же, что на витрине. Токен нужен только для «Продавцы», «Продается мной» и «Продавался мной». Куки в ответ не входят.

pageСтраница, с 1.
per_pageСколько на странице, от 1 до 50. По умолчанию 20.
min, maxЦена в рублях, от и до.
sortnew — сначала новые, price_asc — дешевле, price_desc — дороже, popular — популярность.
originПроисхождение: Брут, Авторег, Фишинг, Логи, Личный. Можно повторить параметр и передать несколько.
resaleДа или Нет. Перепродажа.
spamДа или Нет. После подписок или спама.
sexМужской или Женский.
relationСемейное положение: 1 не женат / не замужем, 2 есть подруга / друг, 3 помолвлен, 4 женат / замужем, 5 всё сложно, 6 в активном поиске, 7 влюблён, 8 в гражданском браке.
countryСтрана профиля. Можно повторить параметр.
cityГород. Регистр и «ё» не важны: могилев найдёт «Могилёв».
age_min, age_maxВозраст, от и до.
friends_min, friends_maxДрузья.
followers_min, followers_maxПодписчики.
dialogs_min, dialogs_maxДиалоги.
groups_min, groups_maxГруппы.
reg_from, reg_toДата регистрации, ГГГГ-ММ-ДД.
phoneДа или Нет. Телефон привязан.
phone_countryСтрана телефона. Можно повторить параметр.
twofaДа или Нет. Двухфакторная аутентификация на аккаунте.
seller_idТолько аккаунты этого продавца.
sellersС токеном: favorites — продавцы из избранного.
sellingС токеном: Да или Нет. Продается мной.
wasС токеном: Да или Нет. Продавался мной.
GET /api/accounts?city=Москва&sex=Мужской&age_min=18&age_max=30&sort=new

price в ответе — копейки, price_rub — цена как на витрине. profile — поля карточки. vk_url пустой, если продавец скрыл ссылку. saved — аккаунт в избранном у владельца токена.

{
  "ok": true,
  "data": {
    "items": [
      {
        "id": 120,
        "price": 10000,
        "price_rub": "100 ₽",
        "status": "active",
        "created_at": "2026-10-18T12:00:00+00:00",
        "seller": {"id": 4, "username": "seller"},
        "facts": {"origin": "Логи", "resale": "Нет", "spam": "Нет"},
        "profile": {
          "sex": "Мужской",
          "age": 24,
          "country": "Россия",
          "city": "Москва",
          "friends": 12
        },
        "vk_url": "https://vk.ru/id1",
        "vk_hidden": false,
        "saved": false,
        "chips": ["Мужской", "Страна: Россия", "Город: Москва"]
      }
    ],
    "page": 1,
    "pages": 1,
    "total": 1
  }
}

Получить аккаунт

GET /api/accounts/{id} токен не обязателен

Один аккаунт. Тело ответа — тот же объект, что элемент в списке, прямо в data. Куки и файл аккаунта здесь не отдаются: их видит покупатель в заказе после покупки.

404 — объявления нет или оно скрыто.

{
  "ok": true,
  "data": {
    "id": 120,
    "price": 10000,
    "price_rub": "100 ₽",
    "status": "active",
    "created_at": "2026-10-18T12:00:00+00:00",
    "seller": {"id": 4, "username": "seller"},
    "facts": {"origin": "Логи", "resale": "Нет", "spam": "Нет"},
    "profile": {
      "sex": "Мужской",
      "age": 24,
      "country": "Россия",
      "city": "Москва"
    },
    "vk_url": "",
    "vk_hidden": false,
    "saved": false,
    "chips": ["Мужской", "Страна: Россия", "Город: Москва"]
  }
}
Проверить на бан VK Знакомства
Покупка В процессе
0 из 0 Только что

Загрузка…

Соберите строку сами. Текст вокруг подстановки останется как есть: ::{base64_netscape} поставит :: перед BASE64 каждого аккаунта. Одна подстановка {cookie_netscape} скачает файл как обычный Netscape, {cookie_json} — как JSON, {base64_netscape} — как BASE64.