Catalogue
Lister les services
Liste tous les services que vous pouvez commander, avec votre propre prix, les limites, les étiquettes, les champs supplémentaires, les limites d'alimentation progressive et la disponibilité. Chaque service est un objet, et tous les champs des versions précédentes sont toujours là.
https://notpanel.com/api/v3action=services- Clé d'API requise
- Limite de requêtes atteinte
- Corps :
application/x-www-form-urlencoded
Paramètres
Toujours envoyé
keystringRequis- Votre clé API.
actionstringRequisservicesDoit être la chaîne littérale « services ».
Paramètres de l'action
languagestringFacultatif- Langue des noms. Omettez-la pour l'anglais. Le nom anglais figure toujours dans canonical_name.en · es · pt · ru · tr · ar · hi · id · fr · zh
servicestring (CSV)Facultatif- Ne renvoie que ces services. Jusqu'à 100 ID de service séparés par des virgules.
curl -X POST https://notpanel.com/api/v3 \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "key=YOUR_API_KEY&action=services&service=7,12"const res = await fetch("https://notpanel.com/api/v3", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
key: "YOUR_API_KEY",
action: "services",
service: "7,12",
}),
});
const data = await res.json();
console.log(data);import requests
res = requests.post(
"https://notpanel.com/api/v3",
data={
"key": "YOUR_API_KEY",
"action": "services",
"service": "7,12",
},
)
print(res.json())<?php
$body = http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'services',
'service' => '7,12',
]);
$response = file_get_contents('https://notpanel.com/api/v3', false, stream_context_create([
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => $body,
'ignore_errors' => true,
],
]));
print_r(json_decode($response, true));
Remplacez YOUR_API_KEY par la clé de votre page API.
[
{
"service": "7",
"name": "Instagram Followers",
"type": "Default",
"category": "Instagram Followers",
"rate": "1.20",
"min": "100",
"max": "10000",
"refill": true,
"cancel": true,
"dripfeed": true,
"type_key": "default",
"canonical_name": "Instagram Followers",
"name_language": "en",
"platform": "instagram",
"tags": ["refill", "cancel", "drip_feed"],
"fields": [],
"drip_feed": {
"mode": "batches",
"min_runs": 2,
"max_runs": 100,
"min_interval_minutes": 1,
"max_interval_minutes": 1440,
"max_total_minutes": 2880
},
"step": 1,
"availability": "available",
"average_time_minutes": 30
},
{
"service": "12",
"name": "Telegram Post Reactions",
"type": "Default",
"category": "Telegram Reactions",
"rate": "0.90",
"min": "10",
"max": "50000",
"refill": false,
"cancel": false,
"dripfeed": false,
"type_key": "default",
"canonical_name": "Telegram Post Reactions",
"name_language": "en",
"platform": "telegram",
"tags": ["reactions"],
"fields": [
{
"key": "reactions",
"kind": "reactions",
"required": false,
"label": "Reactions",
"allowed": ["👍", "👎", "❤️", "🔥", "🥰", "👏", "😁", "🤔", "🤯", "😱", "🤬", "😢", "🎉", "🤩", "🤮", "💩", "🙏", "👌", "🕊️", "🤡", "🥱", "🥴", "😍", "🐳", "❤️🔥", "🌚", "🌭", "💯", "🤣", "⚡", "🍌", "🏆", "💔", "🤨", "😐", "🍓", "🍾", "💋", "🖕", "😈", "😴", "😭", "🤓", "👻", "👨💻", "👀", "🎃", "🙈", "😇", "😨", "🤝", "✍️", "🤗", "🫡", "🎅", "🎄", "☃️", "💅", "🤪", "🗿", "🆒", "💘", "🙉", "🦄", "😘", "💊", "🙊", "😎", "👾", "🤷♂️", "🤷", "🤷♀️", "😡"],
"max_distinct": 11,
"modes": ["mix", "exact"]
}
],
"drip_feed": null,
"step": 1,
"availability": "available",
"average_time_minutes": null
}
]Erreurs
- 400
{"error":"Invalid language: not_allowed","error_code":"INVALID_PARAMETER","retryable":false,"details":{"param":"language","rule":"not_allowed"}}La langue ne fait pas partie des codes de langue pris en charge.
- 400
{"error":"Maximum 100 IDs per request","error_code":"TOO_MANY_IDS","retryable":false}La liste de services contient plus de 100 ID.
- 429
{"error":"Rate limit exceeded","error_code":"API_RATE_LIMITED","retryable":true,"retry_after":12}Plus de 10 requêtes en une minute. Attendez le nombre de secondes indiqué dans Retry-After.
Champs de la réponse
La réponse est un tableau avec un objet par service. Chaque champ des versions précédentes reste inchangé ; tags, fields, drip_feed, step, availability et average_time_minutes sont nouveaux, et cancel signifie désormais ce qu'il dit.
Champs de la réponse
serviceinteger- ID numérique stable du service. Utilisez-le comme
servicedansadd. namestring- Nom du service dans la langue demandée.
typestring- Nom du type de service. Pour la logique, utilisez
type_key. categorystring- Nom de la catégorie.
ratestring- Votre propre prix pour 1 000 unités en USD, sous forme de chaîne. Il inclut déjà la remise de votre compte. Pour un pack, c'est le prix d'une commande.
mininteger- Plus petite quantité pour une commande.
maxinteger- Plus grande quantité pour une commande.
refillbooleantruelorsque la recharge fonctionne pour ce service via l'API.cancelbooleantruelorsque les demandes d'annulation sont prises en charge après les 15 premières secondes. L'annulation instantanée du début fonctionne sur toutes les commandes et n'est pas indiquée ici.dripfeedbooleantruelorsque le service accepte l'alimentation progressive, soit avecrunsetinterval, soit avecdrip_feed_total_minutes.type_keystring- Clé de type stable, comme
defaultoucustom_comments. Elle indique quels champs supplémentaires attendre. canonical_namestring- Le nom anglais, même lorsque
languageest défini. name_languagestring- Langue de
name. platformstring | null- Clé de plateforme, comme
instagram, ounulllorsque le service n'en a pas. tagsstring[]- Courtes étiquettes décrivant ce que le service propose. Voir la liste ci-dessous.
fieldsobject[]- Entrées supplémentaires acceptées par le service, avec leurs limites. Vide lorsque seuls le lien et la quantité sont nécessaires.
drip_feedobject | null- Limites d'alimentation progressive, ou
nulllorsque le service n'en a pas. stepinteger- La quantité doit être un multiple de ce nombre.
availabilitystringavailableoupaused. Voir Disponibilité ci-dessous.average_time_minutesinteger | null- Nombre moyen de minutes avant le début de la livraison, ou
nulllorsque trop peu de commandes sont connues.
Étiquettes
tags permet de filtrer la liste sans lire chaque champ. Un service a une étiquette pour chaque chose qu'il propose.
Étiquettes
refill- La recharge fonctionne via l'API.
cancel- Les demandes d'annulation sont prises en charge, pas seulement l'annulation instantanée.
drip_feed- Le service accepte l'alimentation progressive.
reactions- Le service accepte un champ
reactions. last_posts- Le service accepte un champ
last_posts. poll_answer- Le service accepte un champ
answer_number. Chaque autre champ supplémentaire ajoute une étiquette portant son propre nom, par exemplecomments.
Champs supplémentaires
fields décrit chaque entrée supplémentaire acceptée par un service : sa clé, son type, son caractère obligatoire et ses limites. Envoyez chaque champ par sa clé dans add. Les réactions listent les emoji autorisés et les modes. La page suivante explique chaque champ et ses règles.
Limites d'alimentation progressive
drip_feed vaut null ou prend l'une de deux formes. Les services batches acceptent un nombre d'exécutions et les minutes entre elles. Les services unit_delay répartissent toute la commande sur une durée totale. Dans les deux cas, la commande entière peut durer au plus 48 heures (2880 minutes).
{
"mode": "batches",
"min_runs": 2,
"max_runs": 100,
"min_interval_minutes": 1,
"max_interval_minutes": 1440,
"max_total_minutes": 2880
}{
"mode": "unit_delay",
"max_total_minutes": 2880
}Disponibilité
Erreurs de service lors de la commande
add renvoie ces erreurs lorsque le service choisi ne peut pas accepter de commande.
- 404
SERVICE_NOT_FOUND
Service not foundAucun service n'a cet ID, ou il n'est pas disponible pour vous. Corrigez d'abord la requête.
- 410
SERVICE_DISCONTINUED
Service has been discontinuedLe service a été abandonné. Corrigez d'abord la requête.
- 409
SERVICE_PAUSED
Service is temporarily unavailableLe service est en pause pour le moment. Réessayez plus tard. Réessayer peut aider.
Autres actions de lecture
action=catalog renvoie les services sous forme de liste paginée, avec leur plateforme, leur catégorie, leur délai moyen et leurs champs de commande. Filtres facultatifs : page, limit, search, platform, category, type, refill, dripfeed, available, min_rate, max_rate, sort et language. catalog est limité à 30 requêtes par minute et par compte.
action=account_status renvoie vos dépenses cumulées, votre palier de limite de l'API et votre remise.