API documentation

Our API follows the widely used SMM panel API v2 format, so existing panel scripts and client libraries work without changes.

API URL
http://smmpanel.habibsoft.com/api/v2
HTTP method
POST (GET is also accepted)
Content type
application/x-www-form-urlencoded or JSON
Response format
JSON
API key
Create an account to get an API key
Rate limit
60 requests per 60 seconds per key (HTTP 429 when exceeded)

Service list

action=services
ParameterDescription
keyYour API key
actionservices
Example response
[
  {
    "service": 352,
    "name": "Instagram Followers",
    "type": "Default",
    "category": "Instagram",
    "rate": "0.90",
    "min": "50",
    "max": "10000",
    "refill": true,
    "cancel": true,
    "dripfeed": false
  }
]

Add order

action=add
ParameterDescription
keyYour API key
actionadd
serviceService ID
linkLink to page
quantityNeeded quantity
runs (optional)Runs to deliver (drip-feed services)
interval (optional)Interval in minutes (drip-feed)
commentsCustom comments, one per line (custom comments types)
usernamesUsernames, one per line (mentions)
usernameUsername (comment likes)
answer_numberAnswer number (poll)
keywordsKeywords (keywords / search services)
Example response
{
  "order": 23501
}

Order status

action=status
ParameterDescription
keyYour API key
actionstatus
orderOrder ID
Example response
{
  "charge": "0.27819",
  "start_count": "3572",
  "status": "Partial",
  "remains": "157",
  "currency": "USD"
}

Multiple orders status

action=status
ParameterDescription
keyYour API key
actionstatus
ordersOrder IDs separated by comma (up to 100)
Example response
{
  "1": { "charge": "0.27819", "start_count": "3572", "status": "Partial", "remains": "157", "currency": "USD" },
  "10": { "error": "Incorrect order ID" },
  "100": { "charge": "1.44219", "start_count": "234", "status": "In progress", "remains": "10", "currency": "USD" }
}

Create refill

action=refill
ParameterDescription
keyYour API key
actionrefill
orderOrder ID
Example response
{
  "refill": "1"
}

Refill status

action=refill_status
ParameterDescription
keyYour API key
actionrefill_status
refillRefill ID
Example response
{
  "status": "Completed"
}

Cancel orders

action=cancel
ParameterDescription
keyYour API key
actioncancel
ordersOrder IDs separated by comma (up to 100)
Example response
[
  { "order": 9, "cancel": { "error": "Incorrect order ID" } },
  { "order": 2, "cancel": 1 }
]

User balance

action=balance
ParameterDescription
keyYour API key
actionbalance
Example response
{
  "balance": "100.84292",
  "currency": "USD"
}

Errors

Errors are returned as {"error": "message"} with an appropriate HTTP status:

  • 401 — invalid or missing API key
  • 400 / 422 — invalid parameters (e.g. Incorrect service ID, quantity out of range, Not enough funds on balance)
  • 429 — rate limit exceeded; retry after the window resets
  • 403 — API access disabled for the account

Order statuses: Pending, Processing, In progress, Completed, Partial, Canceled. Undelivered quantity of partial and cancelled orders is refunded to your balance automatically.