Developer guide · 2026
Read the error field first. Nearly every failed request tells you what went wrong in a short JSON message. Match it to one of a few categories and the fix is usually quick.
If you resell services, run a child panel or connect a bot to a provider, sooner or later you will see an SMM panel API error. The good news is that these errors are predictable. A standard v2 API returns only a handful of failure types, and almost all of them come from the request itself rather than from the provider.
This guide explains how a v2 request works, the common error categories, what causes each one, and how to build an integration that handles them cleanly. The exact wording of messages can differ between providers, so always confirm details on the WowSMM API documentation page.
How an SMM Panel API v2 Request Works
The v2 format is simple. You send a request to one endpoint, for WowSMM that is https://wowsmm.com/api/v2, with your API key and an action parameter. The supported actions are:
- services: returns the service list with IDs, names, rates and minimum and maximum quantities.
- add: places an order using a service ID, a link and a quantity, plus extra fields some services need.
- status: returns the status of one or more orders.
- refill: requests a refill for an eligible order.
- cancel: asks to cancel orders that have not started yet, where the service allows it.
- balance: returns your current wallet balance and currency.
A successful call returns JSON with the data you asked for. A failed call usually returns JSON with an error field containing a short message. You can read the full setup on our SMM panel API page.
Reading an SMM Panel API Error Response
Many v2 integrations return an HTTP 200 status even when the request fails, so the HTTP code alone does not tell you much. The safe pattern is:
- Check that the response body is valid JSON. If you receive an HTML page instead, your URL or request method is wrong.
- Check whether the JSON contains an error field. If it does, log the full message together with the request parameters (never log the key itself).
- Only when there is no error field, read the expected value, for example the new order ID after an add request.
Common Error Categories at a Glance
| Category | Typical cause | How to fix |
|---|---|---|
| Wrong or missing API key | Typo, extra space, old key after regeneration, wrong account | Copy the key again from your account and store it in a config file or environment variable |
| Wrong service ID | Service removed, ID copied from another provider, cached list | Call the services action and refresh your local mapping |
| Quantity outside min or max | Customer quantity below minimum or above maximum | Validate quantity against the current min and max before sending |
| Insufficient balance | Wallet lower than the order charge | Add funds, check balance before large batches |
| Bad or unsupported link | Private account, wrong format, link for a different platform | Validate the link format and make sure the profile or post is public |
| Order not found | Wrong order ID, ID from another account or provider | Store order IDs exactly as returned and query with the same key |
Wrong Key and Authentication Problems
An invalid API key message is the most common error in a new integration. Check these points in order:
- The key has no leading or trailing spaces or line breaks from copying.
- You are sending the key in the parameter name the documentation uses.
- You regenerated the key recently, which makes the old one stop working.
- The key belongs to the account you think it does, not a test or second account.
Keep the key on the server only. Never place it in front-end JavaScript or a mobile app, because anyone could read it and spend your balance.
Service ID, Quantity and Link Errors
These three come from the add action and are usually caused by stale data or unchecked customer input. Providers update services, so a service ID that worked last month may now be disabled. Refresh the services list on a schedule, perhaps once or twice a day, and hide services in your own panel when they disappear upstream.
For quantity, read the min and max from that same services response and validate before you send. For links, check the basic format for the platform, reject obvious mistakes such as a profile link on a post-only service, and remind customers that the account must stay public. If you run a child panel, show these rules on your order form so customers fix input before it reaches the API.
Tip: Some services need extra fields, for example a list of comments or a username. Read each service's details on the services page or in the docs, and send only the fields that service expects.
Balance Errors and Order Not Found
A not enough funds API error simply means your WowSMM balance is lower than the charge for that order. Call the balance action before large batches and alert yourself when the balance drops below a level you choose. You can top up through UPI via BharatPe and Paytm from ₹5, Binance Pay from $10 with a 2% bonus, crypto through Cryptomus and Heleket, or the manual payment option.
An order not found error almost always means the ID or the key does not match. Save the order ID exactly as the add action returned it, link it to your own internal order record, and query it with the same API key that created it.
Handling Order Status Correctly
The SMM API status action tells you where each order stands, using the same statuses you see in the Orders page: Pending, In progress, Completed, Partial, Canceled and others. Handle each one deliberately:
- Pending or In progress: keep checking on a sensible interval.
- Completed: mark the order done and stop polling it.
- Partial: part of the quantity was not delivered and that amount is refunded to your WowSMM wallet. Pass the right refund to your own customer.
- Canceled: the order was not delivered and the charge returns to your wallet. Let your customer know.
Check many orders in one request where the documentation allows it, and avoid polling every few seconds. Use the refill action only for eligible services within their refill period.
Good Habits for a Stable Integration
Do this
- Keep the API key in server-side config only
- Refresh the services list on a schedule
- Validate quantity and link before each add
- Use timeouts and retry only on network failures
Avoid this
- Retrying an add request blindly, which can create duplicate orders
- Hard-coding service IDs forever
- Polling status every few seconds
- Showing raw error messages with internal details to customers
If you are just starting to resell, the SMM reseller panel guide explains pricing and setup. Open-source PHP, Python and Node clients are published at github.com/wowsmm-com/wowsmm-api, and you can raise a ticket or message support on WhatsApp or Telegram at any hour if an error does not match any category above.
Frequently Asked Questions
Where do I find my WowSMM API key?
Log in to your WowSMM account and open the API section of your account. The key is linked to your account balance, so keep it private and generate a new one if you think it has been exposed.
Why does my request return an error even though the HTTP status is 200?
Most SMM panel API v2 integrations report failures inside the JSON body, in an error field, rather than through the HTTP status code. Always parse the JSON and check for the error field before reading an order ID.
Can I place several orders at once through the API?
Each add request creates one order. To place many orders, send one request per order and store each order ID. Avoid sending a duplicate order on the same link before the first one finishes.
How do I check many orders without hitting the API too often?
Use the status action with several order IDs where the documentation allows it, and poll on a sensible interval instead of every few seconds. Stop polling orders once they reach a final status such as Completed, Partial or Canceled.
Is there a ready-made client library?
Yes. Open-source PHP, Python and Node clients for the WowSMM API are available on GitHub under the wowsmm-com organisation, and the full parameter list is on the API docs page.
Connect your panel to WowSMM
Use the v2 API with services, add, status, refill, cancel and balance actions.

