Joomag API-Handbuch

Joomag stellt eine API bereit, die verwendet werden kann, um Joomag-Konten mit Drittanbieter-Applikationen zu verwalten. Beispielsweise kann sie verwendet werden, um Magazine aus PDF-Dateien zu erstellen. Die API basiert auf dem HTTP-Protokoll und liefert JSON-Daten zurück.

Alle Requests sollten mit HTML POST an die folgende URL gesendet werden:
http://www.joomag.com/Frontend/WebService/restAPI.php

Die PHP API Client-Klasse kann hier heruntergeladen werden: PHP API Client

Magazine aus einem PDF erstellen

Erstellen Sie eine neue Veröffentlichung auf Joomag aus einer PDF-Datei.

Parameter

Parameter Erforderlich Beschreibung
key API-Schlüssel für Ihr Konto. Sie erhalten ihn unter Mein Konto > Einstellungen.
action Sollte checkPDFStatus sein
pdf PDF-Datei, gesendet mit der "multipart/form-data"-Encodierung
magazine_ID Einzigartige ID des Magazins, in dem Sie die Ausgabe erstellen wollen. Die ID kann hier gefunden werden.
volume Der Titel der neu erstellten Ausgabe
description Die Beschreibung der neu erstellten Ausgabe
keywords Komma-getrennte Liste von Schlüsselwörtern
allow_print Flag, das angibt, ob diese Ausgabe zum Druck verfügbar ist oder nicht. Kann entweder 1 oder 0 sein (standardmäßig 0).

Antwort

Gibt die temporäre ID der neu erstellten Ausgabe zurück. Diese kann später dazu verwendet werden, den Status der Konvertierung abzufragen.

Beispielantwort:
        {
            "error" : 0,
            "msg" : "",
            "response" : {
                "issueTempID" : "6d8b27d868843a6ebaa8a5f44d7accb8"
            }
        }
            

PDF-Status überprüfen

Ruft den Status der PDF-Datei ab.

Parameter

Parameter Erforderlich Beschreibung
key API-Schlüssel für Ihr Konto. Sie erhalten ihn unter Mein Konto > Einstellungen.
action Sollte checkPDFStatus sein

Antwort

Gibt den Status der PDF-Datei zurück. Falls die PDF-Datei fertig ist, werden URL und ID zurückgegeben.

Zustände
Wert Beschreibung
ready Die PDF-Konvertierung wurde erfolgreich abgeschlossen und die Ausgabe kann jetzt betrachtet werden.
error Bei der PDF-Konvertierung ist ein Fehler aufgetreten.
pending Die PDF-Konvertierung läuft noch.
Beispielantwort:
        {
            "error" : 0,
            "msg" : "",
            "response" : {
                "status" : "ready",
                "code" : "2",
                "url" : "http:\/\/www.joomag.com\/magazine\/mag\/0379014001353947680",
                "issue_ID" : "0379014001353947680"
            }
        }
            

Liste von Magazinen abfragen

Ruft eine Liste aller Magazine in Ihrem Konto ab.

Parameter

Parameter Erforderlich Beschreibung
key API-Schlüssel für Ihr Konto. Sie erhalten ihn unter Mein Konto > Einstellungen.
action Sollte listMagazines sein

Antwort

Gibt eine Liste aller Magazine Ihres Kontos zurück.

Magazin-Objekt
Wert Beschreibung
title Titel des Magazins
ID ID des Magazins
url URL des Magazins. Enthält die letzte veröffentlichte Ausgabe
Beispielantwort:
        {
            "error" : 0,
            "msg" :   "",
            "response" : {
                "magazines" : [{
                        "title" :   "Healty Live",
                        "ID" :   "M0379014001353530983",
                        "url" :   "http:\/\/www.joomag.com\/magazine\/healty-live\/M0379014001353530983"
                    }, {
                        "title" :   "Sports and Fitness",
                        "ID" :   "M0812158001353446983",
                        "url" :   "http:\/\/www.joomag.com\/magazine\/sports-and-fitness\/M0812158001353446983",
                }]
            }
        }
            

Liste von Ausgaben abfragen

Ruft eine Liste aller Ausgaben eines bestimmten Magazins ab.

Parameter

Parameter Erforderlich Beschreibung
key API-Schlüssel für Ihr Konto. Sie erhalten ihn unter Mein Konto > Einstellungen.
action Sollte listIssues sein
magazine_ID Einzigartige ID des Magazins, in dem Sie die Ausgabe erstellen wollen. Die ID kann hier gefunden werden.
include_tags Falls angegeben und einen Wert besitzt, der zu seinem booleschen true ausgewertet wird, wird für jedes Magazin eine Komma-getrennte Liste von Tags an das Ergebnis angehängt

Antwort

Gibt eine Liste aller Ausgaben des gegebenen Magazins zurück.

Ausgaben-Objekt
Wert Beschreibung
title Titel der Ausgabe
volume Titel der Ausgabe
ID ID der Ausgabe
url URL der Ausgabe
cover URL des Vorschaubilds der Titelseite der Ausgabe
pages Anzahl Seiten
tags Komma-getrennte Liste von Tags (Schlüsselwörtern) dieser Ausgabe. Nur verfügbar, wenn das "include_tags"-Flag mitgesendet wird
Beispielantwort:
        {
            "error" : 0,
            "msg" :   "",
            "response" : {
                "issues" : [{
                        "title" :   "Healty Live Vol. 1",
                        "volume" : "Vol. 1",
                        "ID" :   "0379014001353530983",
                        "url" :   "http:\/\/www.joomag.com\/magazine\/healty-live-vol-1\/0379014001353530983",
                        "cover" : "http:\/\/s1.joomag.com\/res_mag\/0\/8\/8556\/89385\/thumbs\/1762436.jpg",
                        "pages" : 24,
                        "tags" : "Present,only,if,include_tags,flag,is,posted"
                    }, {
                        "title" :   "Healty Live Vol. 2",
                        "volume" : "Vol. 2",
                        "ID" :   "0812158001353446983",
                        "url" :   "http:\/\/www.joomag.com\/magazine\/healty-live-vol-2\/0812158001353446983",
                        "cover" : "http:\/\/s1.joomag.com\/res_mag\/0\/8\/8556\/89385\/thumbs\/1762437.jpg",
                        "pages" : 28,
                        "tags" : "Present,only,if,include_tags,flag,is,posted"
                    }, {
                        "title" :   "Healty Live Vol. 3",
                        "volume" : "Vol. 3",
                        "ID" :   "0453041001369593634",
                        "url" :   "http:\/\/www.joomag.com\/magazine\/healty-live-vol-3\/0453041001369593634",
                        "cover" : "http:\/\/s1.joomag.com\/res_mag\/0\/8\/8556\/89385\/thumbs\/1762438.jpg",
                        "pages" : 30,
                        "tags" : "Present,only,if,include_tags,flag,is,posted"
                }]
            }
        }