← FalconGrow

API de Revendedores

API Key

Resumen

Endpointhttps://www.falcongrow.com/api/v2
MétodoPOST (GET solo para action=services)
FormatoJSON o application/x-www-form-urlencoded
Rate limit120 solicitudes / minuto por API key

Autenticación

Toda solicitud autenticada debe incluir el parámetro key con tu API key. Puedes obtenerla desde Dashboard → Configuración → API Key.

curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{"key": "TU_API_KEY", "action": "balance"}'

Nunca compartas tu API key públicamente. Si se compromete, puedes regenerarla desde el dashboard — esto invalidará la key anterior.

action: services

Lista todos los servicios disponibles. No requiere API key.

# POST
curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{"action": "services"}'

# o GET
curl "https://www.falcongrow.com/api/v2?action=services"

Respuesta

[
  {
    "service":  42,
    "name":     "Instagram — Seguidores Mundiales",
    "type":     "Followers",
    "category": "Instagram",
    "rate":     "1.20",       // precio por 1.000 unidades (USD)
    "min":      100,
    "max":      50000,
    "dripfeed": false,
    "refill":   true,
    "cancel":   false
  },
  ...
]

action: balance

Devuelve el saldo disponible en tu cuenta.

curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{"key": "TU_API_KEY", "action": "balance"}'

Respuesta

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

action: add

Crea un nuevo pedido. El saldo se debita automáticamente.

ParámetroTipoReq.Descripción
keystringrequeridoTu API key
serviceintegerrequeridoID del servicio (ver action=services)
linkstringrequeridoURL del perfil/video/post objetivo
quantityintegerrequeridoCantidad (entre min y max del servicio)
runsintegeropcionalDripfeed: número de tandas (si el servicio lo soporta)
intervalintegeropcionalDripfeed: minutos entre tandas
curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{
    "key":      "TU_API_KEY",
    "action":   "add",
    "service":  42,
    "link":     "https://www.instagram.com/tunombre/",
    "quantity": 1000
  }'

Respuesta

{ "order": 7391 }

action: status

Consulta el estado de uno o varios pedidos. Para múltiples pedidos, pasa los IDs separados por coma (máx. 100).

# Pedido único
curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{"key": "TU_API_KEY", "action": "status", "orders": "7391"}'

# Consulta masiva
curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{"key": "TU_API_KEY", "action": "status", "orders": "7391,7392,7393"}'

Respuesta — pedido único

{
  "charge":      "1.200000",
  "start_count": 4820,
  "status":      "In progress",
  "remains":     643,
  "currency":    "USD"
}

Respuesta — múltiples pedidos

{
  "7391": { "charge": "1.20", "start_count": 4820, "status": "Completed", "remains": 0,   "currency": "USD" },
  "7392": { "charge": "0.60", "start_count": 1200, "status": "In progress","remains": 300, "currency": "USD" },
  "7393": { "error": "Incorrect order ID." }
}

Estados posibles

Pending

En cola o esperando

In progress

Enviado al proveedor

Completed

Finalizado correctamente

Partial

Parcialmente completado

Canceled

Cancelado

Failed

Error técnico en el proveedor

action: refill

Solicita un relleno para un pedido completado. Solo disponible si el servicio tiene refill: true.

curl -X POST https://www.falcongrow.com/api/v2 \
  -H "Content-Type: application/json" \
  -d '{"key": "TU_API_KEY", "action": "refill", "order": 7391}'

Respuesta

{ "refill": 9910 }

Errores

Todos los errores devuelven un objeto JSON con la clave error.

{ "error": "Descripción del error." }
HTTPCausa
400Parámetros inválidos o faltantes
401API key inválida o sin permisos
404Recurso no encontrado (orden, servicio)
429Rate limit excedido (120 req/min)
500Error interno del servidor

Ejemplo de Integración (PHP)

Clase PHP lista para usar. Reemplaza api_url con https://www.falcongrow.com/api/v2 y asigna tu API key.

<?php
class Api
{
    public $api_url = 'https://www.falcongrow.com/api/v2';
    public $api_key = '';  // Tu API key aquí

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

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

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

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

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

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

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

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

    /** Consultar saldo */
    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_FOLLOWLOCATION, true);
        if (is_array($post)) {
            curl_setopt($ch, CURLOPT_POSTFIELDS, join('&', $_post));
        }
        $result = curl_exec($ch);
        if (curl_errno($ch) != 0 && empty($result)) {
            $result = false;
        }
        curl_close($ch);
        return $result;
    }
}

Uso

$api = new Api();

// Listar servicios
$services = $api->services();

// Consultar saldo
$balance = $api->balance();

// Crear pedido
$order = $api->order([
    'service'  => 1,
    'link'     => 'https://instagram.com/ejemplo',
    'quantity' => 1000
]);

// Pedido con dripfeed
$order = $api->order([
    'service'  => 1,
    'link'     => 'https://instagram.com/ejemplo',
    'quantity' => 1000,
    'runs'     => 10,
    'interval' => 60
]);

// Consultar estado
$status = $api->status($order->order);

// Consulta masiva
$statuses = $api->multiStatus([1, 2, 3]);

// Refill
$refill = $api->refill($order->order);

// Cancelar
$cancel = $api->cancel([1, 2]);

¿Listo para integrar? Obtén tu API key desde el dashboard.

Ir al Dashboard