SMMPanel offers a free SMM panel API (v2) that lets resellers, developers, and automation tools place orders, check status, manage balance, and request refills programmatically. The API is compatible with standard SMM panel software and reseller tools, uses a single endpoint, and needs only your API key to start.
Base URL and authentication
Every request goes to one endpoint and is authenticated with your personal API key:
https://smmpanel.co/api/v2
Your API key is available in your account dashboard under the API section. Pass it as the key parameter on every request. Both GET and POST are accepted, and parameters can be sent as URL query strings, form-encoded bodies, or JSON.
GET https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=balance POST https://smmpanel.co/api/v2 (key, action, ... in body)
All money values are returned in USD. Rates are per 1000 units.
Available actions
| Action | What it does |
| services | Get the full service list with live rates |
| add | Place a new order |
| status | Check the status of one or more orders |
| balance | Get your current account balance |
| cancel | Request cancellation of one or more orders |
| refill | Request a refill on completed orders |
| refill_status | Check the status of a refill request |
Get the service list
Returns every active service with your live pricing, limits, and capabilities.
Parameters: key, action=services
GET https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=services
Response is an array of services, each with these fields:
| Field | Meaning |
| service | Service ID to use when placing orders |
| name | Service name |
| type | Service type (default, custom_comments, etc.) |
| category | Category the service belongs to |
| rate | Price per 1000, in USD |
| min | Minimum order quantity |
| max | Maximum order quantity |
| dripfeed | Whether drip-feed is supported |
| refill | Whether refill is available |
| cancel | Whether cancellation is supported |
Place an order
Parameters: key, action=add, service, link, quantity
POST https://smmpanel.co/api/v2 key=YOUR_API_KEY&action=add&service=101&link=https://instagram.com/yourhandle&quantity=1000
Success response:
{ "order": "123456" }
The returned order value is your order number. Use it for status, cancel, and refill calls. If a service has drip-feed or extra options enabled, pass the matching parameters (runs, interval, comments) alongside the order.
Check order status
Works for a single order or many at once. For multiple orders, pass a comma-separated list in the orders parameter.
Single order — parameters: key, action=status, order
GET https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=status&order=123456
{
"charge": "1.50000000",
"start_count": "2450",
"status": "In progress",
"remains": "250",
"currency": "USD"
}Multiple orders — parameters: key, action=status, orders=123456,123457
The response is keyed by order ID, each holding the same status object. Possible status values: Pending, Awaiting, In progress, Processing, Completed, Partial, Canceled, Fail, Error.
Check your balance
Parameters: key, action=balance
GET https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=balance
{ "balance": "48.75000000", "currency": "USD" }
Cancel orders
Requests cancellation on orders that support it. Accepts one order or a comma-separated list.
Parameters: key, action=cancel, orders=123456,123457
A single cancel returns { "cancel": 1 } on success. A multi-order cancel returns a result keyed by order ID, where cancel: 1 means accepted and cancel: 2 means it could not be canceled.
Refill orders
Requests a refill on completed or partial orders where refill is enabled on the service.
Parameters: key, action=refill, orders=123456,123457
GET https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=refill&order=123456
{ "refill": "789" }
The returned refill value is your refill ID. Track it with the refill_status action:
GET https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=refill_status&refill=789
Refill status values: Pending, Awaiting, In progress, Completed, Rejected, Canceled. For a full walkthrough of how refills and retention work, see our refill guarantee guide.
A complete example
Placing an order and checking it, using curl:
curl "https://smmpanel.co/api/v2" \ -d "key=YOUR_API_KEY" \ -d "action=add" \ -d "service=101" \ -d "link=https://instagram.com/yourhandle" \ -d "quantity=1000"curl "https://smmpanel.co/api/v2?key=YOUR_API_KEY&action=status&order=123456"
The same calls in PHP:
$post = http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'add',
'service' => 101,
'link' => 'https://instagram.com/yourhandle',
'quantity' => 1000,
]);
$res = file_get_contents('https://smmpanel.co/api/v2', false, stream_context_create([
'http' => ['method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => $post],
]));
$order = json_decode($res, true);Build on a stable, compatible API
The v2 API follows the standard SMM panel format, so reseller dashboards and third-party tools that already speak this format work with SMMPanel out of the box. You get live pricing per key, programmatic ordering, automated status polling, and self-serve refills — everything needed to run a panel, a bot, or a reseller business on top of our catalog. Create your account to get an API key and start building.
Frequently asked questions
Does SMMPanel have an API?
Yes. SMMPanel provides a free v2 API at https://smmpanel.co/api/v2 that supports placing orders, checking status, managing balance, canceling, and refilling. It is included with every account at no extra cost.
What is the API endpoint and how do I authenticate?
The single endpoint is https://smmpanel.co/api/v2. Authenticate by passing your personal API key as the key parameter on each request. Your key is in your dashboard under the API section, and both GET and POST are supported.
Is the SMMPanel API compatible with reseller panels and tools?
Yes. The API uses the standard SMM panel v2 format, so reseller child panels and third-party automation tools built for that format connect without custom work. Actions, parameters, and response fields match the common specification.
Can I request refills and cancellations through the API?
Yes. The refill action requests a refill on completed or partial orders where refill is enabled, and refill_status tracks it. The cancel action requests cancellation on supported orders. Both accept single orders or comma-separated lists for batch operations.
Is the API free to use?
Yes. API access is free with every SMMPanel account. You only pay for the orders you place, at the same live rates shown in your dashboard, and your per-key pricing is applied automatically to API responses.