List and filter your own orders. v1
https://api.daosmm.com/apiX-API-Key header is required on every requestAdd the API key you were given as a header:
X-API-Key: <your_api_key>
If the key is missing or invalid you get 401 Unauthorized.
GET /api/orders
All parameters are optional:
| Parameter | Type | Description |
|---|---|---|
orderId | string | Filter by order number (matches your order id) |
link | string | Search within the link (partial, case-insensitive) |
status | string | Filter by order status (case-insensitive exact match, e.g. Completed, In progress) |
page | number | Page number (default 1) |
limit | number | Records per page (default 25, max 100) |
GET /api/orders
GET /api/orders?orderId=12345
GET /api/orders?link=instagram.com
GET /api/orders?status=Completed
GET /api/orders?status=Completed&link=instagram&page=2&limit=50
{
"data": [
{
"id": 8033015,
"link": "https://www.instagram.com/p/DYUBG8GolSY/",
"user": "faizanb",
"status": "completed",
"remains": 0,
"quantity": 65,
"service_id": 5804,
"start_count": 3,
"service_name": "Instagram Auto Likes [HQ Profiles] [Refill: 30 Days] [Instant Start]",
"service_type": "subscription",
"creation_type": "subscription",
"created_timestamp": 1778748724,
"created": "2026-05-14 08:52:04"
}
],
"pagination": { "page": 1, "limit": 25, "total": 1, "totalPages": 1 }
}
| Field | Description |
|---|---|
id | Order number |
link | Order link |
user | Account username |
status | Order status (e.g. completed, In progress) |
remains | Remaining |
quantity | Quantity |
service_id | Service id |
start_count | Start count |
service_name | Service name |
service_type | Service type (e.g. subscription, default) |
creation_type | Creation type |
created_timestamp | Creation time (Unix timestamp, seconds) |
created | Creation time (date-time string) |
| Code | Meaning | Reason |
|---|---|---|
| 200 | OK | Success |
| 401 | Unauthorized | Missing or invalid key |
| 429 | Too Many Requests | Rate limit exceeded |
retryAfterMs from the response and retry. For many records use
limit=100 and paginate with page, waiting ~1s between requests.
curl -H "X-API-Key: <key>" \
"https://api.daosmm.com/api/orders?link=instagram&limit=50"
// Node 18+ (built-in fetch)
const res = await fetch("https://api.daosmm.com/api/orders?link=instagram&limit=50", {
headers: { "X-API-Key": "<key>" },
});
if (!res.ok) throw new Error("HTTP " + res.status);
const data = await res.json();
console.log(data.pagination.total, data.data);
<?php
$ch = curl_init("https://api.daosmm.com/api/orders?link=instagram&limit=50");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: <key>"]);
$body = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($code !== 200) { throw new Exception("HTTP $code"); }
$data = json_decode($body, true);
echo $data["pagination"]["total"] . PHP_EOL;
foreach ($data["data"] as $o) {
echo $o["id"] . " " . $o["link"] . PHP_EOL;
}
import requests
r = requests.get(
"https://api.daosmm.com/api/orders",
headers={"X-API-Key": "<key>"},
params={"link": "instagram", "limit": 50},
)
r.raise_for_status()
data = r.json()
print(data["pagination"]["total"])
for o in data["data"]:
print(o["id"], o["link"])
import requests, time
def all_orders(key, base="https://api.daosmm.com/api"):
page, out = 1, []
while True:
r = requests.get(f"{base}/orders",
headers={"X-API-Key": key},
params={"page": page, "limit": 100})
if r.status_code == 429: # rate limited -> wait and retry
time.sleep(1); continue
r.raise_for_status()
j = r.json()
out += j["data"]
if page >= j["pagination"]["totalPages"]:
break
page += 1
time.sleep(1) # 1 request per second
return out
Contact us if you have any questions.