Skip to content
SMM Followerss

Reseller API v2

Place orders, check their status, refill, cancel and read your balance from your own panel or script. The protocol is compatible with the standard SMM panel API v2: change the URL and the key and an existing client works.

Get started

Create a key in your dashboard under API, then send POST requests to the endpoint below. A key is shown once, so store it safely, and it can be limited to the IP addresses of your server.

Endpoint

POST https://smm-followerss.com/api/v2

Authentication and limits

  • Send your key as the key parameter in every call. A missing, unknown, revoked or IP-restricted key is answered with an Invalid API key error.
  • Only POST is accepted. Send form fields or a JSON body; the answer is always JSON.
  • Business errors come back as HTTP 200 with an error field, so check the body of every answer.
  • Up to 60 requests per minute per key; the services action allows 10 per minute. Over the limit you get HTTP 429 with a Retry-After header.
  • Prices are what your account pays on the website, in USD.
  • Up to 3 active keys per account.

Actions

Every call is a POST with your key and an action parameter.

services

Lists the services you can order now, with your price per 1,000, the limits and whether refill, cancel and drip-feed are available.

Parameters
lang?
Response
list of services (below)

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=services'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'services',
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "services",
    },
    timeout=30,
)
print(response.json())

Example response

[
  {
    "service": 100245,
    "name": "Instagram Followers | Real | 30 Days Refill",
    "type": "Default",
    "category": "Instagram Followers",
    "rate": "0.9000",
    "min": "50",
    "max": "10000",
    "refill": true,
    "cancel": false,
    "dripfeed": true
  },
  {
    "service": 100246,
    "name": "Instagram Likes | Instant",
    "type": "Default",
    "category": "Instagram Likes",
    "rate": "0.0800",
    "min": "10",
    "max": "50000",
    "refill": false,
    "cancel": true,
    "dripfeed": true
  },
  {
    "service": 100512,
    "name": "Instagram Growth Package | 1000 Followers",
    "type": "Package",
    "category": "Instagram Packages",
    "rate": "7.5000",
    "min": "1",
    "max": "1",
    "refill": true,
    "cancel": false,
    "dripfeed": false
  },
  {
    "service": 100620,
    "name": "Instagram Custom Comments | English",
    "type": "Custom Comments",
    "category": "Instagram Comments",
    "rate": "6.2000",
    "min": "5",
    "max": "1000",
    "refill": false,
    "cancel": false,
    "dripfeed": false
  },
  {
    "service": 100700,
    "name": "Instagram Auto Likes | Subscription",
    "type": "Subscriptions",
    "category": "Instagram Auto Likes",
    "rate": "0.1500",
    "min": "50",
    "max": "5000",
    "refill": false,
    "cancel": false,
    "dripfeed": false
  },
  {
    "service": 100910,
    "name": "Website Traffic | UAE | Desktop",
    "type": "Web Traffic",
    "category": "Website Traffic",
    "rate": "0.4000",
    "min": "100",
    "max": "100000",
    "refill": false,
    "cancel": false,
    "dripfeed": true
  }
]

add

Places an order for a service. Send the fields of the service's type (see the table below); the cost is charged from your balance at once.

Parameters
service, the fields of the service's type, runs?, interval?, idempotency_key?
Response
{"order": <id>}

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100245' \
  --data-urlencode 'link=https://www.instagram.com/example_user' \
  --data-urlencode 'quantity=1000' \
  --data-urlencode 'runs=3' \
  --data-urlencode 'interval=30'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'add',
        'service' => 100245,
        'link' => 'https://www.instagram.com/example_user',
        'quantity' => 1000,
        'runs' => 3,
        'interval' => 30,
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "add",
        "service": 100245,
        "link": "https://www.instagram.com/example_user",
        "quantity": 1000,
        "runs": 3,
        "interval": 30,
    },
    timeout=30,
)
print(response.json())

status

Returns the status, charge, start count and remaining quantity of one order, or of up to 100 orders at once.

Parameters
order (one) or orders (comma list, at most 100)
Response
one object, or an object keyed by order id

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=status' \
  --data-urlencode 'order=4821937'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'status',
        'order' => 4821937,
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "status",
        "order": 4821937,
    },
    timeout=30,
)
print(response.json())

Example response

{
  "charge": "0.9000",
  "start_count": "3572",
  "status": "In progress",
  "remains": "412",
  "currency": "USD"
}

refill

Requests a refill for one order or for up to 100 orders, when the service offers refill.

Parameters
order or orders (at most 100)
Response
{"refill": "<id>"} or a list of {order, refill}

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=refill' \
  --data-urlencode 'order=4821937'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'refill',
        'order' => 4821937,
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "refill",
        "order": 4821937,
    },
    timeout=30,
)
print(response.json())

Example response

{
  "refill": "90211"
}

refill_status

Returns the status of one refill or of up to 100 refills.

Parameters
refill or refills (at most 100)
Response
{"status": ...} or a list of {refill, status}

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=refill_status' \
  --data-urlencode 'refill=90211'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'refill_status',
        'refill' => 90211,
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "refill_status",
        "refill": 90211,
    },
    timeout=30,
)
print(response.json())

Example response

{
  "status": "Completed"
}

cancel

Requests the cancellation of up to 100 orders; the unused part is refunded when the order settles.

Parameters
orders (at most 100)
Response
a list of {order, cancel}

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=cancel' \
  --data-urlencode 'orders=4821937,4821938,9999999'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'cancel',
        'orders' => '4821937,4821938,9999999',
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "cancel",
        "orders": "4821937,4821938,9999999",
    },
    timeout=30,
)
print(response.json())

Example response

[
  {
    "order": 4821937,
    "cancel": 1
  },
  {
    "order": 4821938,
    "cancel": {
      "error": "Order cannot be canceled"
    }
  },
  {
    "order": 9999999,
    "cancel": {
      "error": "Incorrect order ID"
    }
  }
]

balance

Returns your balance and its currency.

Parameters
none
Response
{"balance": "12.3400", "currency": "USD"}

Example request

cURL
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=balance'
PHP
<?php

$ch = curl_init('https://smm-followerss.com/api/v2');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'key' => 'YOUR_API_KEY',
        'action' => 'balance',
    ]),
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

response = requests.post(
    "https://smm-followerss.com/api/v2",
    data={
        "key": "YOUR_API_KEY",
        "action": "balance",
    },
    timeout=30,
)
print(response.json())

Example response

{
  "balance": "12.3400",
  "currency": "USD"
}

Service types and order fields

The add action takes the service id and the fields of that service's type; the type of each service is in the services answer. For services that accept drip-feed, add runs and interval (minutes).

Default

Default
Field Format Required Rules
link Link Required A link on the service's platform. Up to 2048 characters
quantity Whole number Required Within the service's min and max. In steps of the service's step
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100245' \
  --data-urlencode 'link=https://www.instagram.com/example_user' \
  --data-urlencode 'quantity=1000' \
  --data-urlencode 'runs=3' \
  --data-urlencode 'interval=30'

Package

Package
Field Format Required Rules
link Link Required A link on the service's platform. Up to 2048 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100512' \
  --data-urlencode 'link=https://www.instagram.com/example_user'

Custom Comments

Custom Comments
Field Format Required Rules
link Link Required A link on the service's platform. Up to 2048 characters
comments Lines of text Required One per line; the number of lines is within the service's min and max. Each line up to 300 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100620' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'comments=Great shot!
Love this
Amazing work'

Custom Comments Package

Custom Comments Package
Field Format Required Rules
link Link Required A link on the service's platform. Up to 2048 characters
comments Lines of text Required One per line; the number of lines is within the service's min and max. Each line up to 300 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100621' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'comments=Great shot!
Love this
Amazing work
So good
Wow'

Subscriptions

Subscriptions
Field Format Required Rules
username Text Required Username, with or without @
min Whole number Required Within the service's min and max
max Whole number Required Within the service's min and max. Not less than min
posts Whole number Required 1 to 1000
old_posts Whole number Optional 0 to 100
delay One allowed value Required Allowed values: 0, 5, 10, 15, 20, 30, 40, 50, 60, 90, 120, 150, 180, 210, 240, 270, 300, 360, 420, 480, 540, 600
expiry Date Optional Date as d/m/Y (YYYY-MM-DD also works)
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100700' \
  --data-urlencode 'username=example_user' \
  --data-urlencode 'min=100' \
  --data-urlencode 'max=500' \
  --data-urlencode 'posts=30' \
  --data-urlencode 'old_posts=0' \
  --data-urlencode 'delay=10' \
  --data-urlencode 'expiry=31/12/2026'

Mentions with Hashtags

Mentions with Hashtags
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
usernames Lines of text Required One per line, 1 to 1000 lines. Username, with or without @
hashtags Lines of text Required One per line, 1 to 1000 lines. Hashtag, with or without #
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100810' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'quantity=100' \
  --data-urlencode 'usernames=user_one
user_two' \
  --data-urlencode 'hashtags=#travel
#food'

Mentions Custom List

Mentions Custom List
Field Format Required Rules
link Link Required A link on the service's platform
usernames Lines of text Required One per line; the number of lines is within the service's min and max. Username, with or without @
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100811' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'usernames=user_one
user_two
user_three'

Mentions Hashtag

Mentions Hashtag
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
hashtag Text Required Hashtag, with or without #
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100812' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'quantity=500' \
  --data-urlencode 'hashtag=#travel'

Mentions User Followers

Mentions User Followers
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
username Text Required Username, with or without @
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100813' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'quantity=500' \
  --data-urlencode 'username=example_user'

Mentions Media Likers

Mentions Media Likers
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
media Link Required A link on the service's platform
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100814' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'quantity=500' \
  --data-urlencode 'media=https://www.instagram.com/p/Cother456/'

Comment Likes

Comment Likes
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
username Text Required Username, with or without @
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100830' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'quantity=100' \
  --data-urlencode 'username=example_user'

Poll

Poll
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
answer_number Whole number Required 1 to 20
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100840' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'quantity=200' \
  --data-urlencode 'answer_number=2'

Comment Replies

Comment Replies
Field Format Required Rules
link Link Required A link on the service's platform
username Text Required Username, with or without @
comments Lines of text Required One per line; the number of lines is within the service's min and max. Each line up to 300 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100850' \
  --data-urlencode 'link=https://www.instagram.com/p/Cxample123/' \
  --data-urlencode 'username=example_user' \
  --data-urlencode 'comments=Thanks!
Agreed
Well said'

Invites from Groups

Invites from Groups
Field Format Required Rules
link Link Required A link on the service's platform
quantity Whole number Required Within the service's min and max
groups Lines of text Required One per line, 1 to 100 lines. Each line up to 2048 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100860' \
  --data-urlencode 'link=https://t.me/example_channel' \
  --data-urlencode 'quantity=300' \
  --data-urlencode 'groups=https://t.me/group_one
https://t.me/group_two'

SEO

SEO
Field Format Required Rules
link Link Required Up to 2048 characters
quantity Whole number Required Within the service's min and max
keywords Lines of text Required One per line, 1 to 50 lines. Each line up to 100 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100900' \
  --data-urlencode 'link=https://example.com/landing' \
  --data-urlencode 'quantity=1000' \
  --data-urlencode 'keywords=buy widgets
cheap widgets'

Web Traffic

Web Traffic
Field Format Required Rules
link Link Required Up to 2048 characters
quantity Whole number Required Within the service's min and max
country One allowed value Required Two-letter country code (ISO 3166-1 alpha-2), for example AE
device One allowed value Required Allowed values: 1 (Desktop), 2 (Android), 3 (iOS), 4 (Mixed mobile), 5 (All devices)
type_of_traffic One allowed value Required Allowed values: 1 (Google keyword), 2 (Custom referrer), 3 (No referrer)
google_keyword Text Optional Required when type_of_traffic is 1. Up to 100 characters
referring_url Link Optional Required when type_of_traffic is 2. Up to 2048 characters
Example request (cURL)
curl -X POST https://smm-followerss.com/api/v2 \
  --data-urlencode 'key=YOUR_API_KEY' \
  --data-urlencode 'action=add' \
  --data-urlencode 'service=100910' \
  --data-urlencode 'link=https://example.com/landing' \
  --data-urlencode 'quantity=5000' \
  --data-urlencode 'country=AE' \
  --data-urlencode 'device=1' \
  --data-urlencode 'type_of_traffic=1' \
  --data-urlencode 'google_keyword=widgets dubai' \
  --data-urlencode 'referring_url=https://www.google.com/'

Error messages

These are all the messages the API returns. Match on the text exactly: they are in English in every language.

Error messages
Message When HTTP
Invalid API key key missing, unknown, revoked, user not active, IP not allowed 200
Incorrect action action missing or not one of the seven 200
Incorrect request body unparsable, or a required list parameter (orders, refills) missing or empty 200
Too many orders (maximum 100) more than 100 distinct ids in a batch 200
Incorrect service ID unknown, inactive, hidden for this caller, or its type is disabled 200
Service is unavailable the service cannot be ordered right now (provider outage, price held, floor) 200
Incorrect link link/media/referring_url malformed or not on the service's platform 200
Incorrect quantity quantity outside the service limits or step, or line count out of range 200
Incorrect runs, Incorrect interval drip-feed parameters invalid or not supported by the service 200
Incorrect <field> any other type-specific field missing or invalid 200
Link or content is not allowed acceptable-use check (host, shortener, handle, comment moderation) 200
You have an active order with this link. Please wait until order being completed. duplicate guard 200
Not enough funds on balance wallet below the charge 200
Idempotency key was already used with different parameters idempotency_key replay with other values 200
Incorrect order ID status, refill, cancel: unknown id or another user's order 200
Order is not eligible for refill refill: eligibility failed 200
Order cannot be canceled cancel: not cancelable in its state or by its service 200
Refill not found refill_status: unknown id or another user's refill 200
Method not allowed not a POST 405
Request too large body over 256 KiB 413
Too many requests rate limit 429
Server error unexpected failure 500
Service temporarily unavailable maintenance mode 503

API terms

The API terms are being finalised. Questions about the API? Contact us and we will help.

Contact us