Das Wichtigste
Das Anfrageformat der Standard SMM Panel API v2, ihre 6 actions, Beispielantworten, Fehlermeldungen und Anfragelimits, geschrieben für Reseller.
Eine SMM Panel API ist eine Schnittstelle, die Bestellungen automatisch aus einem anderen Panel oder Ihrer eigenen Software aufgibt und deren Status prüft. 1PANEL PLUS nutzt die Standard SMM Panel API v2, wenn Sie also bereits Code haben, der mit einem anderen Panel verbunden ist, ändern Sie einfach Adresse und Schlüssel und sind sofort verbunden. API und Website nutzen dieselben Services, dieselben Preise pro 1,000 und dasselbe Guthaben.
Wer nutzt eine SMM Panel API?
- Reseller: listen Services in ihrem eigenen Panel und leiten Kundenbestellungen automatisch weiter
- Agenturen: geben Bestellungen für viele Kanäle auf einmal zu festen Zeiten auf
- Entwickler: bauen Skripte, die bestellen, wenn ein Stream startet oder ein neues Video hochgeladen wird
- Betreiber: führen Guthaben und Bestellstatus in ihrem eigenen Dashboard zusammen
Wie erhalte ich einen API Schlüssel?
Erstellen Sie ihn auf der Seite API Schlüssel in Ihrem Dashboard, nachdem Ihre erste Aufladung gutgeschrieben wurde. Der Schlüssel wird nur einmal angezeigt, im Moment der Erstellung, kopieren Sie ihn also sofort und bewahren Sie ihn sicher auf. Wenn Sie einen neuen Schlüssel erstellen, ist der alte sofort ungültig, falls Sie also glauben, dass ein Schlüssel offengelegt wurde, erstellen Sie einfach einen neuen als Ersatz.
Wie sende ich API Anfragen?
Senden Sie jede Anfrage per POST an die einzige Adresse https://1panelplus.com/api/v2. Nutzen Sie, was Ihnen lieber ist, Formularfelder (application/x-www-form-urlencoded oder multipart) oder einen JSON Body (Content-Type: application/json), und fügen Sie key und action in jede Anfrage ein. Alle Antworten sind JSON.
Beispielanfrage (Formularfelder): key=YOUR_API_KEY&action=balance
Beispielanfrage (JSON): {"key": "YOUR_API_KEY", "action": "balance"}
| action | Zu sendende Werte | Rückgabewerte |
|---|---|---|
| services | Keine | Serviceliste |
| add | service, link, quantity oder comments | order (Bestell-ID) |
| status | Eine order oder orders (bis zu 100, durch Kommas getrennt) | charge, start_count, status, remains, currency |
| refill | order | refill (Refill-ID) |
| refill_status | refill | status |
| balance | Keine | balance, currency |
- action
- services
- Zu sendende Werte
- Keine
- Rückgabewerte
- Serviceliste
- action
- add
- Zu sendende Werte
- service, link, quantity oder comments
- Rückgabewerte
- order (Bestell-ID)
- action
- status
- Zu sendende Werte
- Eine order oder orders (bis zu 100, durch Kommas getrennt)
- Rückgabewerte
- charge, start_count, status, remains, currency
- action
- refill
- Zu sendende Werte
- order
- Rückgabewerte
- refill (Refill-ID)
- action
- refill_status
- Zu sendende Werte
- refill
- Rückgabewerte
- status
- action
- balance
- Zu sendende Werte
- Keine
- Rückgabewerte
- balance, currency
Wie erhalte ich die Serviceliste mit services?
Senden Sie action=services, und Sie erhalten alle angebotenen Services als Array. Jeder Service enthält service (Service-ID), name, type, category, rate, min, max, refill und cancel. rate ist der Preis pro 1,000 (USD); wenn type Package ist, ist es der Preis eines Pakets. refill ist true bei Services mit Refill-Zeitraum, und cancel ist immer false. category enthält Plattformnamen und Kategorie zusammen, sodass Sie die Kategorien in Ihrem eigenen Panel unverändert nachbilden können.
Beispielantwort: [{"service": SERVICE_ID, "name": "Servicename", "type": "Default", "category": "YouTube - Kategoriename", "rate": "Preis pro 1,000", "min": "Mindestmenge", "max": "Höchstmenge", "refill": true, "cancel": false}]
Preise und Services können sich ändern, daher ist es für Reseller sinnvoll, services in festen Abständen erneut abzurufen und Preise sowie Mindest- und Höchstmengen in ihrem Panel synchron zu halten.
Wie gebe ich mit add eine Bestellung auf?
Senden Sie action=add mit service (Service-ID), link (öffentlicher Link) und quantity, dann wird die Bestellung aufgegeben und der Betrag sofort von Ihrem Guthaben abgebucht. Das Feld order in der Antwort ist die Bestell-ID; speichern Sie sie und nutzen Sie sie für status und refill. Bestellungen können von Konten aufgegeben werden, deren erste Aufladung gutgeschrieben wurde.
- Normale Services: senden Sie service, link und quantity
- Custom Comments Services: senden Sie comments statt quantity. Ein Kommentar pro Zeile, bis zu 500 Zeichen pro Zeile, und die Anzahl der Zeilen ist die Menge
- Package Services: keine Menge nötig. Die Bestellung gilt für ein Paket
Beispielanfrage: key=YOUR_API_KEY&action=add&service=SERVICE_ID&link=https://www.youtube.com/watch?v=videoid&quantity=1000
Beispielantwort: {"order": ORDER_ID}
Wie prüfe ich den Bestellstatus mit status?
Senden Sie action=status mit order (eine einzelne Bestell-ID), um den Status dieser Bestellung zu erhalten, oder senden Sie orders mit durch Kommas verbundenen Bestell-IDs, um bis zu 100 auf einmal abzufragen. Wenn Sie viele Bestellungen verwalten, sparen Sie mit gebündelten Abfragen über orders viele Anfragen.
Beispielantwort (einzeln): {"charge": "Berechneter Betrag", "start_count": "Startwert", "status": "In progress", "remains": "Restmenge", "currency": "USD"}
Beispielantwort (mehrere): {"ORDER_ID_1": {"charge": "...", "start_count": "...", "status": "Completed", "remains": "0", "currency": "USD"}, "ORDER_ID_2": {"error": "Incorrect order ID"}}
| status Wert | Bedeutung |
|---|---|
| Pending | Eingegangen und wartet auf den Start oder geht in die Bearbeitung |
| In progress | Wird geliefert |
| Completed | Vollständig geliefert |
| Partial | Ein Teil wurde geliefert und der restliche Betrag auf Ihr Guthaben zurückgebucht |
| Canceled | Konnte nicht bearbeitet werden und der volle Betrag wurde auf Ihr Guthaben zurückgebucht |
- status Wert
- Pending
- Bedeutung
- Eingegangen und wartet auf den Start oder geht in die Bearbeitung
- status Wert
- In progress
- Bedeutung
- Wird geliefert
- status Wert
- Completed
- Bedeutung
- Vollständig geliefert
- status Wert
- Partial
- Bedeutung
- Ein Teil wurde geliefert und der restliche Betrag auf Ihr Guthaben zurückgebucht
- status Wert
- Canceled
- Bedeutung
- Konnte nicht bearbeitet werden und der volle Betrag wurde auf Ihr Guthaben zurückgebucht
charge ist der bezahlte Betrag abzüglich erstatteter Beträge, sodass Sie nach einer teilweise abgeschlossenen oder stornierten Bestellung sofort den tatsächlich ausgegebenen Betrag sehen. Bestellstatus aktualisieren sich etwa jede Minute automatisch, daher reicht es, status in Abständen von etwa einer Minute abzufragen.
Wie nutze ich refill und refill_status?
Senden Sie action=refill mit order, um einen Refill anzufordern, und Sie erhalten refill (die Refill-ID) zurück. Angenommen wird die Anfrage für abgeschlossene oder teilweise abgeschlossene Bestellungen von Services mit Refill-Zeitraum, innerhalb des Refill-Zeitraums ab dem Tag, an dem die Bestellung endete, wenn kein Refill läuft und seit der letzten Anfrage 24 Stunden vergangen sind. Senden Sie action=refill_status mit refill, und Sie erhalten den Status als Pending, In progress, Completed oder Rejected.
Beispielantworten: {"refill": REFILL_ID} und {"status": "Completed"}
Die Refill-Regeln sind dieselben wie auf der Website. Die genauen Bedingungen finden Sie unter Refill-Zeiträume erklärt.
Wie prüfe ich mein Guthaben mit balance?
Senden Sie action=balance, und Sie erhalten Ihr aktuelles Guthaben und die Währung (USD). Als Reseller prüfen Sie Ihr Guthaben, bevor Sie Bestellungen weiterleiten, und richten Sie eine Benachrichtigung ein, wenn es unter einen festgelegten Betrag fällt, damit Ihre Bestellungen ohne Unterbrechung weiterlaufen.
Beispielantwort: {"balance": "Aktuelles Guthaben", "currency": "USD"}
Was bedeuten die API Fehlermeldungen?
Fehler kommen als JSON mit einem englischen Satz im Feld error zurück. Jeder Satz hat eine feste Ursache, sodass Ihre Software ihn unverändert vergleichen und behandeln kann.
| error Wert | Bedeutung |
|---|---|
| Invalid API key | Der Schlüssel fehlt oder ist falsch |
| Too many requests | Sie haben das Anfragelimit pro Minute überschritten. Senden Sie kurz darauf erneut |
| Add funds first | Sie können bestellen, sobald Ihre erste Aufladung gutgeschrieben ist |
| Incorrect service ID | Keine ID eines angebotenen Service |
| Incorrect link | Das Linkformat ist ungültig |
| Quantity out of range | Die Menge liegt außerhalb des Min.- und Max.-Bereichs des Service |
| Incorrect comments | Die Kommentarzeilen sind leer oder eine Zeile ist länger als 500 Zeichen |
| Not enough funds on balance | Ihr Guthaben ist niedriger als der Bestellbetrag |
| Incorrect order ID | Keine Bestell-ID dieses Kontos |
| Incorrect refill ID | Keine Refill-ID dieses Kontos |
| Incorrect action | Der Wert für action ist keine der 6 actions |
- error Wert
- Invalid API key
- Bedeutung
- Der Schlüssel fehlt oder ist falsch
- error Wert
- Too many requests
- Bedeutung
- Sie haben das Anfragelimit pro Minute überschritten. Senden Sie kurz darauf erneut
- error Wert
- Add funds first
- Bedeutung
- Sie können bestellen, sobald Ihre erste Aufladung gutgeschrieben ist
- error Wert
- Incorrect service ID
- Bedeutung
- Keine ID eines angebotenen Service
- error Wert
- Incorrect link
- Bedeutung
- Das Linkformat ist ungültig
- error Wert
- Quantity out of range
- Bedeutung
- Die Menge liegt außerhalb des Min.- und Max.-Bereichs des Service
- error Wert
- Incorrect comments
- Bedeutung
- Die Kommentarzeilen sind leer oder eine Zeile ist länger als 500 Zeichen
- error Wert
- Not enough funds on balance
- Bedeutung
- Ihr Guthaben ist niedriger als der Bestellbetrag
- error Wert
- Incorrect order ID
- Bedeutung
- Keine Bestell-ID dieses Kontos
- error Wert
- Incorrect refill ID
- Bedeutung
- Keine Refill-ID dieses Kontos
- error Wert
- Incorrect action
- Bedeutung
- Der Wert für action ist keine der 6 actions
Refill-Anfragen können Refill is not available for this service (der Service hat keinen Refill-Zeitraum), Order is not finished yet (die Bestellung ist noch nicht abgeschlossen), Refill period has ended (der Refill-Zeitraum ist abgelaufen) oder Refill already requested, try again later (ein Refill läuft oder es sind noch keine 24 Stunden vergangen) zurückgeben.
Wie viele API Anfragen kann ich senden?
Jeder Schlüssel kann bis zu 300 Anfragen pro Minute stellen. Bündeln Sie Statusabfragen über orders in Gruppen zu 100 und rufen Sie die Serviceliste nur bei Bedarf erneut ab, dann haben Sie reichlich Spielraum. Bei 1,000 laufenden Bestellungen prüfen zum Beispiel 10 Anfragen einmal pro Minute alle.
Wie legen Reseller ihre Verkaufspreise fest?
Die rate, die Sie über die API erhalten, ist der 1PANEL PLUS Preis pro 1,000, und den Verkaufspreis in ihrem eigenen Panel legen Reseller selbst fest. Schlagen Sie zum Beispiel 25% auf einen Service mit einer rate von $2.00 auf, verkaufen Sie zu $2.50 pro 1,000; bestellt ein Kunde 4,000, beträgt Ihr Umsatz $10.00, und bei 1PANEL PLUS werden $8.00 abgebucht. Diese Preise sind Beispiele zur Veranschaulichung der Berechnung.
In welcher Reihenfolge richte ich die API Anbindung ein?
- Laden Sie Ihr Guthaben auf und erstellen Sie einen API Schlüssel in Ihrem Dashboard
- Prüfen Sie Schlüssel und Verbindung mit balance
- Rufen Sie die Serviceliste mit services ab und listen Sie sie in Ihrem Panel
- Senden Sie ein add mit der kleinsten Menge und erhalten Sie eine Bestell-ID
- Bestätigen Sie mit status, dass sich der Status ändert, und schalten Sie dann das automatische Bestellen ein
Beispiele in curl, PHP, Python und Node.js sowie vollständige Feldbeschreibungen finden Sie in der API Dokumentation, weitere Fragen in der Gruppe API der häufigen Fragen.