API
Documentation API
Une requête POST pour tout : commande, statut, liste des services, solde. Compatible Perfect Panel et SmartPanel.
https://stream-promotion.ru/api/v2POSTJSONUSDpar défaut, modifiable dans les paramètres- La requête est envoyée en GET. Seul POST est accepté.
- Les paramètres sont dans l’URL. Ils doivent être dans le corps de la requête, pas en query.
- Pas de User-Agent. Lors des tests via Postman ou curl, indiquez-le explicitement.
Vous êtes responsable de ce que vous envoyez via l’API. Lisez la description des méthodes avant de connecter.
Obtenir une clé
- Connectez-vous à votre compte.
- Ouvrez la section « Paramètres API ».
- Copiez la clé et l’adresse, ajoutez-les dans votre panel.
La liste des services arrive dans la langue choisie dans les paramètres API. La devise des prix se choisit au même endroit — USD par défaut.
Démarrage rapide
Testez la connexion avec une requête de solde — la plus simple, elle ne crée rien.
curl -X POST https://stream-promotion.ru/api/v2 \ -H "User-Agent: MyPanel/1.0" \ -d "key=VOTRE_CLE" \ -d "action=balance"
<?php
$ch = curl_init('https://stream-promotion.ru/api/v2');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'MyPanel/1.0');
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
'key' => 'VOTRE_CLE',
'action' => 'balance',
]));
$res = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($res); import requests
res = requests.post(
"https://stream-promotion.ru/api/v2",
data={"key": "VOTRE_CLE", "action": "balance"},
headers={"User-Agent": "MyPanel/1.0"},
timeout=30,
)
print(res.json()) const res = await fetch("https://stream-promotion.ru/api/v2", {
method: "POST",
headers: {
"Content-Type": "application/x-www-form-urlencoded",
"User-Agent": "MyPanel/1.0",
},
body: new URLSearchParams({
key: "VOTRE_CLE",
action: "balance",
}),
});
console.log(await res.json()); Réponse
{
"status": "success",
"balance": "0.03",
"currency": "USD"
} Méthodes
La méthode se choisit avec le paramètre action. La key est toujours obligatoire.
Créer une commande
La méthode principale. runs et interval répartissent la livraison : 7 lancements espacés de 1440 minutes étalent la commande sur une semaine.
Le jeu de paramètres dépend du type de service — choisissez-le dans la liste, le tableau se met à jour.
| Paramètre | Description |
|---|---|
keyobligatoire | Votre clé depuis les paramètres API |
actionobligatoire | add |
serviceobligatoire | Identifiant du service dans la liste |
linkobligatoire | Lien vers une chaîne, un stream ou une page |
quantityobligatoire | Quantité |
runsfacultatif | Nombre de lancements |
intervalfacultatif | Pause entre les lancements, en minutes. Nombre entier : 10, 20, 30, 60 |
Réponse
{
"status": "success",
"order": 32
}Commande avec commentaires
Type de commande distinct : au lieu d’une quantité, vous transmettez une liste de commentaires. Adapté aux mentions et commentaires personnalisés.
| Paramètre | Description |
|---|---|
keyobligatoire | Votre clé depuis les paramètres API |
actionobligatoire | add |
serviceobligatoire | Identifiant du package |
linkobligatoire | Lien vers une chaîne, un stream ou une page |
commentsobligatoire | Commentaires, un par ligne |
Réponse
{
"status": "success",
"order": 32
}Statut de la commande
| Paramètre | Description |
|---|---|
keyobligatoire | Votre clé depuis les paramètres API |
actionobligatoire | status |
orderobligatoire | Identifiant de la commande |
Réponse
{
"order": "32",
"status": "pending",
"charge": "0.27819",
"start_count": "0",
"remains": "0",
"currency": "USD"
}Statut de plusieurs commandes
Jusqu’à cent commandes en une requête — au lieu de cent appels séparés.
| Paramètre | Description |
|---|---|
keyobligatoire | Votre clé depuis les paramètres API |
actionobligatoire | status |
ordersobligatoire | Identifiants séparés par des virgules : 12,13,14 |
Réponse
{
"12": {
"order": "12",
"status": "completed",
"charge": "0.27819",
"currency": "USD"
},
"13": {
"error": "Incorrect order ID"
}
}Liste des services
Renvoie tous les services disponibles avec les prix. La langue des noms vient des paramètres API, les prix sont toujours en dollars.
| Paramètre | Description |
|---|---|
keyobligatoire | Votre clé depuis les paramètres API |
actionobligatoire | services |
Réponse
[
{
"service": "5",
"name": "Instagram Followers",
"rate": "0.9",
"min": "50",
"max": "10000",
"type": "Default",
"category": "Instagram"
}
]Solde
La méthode la plus simple — pratique pour vérifier que la clé fonctionne.
| Paramètre | Description |
|---|---|
keyobligatoire | Votre clé depuis les paramètres API |
actionobligatoire | balance |
Réponse
{
"status": "success",
"balance": "0.03",
"currency": "USD"
}Erreurs
En cas d’échec, la réponse contient le champ error avec une description. Le code HTTP reste 200 — vérifiez le corps de la réponse, pas le statut de la connexion.
{
"error": "Incorrect request"
} Nous montons un panel clé en main sur nos services. Solde et prix en dollars, compatible Perfect Panel et SmartPanel.
Écrire sur Telegram
Nos Services pour les Streamers
Nos Services pour les Créateurs de Contenu











