3rd Party Gutschein API Code
Protokoll
Es wird davon ausgegangen, dass es sich bei der API für die Fremdgutscheine um eine REST API handelt.
Da wir nur JSON-Daten unterstützen, setzen wir den Content-Type-Header bei der Anfrage auf application/json.
Genauso wird davon ausgegangen, dass die Antwort JSON-Daten liefert.
Authentifizierung...
Die Authentifizierung geschieht durch Übergabe eines uns mitzuteilenden API-Schlüssels als Parameter in jeder Anfrage. Es muss einen API-Schlüssel für jede Filiale geben.
Fehlerbehandlung...
Fehler werden mit dem standardmäßigen HTTP-Statuscode zurückgegeben.
Ein Statuscode = 200 bedeutet, dass die Anfrage okay war. Alle anderen Statuscodes bedeuten einen Fehler.
BaseURL...
Die REST API wird über eine URL aufgerufen, der Anfang der URL ist immer identisch.
Z. B. könnte die <BaseURL> = "https://www.traumgutscheine.com/services/v1" lauten.
Methoden
Die Schnittstelle für die Fremdgutscheine benötigt lediglich 2 Methoden, die nachfolgend näher beschrieben sind.
Methode: Balance...
Fragt den Status und den aufgeladenen Betrag des Fremdgutscheins ab.
URL
GET <BaseURL>/vouchers/{code}/balance?apikey={api-key}
Parameter
{code}: | String | Erforderlich, die eindeutige alphanumerische Gutscheinnummer des Gutscheins. |
{api-key}: | String | Erforderlich, der eindeutige alphanumerische API-Schlüssel für die Freischaltung einer Filiale zur Nutzung der API. |
Rückgabe
Statuscode | = 200 | Wenn der Statuscode <> 200 ist, dann ist ein Fehler aufgetreten. |
code: | String | Die eindeutige alphanumerische Gutscheinnummer des Gutscheins. |
is_redeemable: | Boolean | Gibt an, ob der angeforderte Gutschein eingelöst werden kann. Wenn der Gutschein nicht eingelöst wer-den kann, muss der Grund in der Nachricht stehen. |
balance_in_cents: | Integer | Verbliebener Betrag in Cent. Sehen sie auch Länder und Währungen. |
total_amount_in_cents: | Integer | Ehemaliger Gesamtbetrag in Cent. Sehen sie auch Länder und Währungen. |
message: | String |
Wenn der Gutschein nicht einlösbar ist, enthält die Nachricht den Grund, warum der angeforderte Gutschein nicht eingelöst werden kann. Wenn message <> "" ist, dann ist ein Fehler aufgetreten. |
Beispiel
Anfrage
GET https://www.traumgutscheine.com/services/v1/vouchers/A567F31B67/ba-lance?apikey=510e32c594d84816a4af9df1
Rückgabe
Statuscode = 200
{
"code": "A567F31B67",
"is_redeemable": true,
"balance_in_cents": 2500,
"total_amount_in_cents": 4000,
"message": ""
}
Methode: Redeem...
Löst einen Teilbetrag vom Gutschein ein und gibt den verbleibenden Betrag auf dem Gutschein zurück.
URL
POST <BaseURL>/vouchers/{code}/redeem?apikey={api-key}
Parameter
{code}: | String | Erforderlich, die eindeutige alphanumerische Gutscheinnummer des Gutscheins. |
{api-key}: | String |
Erforderlich, der eindeutige alphanumerische API-Schlüssel für die Freischaltung einer Filiale zur Nutzung der API.
|
POST Data
{amount_in_cents}: | Integer |
Erforderlich, abzubuchender Betrag in Cent. Sehen sie auch Länder und Währungen. |
Rückgabe
StatusCode | = 200 |
Wenn StatusCode <> 200 ist, dann ist ein Fehler aufgetreten und der Betrag wurde nicht eingelöst. |
code: | String | Die eindeutige alphanumerische Gutscheinnummer des Gutscheins. |
balance_in_cents: | Integer | Verbliebener Betrag in Cent. Sehen sie auch Länder und Währungen. |
message: | String |
Wenn der Gutschein nicht einlösbar ist, enthält die Nachricht den Grund, warum der angeforderte Gut-schein nicht eingelöst werden kann. Wenn message <> "" ist, dann ist ein Fehler aufgetreten und der Be-trag wurde nicht eingelöst. |
Beispiel
Anfrage
POST https://www.traumgutscheine.com/services/v1/vouchers/A567F31B67/ba-lance?apikey=510e32c594d84816a4af9df1
POST Data
{
"amount_in_cents": 2100
}
Rückgabe
StatusCode = 200
{
"code": "A567F31B67",
"balance_in_cents": 400,
"message": ""
}
Zurück zur übergeordneten Seite: 3rd Party Gutschein Entwicklung