Beachten Sie, dass die ClickBank-API nur für Benutzer mit großer Entwicklungserfahrung gedacht ist.

Über die ClickBank-API können zahlreiche Computerprogramme im Namen von Kontoeigentümern sicher auf ClickBank-Kontoinformationen zugreifen. Benutzer der API haben unter anderem folgende Möglichkeiten:

  • Anfordern einer Rückerstattung für einen Kauf
  • Anfordern einer Stornierung für ein Abonnement
  • Abrufen einer Transaktionsliste aus einem ClickBank-Konto für einen bestimmten Zeitraum

Programmen, die die ClickBank-API nutzen, bieten sich zahlreiche Möglichkeiten, darunter ein Dashboard mit ClickBank-Daten zusätzlich zu Daten aus Konten bei anderen Online-Diensten, ein Abonnement-Management-Tool sowie ein Analysepaket, das Daten zu Verkaufstrends für ein bestimmtes ClickBank-Konto präsentiert. All diese und weitere Anwendungen sind mit der neuen ClickBank-API möglich. Außerdem können sie auch im ClickBank-Marktplatz verkauft werden!

Die ClickBank-Service-API basiert auf einer REST-Architektur und bietet einen zuverlässigen und sicheren HTTP-basierten Mechanismus zum Abrufen von Daten.

REST

REST ist ein von Roy Fielding, einem der Hauptentwickler des HTTP-Protokolls, in seiner Dissertation “Architectural Styles and the Design of Network-based Software Architectures” entworfener Architekturstil. Eine kurze Einführung in REST finden Sie im Wikipedia-Artikel Representational State Transfer.

Versionierung

Die aktuelle Version der ClickBank-Service-API ist: 1.2.

Die Versionsinformation ist Teil der URL, über die auf die Dienste zugegriffen wird. Dies hat folgende Vorteile:

  • Eindeutige Angabe, welche Version der API verwendet wird
  • Leicht verständlicher Upgrade-Pfad, wenn eine neue API-Version eingeführt wird

Die ClickBank-Service-API ist garantiert mit bis zu drei Versionen rückwärts kompatibel. Wenn also Version 4.0 der API veröffentlicht wird, funktioniert Version 1.2 immer noch.

Infrastruktur

Die REST-API von ClickBank basiert auf JSR-311 – der Java-API für RESTful Web Services. Hierbei handelt es sich um ein Implementierungsdetail für die ClickBank-Service-API. Die Dienste selbst basieren auf HTTP und sind implementierungsunabhängig. Daher können sie von jedem beliebigen Web-Client (.NET, PHP, Java, Python, Ruby usw.) verwendet werden.

ClickBank empfiehlt kein bestimmtes REST-Tool zur Entwicklung, jedoch hat sich RestClient zum Entwickeln und Testen von RESTful Web Services als sehr hilfreich erwiesen.

Anfrage-Header

Der Header der ClickBank-Service-API besteht aus Sicherheits-, Ausgabe- und Seitenparametern. Die ClickBank-Service-API akzeptiert nur Abfrageparameter; Anfragen aus formularbasierten (Post-) Parametern werden ignoriert.
Laut den HTTP-Spezifikationen darf eine URL nicht länger als 2.000 Zeichen sein. API-Entwickler sollten daher darauf achten, dass die API-REST-URLs weniger als 2.000 Zeichen aufweisen.

Zertifizierung

Bei einigen Programmiersprachen verlangt die ClickBank-Service-API von Ihrem System ein Zertifikat für folgende Domäne:

*.clickbank.com

Um dieses Zertifikat zu erwerben, rufen Sie die folgende URL auf, doppelklicken auf das Schlosssymbol in der unteren rechten Ecke des Browsers und speichern das Zertifikat auf Ihrem Computer:

https://api.clickbank.com/rest/1.2/orders

Sicherheit

Die Methoden der ClickBank-Service-API sind sicher und geben den Statuscode “403 [Forbidden]” zurück, wenn ein unberechtigter Zugriff erfolgt. Für den sicheren API-Zugriff ist ein Authorization-Header-Parameter mit den folgenden Schlüsseln erforderlich:

  • Entwicklerschlüssel – damit erhält der Benutzer die Rolle “ROLE_HAS_DEVELOPER_KEY”.
  • Clerk-Benutzerschlüssel – damit erhält der Benutzer entweder die Rolle “ROLE_API_ORDER_READ” oder die Rolle “ROLE_API_ORDER_WRITE”.

Zum besseren Verständnis: Ein Entwicklerschlüssel ist ein Token, mit dem Zugriff auf die API gewährt wird, während ein Clerk-Benutzerschlüssel im Allgemeinen mit einem bestimmten Benutzer verknüpft ist. Wenn Sie den Header-Parameter mit beiden Rollen generieren, müssen die Werte durch einen Doppelpunkt voneinander getrennt sein.

Beispiel:

Authorization DEV-F7F8023A486E9A9602FFDA2765E1925:API-9870acb8d96f8bd18c2eb70725b01fe4b98ece58

Einige der ClickBank-Service-APIs (insbesondere die Sandbox API) erfordern nicht beide Schlüssel. In der Dokumentation zu unterstützten APIs finden Sie die erforderlichen Rollen für den Zugriff auf einen bestimmten Dienst. Wenn nur der Entwicklerschlüssel nötig ist, muss der Header-Parameter keinen Doppelpunkt enthalten.

Beispiel:

Authorization DEV-F7F8023A486E9A9602FFDA2765E1925

Um den Entwickler- und Clerk-Schlüssel zu erhalten, melden Sie sich einfach bei Ihrem ClickBank-Konto an und wählen die Registerkarte “Kontoeinstellungen”. Klicken Sie anschließend in den Bereichen “Entwickler-API-Schlüssel” und “Clerk-API-Schlüssel” auf “Bearbeiten”.

Für eine erfolgreiche Authentifizierung muss jeder Schlüssel genehmigt, vorhanden und aktiv sein.

Ausgabe

Die ClickBank-Service-API unterstützt die folgenden Ausgabeformate:

  • XML
  • JSON
  • CSV (funktioniert nur mit der Orders API)

Fordern Sie das Ausgabeformat an, indem Sie in den HTTP-Header einen Accept-Parameter einfügen. Falls ein nicht unterstütztes Format angefordert wird, gibt der Server den Statuscode “500 [Internal Server Error]” aus.

Beispiel:

Accept application/xml

Paginierung

Die API gibt nie mehr als 100 Zeilen für einen Dienstabruf zurück. Bei Anfragen mit mehr als 100 Datenzeilen gibt die API die ersten 100 Zeilen mit dem Statuscode “206 [Partial Content]” zurück. Um die weiteren Seiten abzurufen, muss der Entwickler einen Page-Header-Parameter einfügen, der angibt, welche Ergebnisseite angezeigt werden soll.

Beispiel:

Page 3

Sobald die letzte Seite aufgerufen wurde, gibt der Dienst den Statuscode “200 [OK]” anstatt “206 [Partial Content]” zurück.

Unterstützte APIs

In Version 1.0 werden folgende APIs unterstützt:

  • Orders API: https://api.clickbank.com/rest/1.2/orders
    • Über die Orders API können Sie Bestellinformationen mit dem Beleg- oder dem Datum/Uhrzeit-Parameter abrufen.
  • Tickets API: https://api.clickbank.com/rest/1.2/tickets
    • Über die Tickets API können Sie den Status einer Bestellung durch Erstellung eines Transaktionstickets in “Zurückgegeben” oder “Storniert” aktualisieren. Darüber hinaus können Sie für einen Benutzer nach vorhandenen Tickets suchen.
  • Sandbox API: https://sandbox.clickbank.com/rest/1.2/sandbox
    • Die Sandbox API bietet eine Umgebung, in der Testkonten, Entwicklerschlüssel und Bestellungen erstellt werden können. Sobald diese eingerichtet ist, kann sie zum Testen der Tickets API und Orders API verwendet werden.

Die ClickBank-APIs sind selbsterklärend. Details zur Dienstbeschreibung erhalten Sie über die API-URL.

Weitere Tools

Debugging

Die ClickBank-API umfasst den Debug Web Service [/rest/1.2/debug]. Dieser Dienst druckt die Kontextinformationen der Anfrage (einschließlich der Sicherheitskontextinformationen), was zum Beheben von REST API-Problemen sehr hilfreich sein kann.

Code-Beispiele

An den folgenden Code-Beispielen sehen Sie, wie Entwickler die APIs nutzen können:

A)     C#https://sandbox.clickbank.com/api_12_examples/api_example.csharp

B)     Javahttps://sandbox.clickbank.com/api_12_examples/api_example.java

C)     PHPhttps://sandbox.clickbank.com/api_12_examples/api_example.php

D)     Pythonhttps://sandbox.clickbank.com/api_12_examples/api_example.py

E)      Rubyhttps://sandbox.clickbank.com/api_12_examples/api_example.rb