Flowly API Documentation
Automate social media orders programmatically, access utility tools with daily free quotas, and integrate Flowly seamlessly with your panels and apps.
https://flowlycore.com/api/v2/
https://flowlycore.com/api/v1/tools/
Documentation Index
Overview & Quick Start
Flowly provides developer-first REST APIs for automating social media services and leveraging utility tools:
SMM Orders API
SMM v2 ProtocolFull compatibility with SMM panel formats. Retrieve service catalogs, place single or bulk orders, check order fulfillment progress, and check wallet balance.
Explore SMM API →Tools API
Daily Free QuotaHigh-performance utility endpoints. Enjoy daily free requests across all Tools APIs, followed by flexible pay-per-request pricing deducted from balance.
Explore Tools API →Base Endpoints
| Service | Endpoint | Method |
|---|---|---|
| SMM Ordering API | https://flowlycore.com/api/v2/ |
POST GET |
| Youtube downloader API | https://flowlycore.com/api/v1/tools/youtube/ |
POST |
Authentication
Flowly uses API keys to authenticate incoming requests. You can view, create, and regenerate your secret API keys in the API Keys Dashboard.
Keep your API keys secret
API keys carry privileges to deduct funds from your account balance. Do not share your API keys in public repositories, frontend JavaScript, or client-side applications.
How to Authenticate
Pass via standard HTTP Authorization header:
Authorization: Bearer YOUR_KEY
Standard parameter in form-data payload:
key=YOUR_KEY
Pass as URL query parameter in GET requests:
?key=YOUR_KEY
SMM Orders API
Endpoints to manage and place new service orders programmatically. Pass action to define the operation.
1. List Services
action: servicesReturns a list of all active services, pricing rates, min/max quantities, and refill/cancel capabilities.
Parameters
| Parameter | Type | Status | Description |
|---|---|---|---|
key |
string | Required | Your Flowly API Key |
action |
string | Required | Must be services |
Actual Response Format (200 OK)
[
{
"service": 1,
"name": "Instagram Followers [High Quality]",
"type": "default",
"category": "Instagram Followers",
"rate": "0.8500",
"min": 100,
"max": 100000,
"refill": true,
"cancel": false
},
{
"service": 2,
"name": "YouTube 4K Views [Retention 3-5 Min]",
"type": "default",
"category": "YouTube Views",
"rate": "1.4500",
"min": 500,
"max": 500000,
"refill": true,
"cancel": true
}
]
2. Create Order
action: addPlace a new service order. Charges are calculated and deducted automatically from your wallet balance.
Parameters
| Parameter | Type | Status | Description |
|---|---|---|---|
key |
string | Required | Your Flowly API Key |
action |
string | Required | Must be add |
service |
integer | Required | Service ID |
link |
string | Required | Target link/username/URL |
quantity |
integer | Required* | Quantity needed (for default and poll services) |
custom_data |
string | Optional | Custom data/comments (or pass 'comments') |
answer_number |
integer | Optional | Answer number (required only for poll services) |
Actual Response (200 OK)
{
"order": 14258
}
Actual Error Response (400)
{
"error": "Not enough funds on balance"
}
3. Check Order Status
action: statusCheck status of a single order ID or multiple order IDs (comma-separated, up to 100).
Parameters
| Parameter | Type | Status | Description |
|---|---|---|---|
key |
string | Required | Your Flowly API Key |
action |
string | Required | Must be status |
order |
integer | Optional | Single Order ID |
orders |
string | Optional | Comma-separated IDs (e.g. 101,102,103 - up to 100) |
Single Order Response
{
"charge": "0.8500",
"start_count": "1500",
"status": "In_progress",
"remains": "250",
"currency": "USD"
}
Multiple Orders Response
{
"14258": {
"charge": "0.8500",
"start_count": "1500",
"status": "Completed",
"remains": "0",
"currency": "USD"
},
"14259": {
"error": "Incorrect order ID"
}
}
4. Check Balance
action: balanceCheck your available account wallet balance in USD.
Actual Response Format
{
"balance": "85.4200",
"currency": "USD"
}
Code Examples
curl -X POST https://flowlycore.com/api/v2/ \
-d "key=YOUR_API_KEY" \
-d "action=add" \
-d "service=1" \
-d "link=https://instagram.com/p/abc1234" \
-d "quantity=1000"
import requests
url = "https://flowlycore.com/api/v2/"
payload = {
"key": "YOUR_API_KEY",
"action": "add",
"service": 1,
"link": "https://instagram.com/p/abc1234",
"quantity": 1000
}
response = requests.post(url, data=payload)
print(response.json())
<?php
$api_url = 'https://flowlycore.com/api/v2/';
$data = [
'key' => 'YOUR_API_KEY',
'action' => 'add',
'service' => 1,
'link' => 'https://instagram.com/p/abc1234',
'quantity' => 1000
];
$ch = curl_init($api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
const axios = require('axios');
const params = new URLSearchParams();
params.append('key', 'YOUR_API_KEY');
params.append('action', 'add');
params.append('service', '1');
params.append('link', 'https://instagram.com/p/abc1234');
params.append('quantity', '1000');
axios.post('https://flowlycore.com/api/v2/', params)
.then(res => console.log(res.data))
.catch(err => console.error(err));
Tools API
Dedicated micro-service endpoints for utility tools. These tools are independent of ordering services and follow a direct request/response structure.
Quota & Billing
Our APIs are designed to be cost-effective with generous free tiers for tools.
Daily Free Quota for Tools
You get 100 free requests every single day across all Tools APIs. Once you exhaust your daily limit, the cost per request will be deducted directly from your Wallet Balance.
| Tool Name | Price per request |
|---|---|
| Youtube downloader API | $0.002 |
Orders Billing
Service orders are always deducted directly from your wallet balance based on the service price and quantity ordered. The daily free limit does not apply to service orders.
402 Payment Required response.
Youtube downloader API API
POST /api/v1/tools/youtube/Extracts high-quality direct streaming and download links for YouTube videos and audio. Simply provide the YouTube video URL.
Request Parameters
| Parameter | Type | Status | Description |
|---|---|---|---|
url |
string | Required | The full YouTube video or shorts URL |
Actual Response Format (200 OK)
{
"success": true,
"video_title": "Relaxing Lo-Fi Beats to Study to",
"thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg",
"duration": 213,
"downloads": [
{
"quality": "1080p",
"ext": "mp4",
"url": "https://rr2---sn-...",
"filesize": 45281920
},
{
"quality": "720p",
"ext": "mp4",
"url": "https://rr2---sn-...",
"filesize": 22849200
},
{
"quality": "Audio 128kbps",
"ext": "m4a",
"url": "https://rr2---sn-...",
"filesize": 3418930
}
]
}
Code Example
import requests
url = "https://flowlycore.com/api/v1/tools/youtube/"
headers = {
"Authorization": "Bearer YOUR_API_KEY"
}
payload = {
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
}
response = requests.post(url, headers=headers, data=payload)
print(response.json())
Upcoming Flowly Tools
We are actively engineering new microservices to expand our developer utilities portfolio:
Instagram Downloader
Coming SoonTikTok Downloader
Coming SoonTwitter / X Media
Coming SoonAI Caption & Tags
Coming SoonAPI Key Management
Manage your keys from inside your dashboard: generate new keys, track request logs, or regenerate compromised credentials in seconds.
Dashboard API Access
Create, view, and manage your API keys, track real-time usage statistics, and monitor your 100 daily free tool quota.
Create named keys to distinguish traffic between production and test applications.
Instantly invalidate compromised keys and issue new ones without losing historical usage logs.
Revoke unused keys permanently to safeguard your wallet balance.
Errors & Status Codes
Flowly uses standard HTTP status codes along with descriptive JSON response bodies when an error occurs.
| HTTP Code | Meaning | Common Cause & Remedy |
|---|---|---|
| 200 OK | Success | Request was processed successfully. |
| 400 Bad Request | Validation Error | Missing required parameters (link, quantity, service), or invalid quantity range. |
| 401 Unauthorized | Auth Failure | Missing, disabled, or invalid API Key. |
| 402 Payment Required | Insufficient Balance | Balance is too low to cover order charge or free quota exhausted. |
| 429 Too Many Requests | Rate Limit | Exceeded request threshold. Slow down concurrent API calls. |
| 500 Server Error | Internal Error | An unexpected server issue occurred. Contact support. |