API

POST your API requests to the endpoint below. Get your key from the Account page.

HTTP MethodPOST
API URLhttps://kugumedya.com/api/v2
API KeyGenerated on the Account page
Response formatJSON

Service list

Parameters

ParameterDescription
keyYour API key
actionservices

Example response

[
    {
        "service": 1,
        "name": "Followers",
        "type": "Default",
        "category": "First Category",
        "rate": "0.90",
        "min": "50",
        "max": "10000",
        "refill": true,
        "cancel": true
    },
    {
        "service": 2,
        "name": "Comments",
        "type": "Custom Comments",
        "category": "Second Category",
        "rate": "8",
        "min": "10",
        "max": "1500",
        "refill": false,
        "cancel": true
    }
]

Add order

Parameters

ParameterDescription
keyYour API key
actionadd
serviceService ID
linkLink to page
quantityNeeded quantity
runs(optional)Runs to deliver (drip-feed)
interval(optional)Interval in minutes (drip-feed)

Example response

{
    "order": 23501
}

Order status

Parameters

ParameterDescription
keyYour API key
actionstatus
orderOrder ID

Example response

{
    "charge": "0.27819",
    "start_count": "3572",
    "status": "Partial",
    "remains": "157",
    "currency": "USD"
}

Multiple orders status

Parameters

ParameterDescription
keyYour API key
actionstatus
ordersOrder IDs (separated by a comma, up to 100 IDs)

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

Parameters

ParameterDescription
keyYour API key
actionrefill
orderOrder ID

Example response

{
    "refill": "1"
}

Create multiple refill

Parameters

ParameterDescription
keyYour API key
actionrefill
ordersOrder IDs (separated by a comma, up to 100 IDs)

Example response

[
    {
        "order": 1,
        "refill": 1
    },
    {
        "order": 2,
        "refill": 2
    },
    {
        "order": 3,
        "refill": {
            "error": "Incorrect order ID"
        }
    }
]

Get refill status

Parameters

ParameterDescription
keyYour API key
actionrefill_status
refillRefill ID

Example response

{
    "status": "Completed"
}

Get multiple refill status

Parameters

ParameterDescription
keyYour API key
actionrefill_status
refillsRefill IDs (separated by a comma, up to 100 IDs)

Example response

[
    {
        "refill": 1,
        "status": "Completed"
    },
    {
        "refill": 2,
        "status": "Rejected"
    },
    {
        "refill": 3,
        "status": {
            "error": "Refill not found"
        }
    }
]

Cancel orders

Parameters

ParameterDescription
keyYour API key
actioncancel
ordersOrder IDs (separated by a comma, up to 100 IDs)

Example response

[
    {
        "order": 9,
        "cancel": {
            "error": "Incorrect order ID"
        }
    },
    {
        "order": 2,
        "cancel": 1
    }
]

User balance

Parameters

ParameterDescription
keyYour API key
actionbalance

Example response

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

`add` parameters by service type

Typerequiredoptional
Defaultservice, link, quantityruns, interval (minutes) → drip-feed
Packageservice, link–
Custom Commentsservice, link, comments (separated by \n)–
Comment Likesservice, link, quantity, username–
Subscriptionsservice, username, min, max, delay (0, 5, 10, 15, 20, 30, 40, 50, 60, 90, 120, 150, 180, 210, 240, 270, 300, 360, 420, 480, 540, 600)posts (new posts limit; unlimited when omitted), old_posts, expiry (d/m/Y)
Web Trafficservice, link, quantity, country ("US" or "United States"), device (1 Desktop, 2 Android, 3 iOS, 4 Mixed mobile, 5 Mixed all), type_of_traffic (1 Google Keyword, 2 Custom Referrer, 3 Blank Referrer)runs, interval, google_keyword (required for type 1), referring_url (required for type 2)

Order status strings

Pending, In progress, Processing, Completed, Partial, Canceled

Error response

{
    "error": "Incorrect request"
}

Example of PHP code

Download example.txt
<?php

class Api
{
    /** API URL */
    public $api_url = 'https://kugumedya.com/api/v2';

    /** Your API key */
    public $api_key = '';

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

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

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

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

    /** Refill order */
    public function refill(int $orderId) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'refill',
            'order' => $orderId,
        ]));
    }

    /** Refill orders */
    public function multiRefill(array $orderIds) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'refill',
            'orders' => implode(',', $orderIds),
        ]), true);
    }

    /** Get refill status */
    public function refillStatus(int $refillId) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'refill_status',
            'refill' => $refillId,
        ]));
    }

    /** Get refill statuses */
    public function multiRefillStatus(array $refillIds) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'refill_status',
            'refills' => implode(',', $refillIds),
        ]), true);
    }

    /** Cancel orders */
    public function cancel(array $orderIds) {
        return json_decode($this->connect([
            'key' => $this->api_key,
            'action' => 'cancel',
            'orders' => implode(',', $orderIds),
        ]), true);
    }

    /** Get balance */
    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_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        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;
    }
}

// Examples

$api = new Api();

$services = $api->services(); # return all services
$balance = $api->balance(); # return user balance

$order = $api->order(['service' => 1, 'link' => 'http://example.com/test', 'quantity' => 100, 'runs' => 2, 'interval' => 5]); # Default
$order = $api->order(['service' => 1, 'link' => 'http://example.com/test']); # Package
$order = $api->order(['service' => 1, 'link' => 'http://example.com/test', 'comments' => "good pic\ngreat photo\n:)\n;)"]); # Custom Comments
$order = $api->order(['service' => 1, 'link' => 'http://example.com/test', 'quantity' => 100, 'username' => 'test']); # Comment Likes
$order = $api->order(['service' => 1, 'username' => 'username', 'min' => 100, 'max' => 110, 'posts' => 0, 'delay' => 30, 'expiry' => '11/11/2022']); # Subscriptions
$order = $api->order(['service' => 1, 'link' => 'http://example.com/test', 'quantity' => 100, 'country' => 'US', 'device' => 1, 'type_of_traffic' => 1, 'google_keyword' => 'test']); # Web Traffic

$status = $api->status($order->order); # return status, charge, remains, start count, currency
$statuses = $api->multiStatus([1, 2, 3]); # return status, charge, remains, start count, currency of selected orders

$refill = $api->refill(1); # return refill ID
$refills = $api->multiRefill([1, 2, 3]); # return refill IDs

$refillStatus = $api->refillStatus(1); # return refill status
$refillStatuses = $api->multiRefillStatus([1, 2, 3]); # return refill statuses

$cancel = $api->cancel([1, 2, 3]); # return cancel status