Aller au contenu
4SNS PLUS

Panel SMM API : documentation

Panel SMM avec API v2 standard : commandez les services 4SNS PLUS depuis votre bot Telegram ou votre propre panel.

Qu'est-ce que l'API d'un panel SMM ?

L'API d'un panel SMM permet à un programme de récupérer la liste des services, de passer des commandes et de consulter le statut des commandes et le solde sans passer par le site. 4SNS PLUS prend en charge le format standard d'API v2 pour panels SMM utilisé par de nombreux panels et bots : le code déjà connecté à un autre panel fonctionne aussitôt en changeant simplement l'URL et la clé.

Les prix et le solde de l'API sont les mêmes que sur le site. Le rate de la réponse services correspond au prix pour 1,000 (dollars américains) de la liste de prix, et les commandes passées avec add sont débitées de votre solde exactement comme les commandes web et apparaissent aussi dans l'historique des commandes de votre espace. Les montants rendus par les commandes annulées ou partielles reviennent sur ce même solde.

L'essentiel

Endpointhttps://4snsplus.com/api/v2
MéthodePOST
Format de requêteChamps de formulaire (application/x-www-form-urlencoded, multipart) ou corps JSON
RéponseJSON ; les erreurs arrivent aussi en HTTP 200 avec un champ error
AuthentificationParamètre key (votre clé API) à chaque requête
Limite de requêtes300 requêtes par minute et par clé
DeviseDollar américain (USD)

Exemple de requête

curl -X POST https://4snsplus.com/api/v2 \
  -d key=YOUR_API_KEY \
  -d action=balance
import requests

r = requests.post("https://4snsplus.com/api/v2", data={
    "key": "YOUR_API_KEY",
    "action": "add",
    "service": 2210,
    "link": "https://t.me/yourchannel",
    "quantity": 1000,
})
print(r.json())  # {"order": 31877} or {"error": "..."}

Comment obtenir une clé API ?

Dès que votre première recharge est créditée sur votre solde, vous pouvez créer une clé API depuis le menu Clé API de votre espace. La clé ne s'affiche qu'une seule fois à sa création : conservez-la en lieu sûr. Créer une nouvelle clé désactive immédiatement la précédente.

La clé est distincte du jeton de votre compte. Mettez uniquement la clé API dans votre bot ou votre serveur, jamais le jeton du compte. Si vous pensez que votre clé a été exposée, créez-en simplement une nouvelle sur l'écran Clé API.

Liste des services (services)

Renvoie tous les services que vous pouvez commander. rate est le prix pour 1,000 (USD) et, lorsque type vaut Package, le prix d'un pack. Lorsque type vaut Custom Comments, vous envoyez une liste de commentaires au lieu d'une quantité. category est le nom de la plateforme suivi du nom du groupe.

ParamètreDescription
keyVotre clé API
actionservices

Exemple de réponse

[
  {
    "service": 2210,
    "name": "Members - 30 Days Non Drop - 30 Days Refill",
    "type": "Default",
    "category": "Telegram - Members (30 Days Non Drop)",
    "rate": "1.4300",
    "min": "100",
    "max": "50000",
    "refill": true,
    "cancel": false
  }
]

Passer une commande (add)

Passe une commande et débite le montant de votre solde. Le montant est le prix pour 1,000 multiplié par la quantité ; pour Package c'est le prix du pack, et pour Custom Comments le nombre de lignes de commentaires fait office de quantité. Les commandes sont possibles sur les comptes dont la première recharge est créditée. Le champ order de la réponse est l'ID de votre commande.

ParamètreDescription
keyVotre clé API
actionadd
serviceID du service (service issu de services)
linkLien public. Pour Telegram : t.me/name, lien d'invitation privé t.me/+code, publication t.me/name/123, bot t.me/botname. @name est aussi accepté
quantityQuantité (entre min et max). Inutile pour Package et Custom Comments
commentsCustom Comments uniquement. Un commentaire par ligne, jusqu'à 10,000 lignes et 500 caractères par ligne

Exemple de réponse

{
  "order": 31877
}

Statut d'une commande (status)

Le statut d'une commande. charge est le montant réellement payé après remboursements (USD, 6 décimales), start_count le compteur au démarrage de la commande et remains la quantité pas encore livrée.

ParamètreDescription
keyVotre clé API
actionstatus
orderID de la commande

Exemple de réponse

{
  "charge": "1.430000",
  "start_count": "8120",
  "status": "In progress",
  "remains": "410",
  "currency": "USD"
}

Statut de plusieurs commandes (status, orders)

Vérifie jusqu'à 100 commandes à la fois, avec les ID de commande séparés par des virgules. Les ID inexistants ou qui n'appartiennent pas à votre compte reçoivent une erreur à leur place.

ParamètreDescription
keyVotre clé API
actionstatus
ordersListe d'ID de commande, par exemple 1,10,100

Exemple de réponse

{
  "1": { "charge": "0.300000", "start_count": "120", "status": "Completed", "remains": "0", "currency": "USD" },
  "10": { "error": "Incorrect order ID" }
}

Demander un remplacement (refill)

Pour la commande d'un service avec période de remplacement terminée en Completed ou Partial, faites la demande pendant la période de remplacement comptée à partir de la fin. Chaque commande peut avoir une demande ouverte, avec 24 heures entre deux demandes.

ParamètreDescription
keyVotre clé API
actionrefill
orderID de la commande

Exemple de réponse

{
  "refill": 512
}

Statut du remplacement (refill_status)

Le statut d'une demande de remplacement.

ParamètreDescription
keyVotre clé API
actionrefill_status
refillID du remplacement (refill issu de la réponse refill)

Exemple de réponse

{
  "status": "Completed"
}

Solde (balance)

Votre solde (USD, 6 décimales).

ParamètreDescription
keyVotre clé API
actionbalance

Exemple de réponse

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

Valeurs de statut des commandes

PendingReçue. En cours de transmission, en attente de démarrage ou un opérateur vérifie le résultat de la transmission
In progressEn cours de livraison
CompletedEntièrement livrée
PartialPartiellement livrée. La partie non livrée est remboursée sur votre solde
CanceledNon livrée. Remboursement intégral sur votre solde

Valeurs de statut du remplacement

PendingDemande de remplacement reçue
In progressRemplacement en cours de livraison
CompletedRemplacement livré
RejectedLa demande de remplacement n'a pas été acceptée

Messages d'erreur

Les erreurs arrivent en JSON avec un champ error dans une réponse HTTP 200. Dans votre code, vérifiez d'abord le champ error.

{
  "error": "Not enough funds on balance"
}
Invalid API keyClé absente, incorrecte ou remplacée par une nouvelle clé
Too many requestsPlus de 300 requêtes par minute. Réessayez dans un instant
Incorrect actionLa valeur de action ne figure pas dans la liste ci-dessus
Add funds firstCommande depuis un compte dont la première recharge n'est pas encore créditée
Incorrect service IDAucun service disponible avec cet ID
Incorrect linkLien vide ou qui n'est pas une adresse web
Quantity out of rangeSous la quantité minimale ou au-dessus de la quantité maximale
Incorrect commentsCustom Comments vide ou au-delà de 10,000 lignes ou de 500 caractères par ligne
Not enough funds on balanceSolde inférieur au montant de la commande. Rechargez puis commandez à nouveau
Incorrect order IDCet ID de commande n'appartient pas à votre compte
Refill is not available for this serviceLe service n'a pas de période de remplacement
Order is not finished yetLe remplacement est possible une fois la commande en Completed ou Partial
Refill period has endedLa période de remplacement, comptée à partir de la fin de la commande, est écoulée
Refill already requestedCette commande a déjà une demande de remplacement ouverte
Refill already requested, try again later24 heures ne se sont pas encore écoulées depuis la dernière demande
Incorrect refill IDCet ID de remplacement n'appartient pas à votre compte

Comment connecter l'API d'un panel SMM à un bot Telegram ?

1. Enregistrez la liste des services

Appelez services quelques fois par jour et enregistrez dans vos propres données l'ID, le nom, le rate, le min et le max de chaque service. Calculez le prix affiché à vos clients en ajoutant votre marge au rate, et utilisez l'ID de service enregistré tel quel pour commander.

2. Vérifiez la quantité et le lien avant de commander

Vérifier d'abord que la quantité est entre min et max et que le lien est au format t.me réduit les erreurs Quantity out of range et Incorrect link. Il est aussi utile de consulter votre solde avec balance à l'avance.

3. Vérifiez le statut par lots

Vérifiez les commandes en cours toutes les quelques minutes par lots de 100 avec le paramètre orders. Vous restez ainsi largement sous la limite de 300 requêtes par minute et par clé. Quand une commande passe en Completed, Partial ou Canceled, informez votre client du résultat.

4. Remplacement uniquement pour les commandes terminées

Quand la commande d'un service avec remplacement passe en Completed ou Partial, vous pouvez envoyer refill. Enregistrez l'ID de remplacement de la réponse et suivez l'avancement avec refill_status.