API v2
SMM-HELPER API
API SMM standard v2. Aggiungi l'URL e la tua chiave al pannello che gestisci e servizi, ordini e stati si collegano così come sono.
- URL di base
https://smm-helper.com/api/v2- Richiesta
- POST consigliato (GET funziona) · form (application/x-www-form-urlencoded) o JSON
- Autenticazione
- parametro key in ogni richiesta
- Risposta
- JSON. Gli errori sono {"error": "message"}
- Valuta
- USD (dedotti dal tuo credito)
- Limite di richieste
- 300 chiamate al minuto per chiave
- Saldo
- services, deposit, deposit_status e balance funzionano prima della prima ricarica (configurazione del pannello, ricariche). Tutto il resto funziona dopo che hai ricaricato
Collega il pannello che gestisci
Qualsiasi pannello che usa l'API SMM standard v2 (Perfect Panel e altri) può aggiungerci come fornitore.
- 1
Aggiungi fornitore
Admin > Providers > Add. URL API: https://smm-helper.com/api/v2, chiave API: la tua chiave.
- 2
Importa i servizi
Carica il nostro elenco di servizi, scegli i servizi e imposta il tuo prezzo di vendita. Gli ID dei nostri servizi non cambiano.
- 3
Ricarica il saldo
Gli ordini vengono pagati dal tuo saldo qui. Ricarica in Dashboard > Aggiungi fondi.
Esempio di codice: aggiungere un ordine
Ordina 1.000 del servizio #2145 (Instagram Real Followers - APP Data - Instant - Speed : 100-300K/D - NoRefill). Sostituisci YOUR_API_KEY con la tua chiave.
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=add \ -d service=2145 \ -d link=https://www.tiktok.com/@yourbrand/video/123 \ -d quantity=1000
<?php
$ch = curl_init('https://smm-helper.com/api/v2');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'add',
'service' => 2145,
'link' => 'https://www.tiktok.com/@yourbrand/video/123',
'quantity' => 1000,
]),
]);
$res = json_decode(curl_exec($ch), true);
curl_close($ch);
echo $res['order'] ?? $res['error'];import requests
res = requests.post("https://smm-helper.com/api/v2", data={
"key": "YOUR_API_KEY",
"action": "add",
"service": 2145,
"link": "https://www.tiktok.com/@yourbrand/video/123",
"quantity": 1000,
}, timeout=30).json()
print(res.get("order") or res.get("error"))const res = await fetch("https://smm-helper.com/api/v2", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
key: process.env.SMM_HELPER_API_KEY,
action: "add",
service: 2145,
link: "https://www.tiktok.com/@yourbrand/video/123",
quantity: 1000,
}),
}).then((r) => r.json());
console.log(res.order ?? res.error);action=servicesElenco dei servizi
Tutti i servizi che puoi ordinare. rate è in USD per 1.000. Gli ID dei servizi non cambiano, quindi puoi mapparli nel tuo pannello così come sono.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "services" |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=services
Risposta
[
{
"service": 2145,
"name": "Instagram Real Followers - APP Data - Instant - Speed : 100-300K/D - NoRefill",
"type": "Default",
"category": "Instagram - Follower (Working)",
"rate": "0.308",
"min": "10",
"max": "1000000",
"refill": false,
"cancel": true
},
{
"service": 2146,
"name": "Instagram Followers - Old Accounts With Posts - Instant - Speed : 1K/D - NoRefill",
"type": "Default",
"category": "Instagram - Follower (Working)",
"rate": "0.8624",
"min": "100",
"max": "10000",
"refill": false,
"cancel": true
},
…
]action=addAggiungi ordine
Il costo viene detratto dal saldo e viene restituito l'ID dell'ordine. Se una parte dell'ordine non può essere consegnata, la quantità non consegnata viene rimborsata sul saldo.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "add" |
| service | Sì | ID del servizio (service da services) |
| link | Sì | Link al profilo, post, video o pagina (o @username per alcuni servizi sui profili) |
| quantity | Sì | Quantità entro il min e il max del servizio (da omettere per Custom Comments) |
| comments | No | Solo Custom Comments: commenti separati da \n. Il numero di righe è la quantità |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=add \ -d service=2145 \ -d link=https://www.tiktok.com/@yourbrand/video/123 \ -d quantity=1000
Risposta
{
"order": 23501
}Per i servizi Custom Comments (es. #2124) invia comments (uno per riga) invece di quantity.
action=statusStato dell'ordine
Avanzamento di un ordine. charge è l'importo effettivamente speso (dopo i rimborsi), remains è la quantità rimanente, progress è la percentuale completata e delivered è la quantità consegnata. Aggiornato ogni minuto.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "status" |
| order | Sì | ID dell'ordine |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=status \ -d order=23501
Risposta
{
"charge": "0.31",
"start_count": "1520",
"status": "In progress",
"remains": "240",
"progress": "76",
"delivered": "760",
"currency": "USD"
}action=statusStato di più ordini
Fino a 100, separati da virgole. Ogni ordine ha il proprio risultato; gli ID sconosciuti ricevono un errore nella propria posizione.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "status" |
| orders | Sì | ID degli ordini separati da virgole (fino a 100) |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=status \ -d orders=23501,23502,99999
Risposta
{
"23501": {
"charge": "0.31",
"start_count": "1520",
"status": "Completed",
"remains": "0",
"progress": "100",
"delivered": "1000",
"currency": "USD"
},
"23502": {
"charge": "0.18",
"start_count": "870",
"status": "Partial",
"remains": "400",
"progress": "60",
"delivered": "600",
"currency": "USD"
},
"99999": {
"error": "Incorrect order ID"
}
}action=cancelAnnulla (interrompi) ordini
Interrompe gli ordini in corso. Prima dell'avvio: rimborso completo; in corso: la quantità non consegnata viene rimborsata e l'ordine termina come Canceled o Partial. Gli ordini terminati non possono essere annullati.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "cancel" |
| orders | Sì | ID degli ordini separati da virgole (fino a 100; order funziona anche per uno solo) |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=cancel \ -d orders=23501,23502
Risposta
[
{
"order": 23501,
"cancel": 1
},
{
"order": 23502,
"cancel": {
"error": "Order is already completed or canceled"
}
}
]action=refillRefill di un ordine
Richiede un refill di un ordine completato o parziale su un servizio con refill. Per ogni ordine può essere attivo un solo refill e una nuova richiesta è possibile 24 ore dopo l'ultima.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "refill" |
| order | Sì | ID dell'ordine (oppure orders: fino a 100 ID separati da virgole) |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=refill \ -d order=23501
Risposta
{
"refill": 1
}action=refill_statusStato del refill
Stato di un refill richiesto: Pending, In progress, Completed o Rejected.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "refill_status" |
| refill | Sì | ID del refill (oppure refills: fino a 100 ID separati da virgole) |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=refill_status \ -d refill=1
Risposta
{
"status": "Completed"
}action=depositCrea una ricarica
Crea una ricarica in USDT (TRC20). Invia esattamente amount (6 decimali) ad address e viene accreditata automaticamente (più il bonus, se previsto), di solito entro 1 o 2 minuti. Minimo 25 USD, massimo 5.000 USD, una sola ricarica in attesa alla volta, valida fino a expires_at.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "deposit" |
| amount | Sì | Importo in USD (da 25 a 5.000) |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=deposit \ -d amount=300
Risposta
{
"deposit": "K7Q2M9XD",
"status": "Pending",
"currency": "USDT",
"network": "TRC20",
"address": "TXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"amount": "300.776583",
"bonus": "15.03",
"credited": "0.00",
"txid": null,
"created_at": "2026-10-07T06:41:14.203Z",
"expires_at": "2026-10-07T07:41:14.202Z"
}action=deposit_statusStato della ricarica
Stato di una ricarica. Completed significa che credited e bonus sono stati aggiunti al saldo. Pending · Completed · Expired · Canceled · Rejected.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "deposit_status" |
| deposit | Sì | Codice della ricarica (deposit nella risposta di deposit, es. K7Q2M9XD) |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=deposit_status \ -d deposit=K7Q2M9XD
Risposta
{
"deposit": "K7Q2M9XD",
"status": "Completed",
"currency": "USDT",
"network": "TRC20",
"address": "TXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"amount": "300.776583",
"bonus": "15.03",
"credited": "300.776583",
"txid": "4c1f…e93a",
"created_at": "2026-10-07T06:41:14.203Z",
"expires_at": "2026-10-07T07:41:14.202Z"
}action=balanceSaldo
Saldo attuale in USD.
| Parametro | Obbligatorio | Descrizione |
|---|---|---|
| key | Sì | La tua chiave API |
| action | Sì | "balance" |
Richiesta
curl -X POST https://smm-helper.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=balance
Risposta
{
"balance": "1250.40",
"currency": "USD"
}Stati degli ordini
| Pending | Ricevuto, inizia a breve |
| Processing | In preparazione |
| In progress | In consegna |
| Completed | Completato |
| Partial | Consegnato in parte; il resto viene rimborsato sul saldo |
| Canceled | Annullato; rimborsato interamente sul saldo |
Errori
Gli errori arrivano come {"error": "…"}. Solo gli errori di chiave e di limite di richieste usano HTTP 401/429; gli altri restituiscono 200.
| error | HTTP | Causa |
|---|---|---|
| The API is available after your first top-up … | 200 | Chiamata diversa da services, deposit, deposit_status o balance prima della prima ricarica |
| Invalid API key | 401 | Chiave mancante o errata (inclusa una vecchia chiave dopo la rigenerazione) |
| Too many requests | 429 | Più di 300 chiamate al minuto per chiave |
| Incorrect request | 200 | action mancante o sconosciuta |
| Incorrect service ID | 200 | service non è un numero |
| This service is not available. | 200 | Il servizio non è in vendita |
| Enter the profile, channel or page link, or the @username. | 200 | link vuoto o non valido come link o @username (servizi sui profili) |
| Enter the full link to the post, video or page. | 200 | link vuoto o non valido (altri servizi) |
| Quantity must be between {min} and {max}. | 200 | quantity fuori dal min e max del servizio |
| Please enter at least one comment. | 200 | Custom Comments senza comments |
| Not enough credit. | 200 | Saldo insufficiente (ricarica) |
| Incorrect order ID | 200 | Ordine non tuo o ID sconosciuto |
| Order is already completed or canceled | 200 | cancel: l'ordine è già terminato |
| This order can't be canceled now | 200 | cancel: il sistema di evasione non può interromperlo ora |
| Minimum deposit is 25 USDT. | 200 | deposit: below the minimum |
| You already have a pending deposit. … | 200 | deposit: c'è già una ricarica in attesa (vedi deposit nella risposta) |
| Incorrect deposit ID | 200 | deposit_status: codice non tuo o sconosciuto |