FalconSMM

RESTful API Documentation (v2)

Connect your custom scripts, bots, or panel directly to FalconSMM via standard JSON HTTP POST requests.

HTTP POST Protocol JSON Output
API Endpoint URL
https://falconsmm.com/api/v2
API Key Authentication
Get an API key on the page Account
Response & Code Examples
JSON Format (UTF-8) PHP Class
POST

Service List

action: "services"
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Action type must be set to services.
Example Response (JSON Array)
[
  {
    "service": 10040,
    "name": "Facebook Page / Profile Followers [ Instant ] [ 100K/Day ] [ HQ ] 30 Days Refill ♻️",
    "type": "Default",
    "category": "Facebook - OFFERS",
    "rate": "0.1641",
    "min": "10",
    "max": "100000",
    "refill": true,
    "cancel": true
  },
  {
    "service": 10042,
    "name": "Facebook Post React [ Instant ] [ 50K/Day ] [ 👍 Likes ] 30 Days Refill ♻️",
    "type": "Default",
    "category": "Facebook - Reactions",
    "rate": "0.1250",
    "min": "50",
    "max": "50000",
    "refill": true,
    "cancel": true
  }
]
POST

Add Order

action: "add"
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Set to add.
service integer Required The Service ID from the Services List.
link string Required Target URL (e.g. post link, profile URL, channel link).
quantity integer Required Needed quantity (must respect min and max limits).
runs integer Optional Runs to deliver (required for drip-feed orders).
interval integer Optional Interval in minutes between runs (for drip-feed).
Success Response
{
  "order": 1054820
}
Error Response
{
  "error": "The link or quantity is not valid"
}
POST

Order Status

action: "status"
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Set to status.
order integer Required Order ID received when placing the order.
Example Response (JSON)
{
  "charge": "0.1641",
  "start_count": "5420",
  "status": "Completed",
  "remains": "0",
  "currency": "USD"
}
POST

Multiple Orders Status

action: "status" (multiple)
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Set to status.
orders string Required Comma-separated Order IDs (e.g. 1054820,1054821,1054822). Maximum 100 IDs.
Example Response (Keyed JSON)
{
  "1054820": {
    "charge": "0.1641",
    "start_count": "5420",
    "status": "Completed",
    "remains": "0",
    "currency": "USD"
  },
  "1054821": {
    "error": "Incorrect order ID"
  },
  "1054822": {
    "charge": "0.3282",
    "start_count": "1200",
    "status": "In progress",
    "remains": "800",
    "currency": "USD"
  }
}
POST

Create Refill

action: "refill"
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Set to refill.
order integer Required Order ID eligible for refill guarantee.
Example Response (JSON)
{
  "refill": "58492"
}
POST

Refill Status

action: "refill_status"
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Set to refill_status.
refill integer Required Refill task ID received from Create Refill.
Example Response (JSON)
{
  "status": "Completed"
}
POST

User Balance

action: "balance"
Parameter Type Status Description
key string Required Your API Key. Get an API key on the page.
action string Required Set to balance.
Example Response (JSON)
{
  "balance": "142.5080",
  "currency": "USD"
}
CODE

Multi-Language Integration Snippets

PHP / Python / Node.js / cURL
PHP cURL Integration Class
<?php
class Api {
    public $api_url = 'https://falconsmm.com/api/v2';
    // Get your API key on the Account page (https://falconsmm.com/account)
    public $api_key = 'YOUR_API_KEY';

    public function order($data) {
        $post = array_merge(['key' => $this->api_key, 'action' => 'add'], $data);
        return json_decode($this->connect($post));
    }

    public function status($order_id) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'status',
            'order' => $order_id
        ]));
    }

    public function multiStatus($order_ids) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'status',
            'orders' => implode(",", (array)$order_ids)
        ]));
    }

    public function services() {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'services'
        ]));
    }

    public function balance() {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'balance'
        ]));
    }

    private function connect($post) {
        $_post = [];
        if (is_array($post)) {
            foreach ($post as $name => $value) {
                $_post[] = $name.'='.urlencode($value);
            }
        }
        $ch = curl_init($this->api_url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        if (is_array($post)) {
            curl_setopt($ch, CURLOPT_POSTFIELDS, join("&", $_post));
        }
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)');
        $result = curl_exec($ch);
        if (curl_errno($ch) != 0 && empty($result)) {
            $result = false;
        }
        curl_close($ch);
        return $result;
    }
}

// Example Usage:
$api = new Api();
$services = $api->services();
print_r($services);
?>
Copied to clipboard!