notpanel
ServicesTarifsFAQConcoursAPI
notpanel

Abonnés, likes et vues pour chaque plateforme.

Le catalogue combine des services opérés directement et la capacité de partenaires vérifiés. Disponibilité, délai, refill et drip-feed sont indiqués par service ; le routage et l’identité des partenaires restent confidentiels.

Produit

  • Services
  • Tarifs
  • Indice des prix
  • Programme d'affiliation

Ressources

  • API
  • Blog
  • FAQ
  • Statut

Entreprise

  • À propos
  • Pourquoi NotPanel
  • Nous contacter

Mentions légales

  • Conditions d'utilisation
  • Politique de confidentialité
  • Politique de remboursement

Langues

  • English
  • Español
  • Português
  • Русский
  • Türkçe
  • العربية
  • हिन्दी
  • Bahasa Indonesia
  • Français
  • 中文

© 2026 NotPanel. Tous droits réservés.

support@notpanel.com
notpanel
Documentation de l'API
+
Documentation de l'API

Introduction

  • Vue d'ensemble
  • Démarrage
  • Authentification
  • Limites de débit
  • Erreurs

Catalogue

  • Lister les services
  • Catalogue avancé
  • Types de service

Commandes

  • Passer une commande
  • Statut de commande
  • Devis de remboursement
  • Recomplément
  • Annuler

Compte

  • État du compte
  • Solde

Webhooks

  • Gérer les webhooks

Référence

  • Journal des modifications
  • SDK et bibliothèques

Besoin d'aide ?

support@notpanel.com →

Catalogue avancé des services

Renvoie un instantané paginé des services actifs avec les tarifs du compte et des métadonnées de découverte structurées. Utilisez l’action services historique lorsqu’un SDK revendeur exige le tableau en cache d’origine.

POSThttps://notpanel.com/api/v3action=catalog
Clé d'API requiseDébit limité (compte partagé + IP + action)Corps : application/x-www-form-urlencoded
action=catalog est un instantané de découverte. catalog_updated_at indique la mise à jour de métadonnées la plus récente du résultat filtré, pas un horodatage de prix garanti ni un devis. Le montant renvoyé par la réponse validée de action=add fait foi.

Paramètres

NomTypeDescription
keyRequisstringVotre clé API.
actionRequisstringDoit être la chaîne littérale "catalog".
pageintegerNuméro de page de 1 à 100000. Valeur par défaut : 1.
limitintegerLignes par page de 1 à 200. Valeur par défaut : 100.
languagelanguage codeLangue facultative du nom : en, es, pt, ru, tr, ar, hi, id, fr ou zh. pt désigne le portugais brésilien et zh le chinois simplifié. Omettez-la pour garder la structure historique en anglais. Les administrateurs peuvent vérifier ou affiner chaque nom.
searchstringRecherche sans distinction de casse dans le nom du service, ou ID numérique exact. Maximum 100 caractères.
platforminteger | slugID numérique ou slug de plateforme.
categoryinteger | slugID numérique ou slug de catégorie. Un slug exige platform ; un ID numérique peut être utilisé sans platform.
typestringType de service pris en charge exact, tel que default, custom_comments, package ou web_traffic.
sortstringpopular, price_asc, price_desc, time_asc, time_desc, name_asc ou newest. Valeur par défaut : popular.
refillbooleanFiltre selon la capacité de refill. Accepte 1, 0, true ou false.
dripfeedbooleanFiltre selon la capacité drip-feed. Accepte 1, 0, true ou false.
availablebooleanFiltre selon la disponibilité actuelle. Accepte 1, 0, true ou false ; action=add revérifie la disponibilité lors de la validation.
min_rateUSD decimalTarif USD minimum non négatif du compte par 1 000 unités. Utilisez un nombre décimal canonique de 0 à 999999999999.99999999, avec au plus 12 chiffres entiers et 8 décimales ; les signes et exposants sont refusés.
max_rateUSD decimalTarif USD maximum non négatif du compte par 1 000 unités. Il ne peut pas être inférieur à min_rate. Utilisez un nombre décimal canonique de 0 à 999999999999.99999999, avec au plus 12 chiffres entiers et 8 décimales ; les signes et exposants sont refusés.

Exemple de requête

Remplacez YOUR_API_KEY par la clé générée sur la page API de votre tableau de bord.

curl -X POST https://notpanel.com/api/v3 \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "key=YOUR_API_KEY&action=catalog&platform=instagram&available=true&sort=price_asc&limit=2&language=hi"
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: "catalog",
    platform: "instagram",
    available: "true",
    sort: "price_asc",
    limit: "2",
    language: "hi",
  }),
});

const data = await res.json();
console.log(data);
import requests

res = requests.post(
  "https://notpanel.com/api/v3",
  data={
    "key": "YOUR_API_KEY",
    "action": "catalog",
    "platform": "instagram",
    "available": "true",
    "sort": "price_asc",
    "limit": "2",
    "language": "hi",
},
)
print(res.json())
<?php
$body = http_build_query([
    'key' => 'YOUR_API_KEY',
    'action' => 'catalog',
    'platform' => 'instagram',
    'available' => 'true',
    'sort' => 'price_asc',
    'limit' => '2',
    'language' => 'hi',
]);

$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));

Exemple de réponse

{
  "as_of": "2026-08-25T10:30:00.000Z",
  "requested_language": "hi",
  "catalog_updated_at": "2026-08-25T09:45:12.000Z",
  "total": 1,
  "page": 1,
  "per_page": 2,
  "total_pages": 1,
  "lowest_rate_per_1000": "0.50",
  "currency": "USD",
  "items": [
    {
      "service": "42547",
      "name": "Instagram कस्टम कमेंट्स",
      "canonical_name": "Instagram Custom Comments",
      "name_language": "hi",
      "description": "Custom comments for a public post",
      "type": "custom_comments",
      "rate": "0.50",
      "min": "10",
      "max": "5000",
      "platform": {
        "id": 1,
        "slug": "instagram",
        "name": "Instagram"
      },
      "category": {
        "id": 12,
        "slug": "comments",
        "name": "Comments"
      },
      "refill": true,
      "dripfeed": false,
      "available": true,
      "cancel": true,
      "cancel_mode": "grace_window",
      "cancel_window_seconds": 15,
      "average_time": "0-30 minutes",
      "average_time_minutes": 18,
      "average_time_sample_size": 24,
      "average_time_basis": "measured",
      "input_fields": [
        {
          "key": "comments",
          "label": "Comments",
          "type": "textarea",
          "required": true,
          "placeholder": "One comment per line. Each line is a separate comment."
        }
      ],
      "updated_at": "2026-08-25T09:45:12.000Z"
    }
  ]
}

Erreurs courantes

StatutCorpsCause
400{"error":"A platform is required when category is a slug"}Un slug de catégorie est ambigu sans slug ou ID de plateforme. Fournissez platform ou utilisez l’ID numérique de la catégorie.
400{"error":"Invalid catalog sort"}La valeur sort ne correspond à aucun mode de tri documenté.
400{"error":"language must be one of en, es, pt, ru, tr, ar, hi, id, fr, zh","error_code":"INVALID_LANGUAGE"}La valeur de langue n’est pas prise en charge. Utilisez l’un des dix codes de langue documentés pour les noms de services.

Filtres et disponibilité

Combinez les filtres de recherche, plateforme, catégorie, type, capacité, disponibilité et tarif. Un slug de catégorie est délimité par platform ; un ID numérique de catégorie est globalement sans ambiguïté. available est un signal de découverte actuel, tandis que action=add reste le contrôle final d’acceptation.

Réponse et fraîcheur

La réponse contient as_of, les totaux de pagination, lowest_rate_per_1000 au tarif du compte et les services. catalog_updated_at est la dernière mise à jour des métadonnées du jeu filtré, pas un devis. input_fields ne liste que les champs supplémentaires propres au service ; les champs add communs et les règles de type s’appliquent encore. Les champs de délai indiquent une moyenne mesurée, estimée ou inconnue. Le mode et la fenêtre d’annulation sont des métadonnées de découverte ; le add validé contrôle le montant et les horodatages réels. Le délai moyen mesure le temps entre la commande et la première livraison positive observée, y compris les commandes actives et progressives. Il estime le début, pas la fin. Les moyennes génériques du fournisseur ne sont pas utilisées.

Découverte localisée

Fournissez language pour rechercher et trier avec un nom localisé avec une terminologie de marché sélectionnée, tout en recherchant aussi le nom canonique anglais. La réponse inclut alors requested_language au niveau supérieur et canonical_name avec name_language pour chaque élément. name_language indique la langue réellement renvoyée ; en signifie que la traduction demandée manquait ou était obsolète et que le nom anglais a été utilisé. L’ID du service reste la seule clé d’intégration stable. Les administrateurs peuvent vérifier ou affiner chaque nom.