Methods that work with your account (balance, createOrder, statuses) use Bearer token authentication.
Register, open your personal cabinet and press "Create API token". The token is shown only once, store it safely.
Creating a new token disables the previous one. The services and categories lists are public and need no token.
Base URL: https://likes-shop.top/api. All responses are JSON. Errors have the form {"error": "message"}
with a matching HTTP status: 400 invalid parameters, 401 invalid or missing token, 402 insufficient balance,
404 not found, 422 quantity or amount out of the allowed range, 429 too many requests.
curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://likes-shop.top/api/balance
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://likes-shop.top/api/balance");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer YOUR_ACCESS_TOKEN"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Returns all available services with our prices, order limits and the category ID. This method is public, no token is required.
Prices are given per 1000 units in USD (rate) and in UAH at the current exchange rate (rate_uah).
Responses are cached for 5 minutes.
GET https://likes-shop.top/api/services
Optional parameters: category_id (return only one category), lang (ru, uk or en, default ru).
curl "https://likes-shop.top/api/services?lang=en"
curl "https://likes-shop.top/api/services?category_id=8"
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://likes-shop.top/api/services?lang=en");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response['services'][0]);
{
"currency": "USD",
"per": 1000,
"usd_to_uah": 41.5,
"count": 2172,
"services": [
{
"id": 9,
"category_id": 8,
"name": "TikTok - Live Likes ~ 1k-10k/days",
"rate": 0.5,
"rate_uah": 20.75,
"min": 50,
"max": 10000
}
]
}
rate is the price per 1000 in USD, rate_uah is the same price in UAH,
min and max are the allowed order quantity (max is null when there is no upper limit),
category_id matches the id from the categories list below.
Returns all categories with their IDs. Use id to match category_id of a service. This method is public.
GET https://likes-shop.top/api/categories
Optional parameter: lang (ru, uk or en, default ru).
curl "https://likes-shop.top/api/categories?lang=en"
{
"count": 575,
"categories": [
{ "id": 8, "parent_id": null, "name": "Tiktok" }
]
}
Every service has its own minimum and maximum quantity (min and max in the services list).
The quantity of an order must be within these limits, otherwise it is rejected.
Returns the balance of the authenticated user in USD. Orders placed through the API are paid from this balance.
GET https://likes-shop.top/api/balance
curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://likes-shop.top/api/balance
{
"balance": 25.5,
"currency": "USD"
}
Creates an order and pays it from your balance.
POST https://likes-shop.top/api/createOrder
Parameters: service (service id from the services list), link (http or https link to the profile or post),
quantity (must be between min and max of the service).
The minimum order amount is 5 UAH. The order price is rate / 1000 × quantity, rounded up to 0.01 USD.
Up to 30 orders per minute are accepted for one account.
curl -X POST -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d "service=9&link=https://example.com/post/1&quantity=1000" \
https://likes-shop.top/api/createOrder
$ch = curl_init();
$data = [
'service' => 9,
'link' => 'https://example.com/post/1',
'quantity' => 1000
];
curl_setopt($ch, CURLOPT_URL, "https://likes-shop.top/api/createOrder");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer YOUR_ACCESS_TOKEN",
"Content-Type: application/x-www-form-urlencoded"
]);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
{
"success": true,
"order": 1234,
"charge": 0.5,
"currency": "USD",
"balance": 25.0
}
// insufficient balance, HTTP 402
{
"error": "Insufficient balance",
"balance": 0.1,
"required": 0.5,
"currency": "USD"
}
Returns the status of your orders (up to 100 per request). Use the order numbers returned by createOrder.
POST https://likes-shop.top/api/statuses, parameter order_ids (array or comma separated list).
Statuses: new, paid, in_process, closed.
curl -X POST -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d "order_ids=1234,1235" \
https://likes-shop.top/api/statuses
{
"1234": {
"status": "in_process",
"status_code": 2,
"start_count": 1500,
"remains": 400,
"total": 20.75,
"currency": "UAH",
"created_at": "2026-10-06 12:00:00"
},
"1235": { "error": "Order not found" }
}