Documentation de l'API Joomag 2.0

Numéros

Créer un numéro à partir du PDF

Crée un numéro de magazine à partir d'un fichier PDF.

POST /api/2.0/magazines/<id>
Paramètre Type Explication
pdf fichier Fichier PDF à partir duquel créer un numéro de magazine
volume séquence Volume de la publication à créer
description séquence Description de la publication à créer
keywords séquence Liste de mots clés séparés par des virgules à associer au numéro d'un magazine
category int La catégorie de la publication, une constante de la liste des catégories de magazines
allow_print booléen L'indicateur booléen indique si le numéro du magazine doit être imprimé. Il doit mentionné une valeur de no ou yes
allow_download booléen Balise booléenne indiquant si la publication devrait être téléchargeable, devrait avoir la valeur no ou yes
privacy séquence Le niveau de confidentialité ou la publication, cela peut être private ou unlisted

Exemple:

# Include the API wrapper class
require "JoomagREST.php";

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the magazine
$magazineID = "M0250759001409245540";

# Path to the PDF file
$pdf = __DIR__ . "/magazine.pdf";

# Make the call to the client.
$result = $jmClient->createIssueFromPDF( $magazineID, $pdf, array(
    "volume" => "Jul 2014",
    "description" => "Magazine description goes here...",
    "keywords" => "Comma,separated,keywords",
    "category" => 1,
    "allow_print" => 'yes',
    "allow_download" => 'no'
));

Réponse:

IssueTempID est un identifiant temporaire utilisé lors de la conversion d'un PDF en publication Joomag

{
  "error": 0,
  "message": "OK",
  "data": {
    "issueTempID": "1d6bb45be5cf7e3778985467bea009c4"
  }
}

Obtenir le statut du problème de conversion

Retourne l'étape courante de la conversion de PDF à Joomag.

GET /api/2.0/magazines/<id>/issues/<issueTempID>/status
GET /api/2.0/issues/<issueTempID>/status
Paramètre Type Explication
issueTempID séquence Il s'agit d'une ID temporaire lors de la conversion de PDF en publication Joomag. Utilisez issueTempID à partir de la réponse createIssuePDF.

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# Make the call to the client.
$result = $jmClient->getIssueStatus( $issueTempID );

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": [
    {
      "status": "ready",
      "ID": "0806746001433247707",
      "url": "http://www.joomag.com/magazine/mag/0806746001433247707",
      "cover": "https://s1.joomag.net/res_mag/3/3222/3222314/287017/thumbs/6637753.jpg?1433247710",
      "pages_count": 2
    }
  ]
}

Obtenir les détails du numéro

Renvoyer les caratéristiques du numéro demandé.

GET /api/2.0/magazines/<id>/issues/<id>
GET /api/2.0/issues/<id>

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0980693001409324380";

# Make the call to the client.
$result = $jmClient->getIssueDetails( $issueID );

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": {
    "ID": "0980693001409324380",
    "title": "Cars Magazine Pro Jul 2014",
    "volume": "Jul 2014",
    "description": "Magazine description goes here...",
    "language": "es",
    "type": 1,
    "category": 8,
    "secondary_category": null,
    "is_published": true,
    "privacy": "private",
    "creation_date": "2014-08-29 09:59:40",
    "page_height": 841,
    "page_width": 595,
    "preview_pages": null,
    "adult_content": false,
    "pages_count": 6,
    "cover": "http:\/\/s1.joomag.com\/res_mag\/0\/178\/178119\/316952\/thumbs\/7463808.jpg",
    "mobile_support": true,
    "allow_download": false,
    "allow_print": false,
    "tags": ["keywords", "comma", "separated"]
  }
}

Obtenez le code d'intégration

Obtenir le code HTML intégré du numéro de magazine demandé.

GET /api/2.0/magazines/<id>/issues/<id>/embed-code
POST /api/2.0/issues/<id>/embed-code
Paramètre Type Explication
width int Largeur de publication encapsulée. Peut être soit en pourcentage (exemple : 100%) soit en pixels (exemple : 500px).
height int Hauteur du numéro intégré. Peut être en pourcentage (exemple : 100 %) ou en pixels (exemple : 500 px).
start_page int Numéro de page à partir duquel l'incorporation devrait être ouverte.
auto_flip int Durée du feuilletage automatique des pages en secondes. Omettre de désactiver le feuilletage automatique.
background_color séquence Couleur d'arrière-plan de l'incrustation. RVB hexadécimal de la couleur (exemple : e2e2d1)

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0980693001409324380";

# Make the call to the client.
$result = $jmClient->get("issues/$issueID/embed-code", array(
    'width' => 800,
    'height' => 600,
    'start_page' => 2,
    'auto_flip' => 5,
    'background_color' => '567147'
));

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": {
    "embed_code": "<iframe name=\"Joomag_embed_47ccbf7a-6e78-4755-9920-53d568472b51\" style=\"width:800px;height:600px\" width=\"800px\" height=\"600px\" hspace=\"0\" vspace=\"0\" frameborder=\"0\" src=\"http:\/\/www.joomag.com\/magazine\/paid-test-clone-\/0827766001386622771?p=2&amp;e=1&amp;autoFlipDelay=5&amp;embedInfo=;solid,567147\"><\/iframe>"
  }
}

Supprimer le numéro

Supprime le numéro de magazine demandé.

DELETE /api/2.0/magazines/<id>/issues/<id>
DELETE /api/2.0/issues/<id>

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0727865001409319307";

# Make the call to the client.
$result = $jmClient->deleteIssue( $issueID );

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": []
}

Mettre à jour les informations du numéro

Met à jour les propriétés du numéro de magazine demandé.

PUT /api/2.0/magazines/<id>/issues/<id>
PUT /api/2.0/issues/<id>
Paramètre Type Explication
volume séquence Volume du numéro
description séquence Description du problème
secondary_category int Catégorie secondaire du numéro, une constante de la Liste des catégories de magazines
adult_content booléen Indicateur booléen pour indiquer si le numéro contient du contenu pour adultes, doit avoir une valeur de no ou yes
allow_print booléen
allow_download booléen

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0980693001409324380";

# Make the call to the client.
$result = $jmClient->updateIssue( $issueID, array(
    'volume' => 'Aug 2014',
    'description' => 'The newest issue',
    'adult_content' => 'yes',
    'allow_print' => 'yes',
    'allow_download' => 'yes'
));

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": {
    "ID": "0980693001409324380",
    "title": "Cars Magazine Pro Jul 2014",
    "volume": "Aug 2014",
    "description": "The newest issue",
    "language": "es",
    "type": 1,
    "category": 8,
    "secondary_category": null,
    "price": 0,
    "privacy": "unlisted",
    "creation_date": "2014-08-29 09:59:40",
    "page_height": 841,
    "page_width": 595,
    "preview_pages": null,
    "adult_content": true,
    "pages_count": 6,
    "cover": "http:\/\/s1.joomag.com\/res_mag\/0\/178\/178119\/316952\/thumbs\/7463808.jpg",
    "mobile_support": true,
    "allow_download": true,
    "allow_print": true,
    "tags": ["keywords", "comma", "separated"]
  }
}

Publier le numéro

Publie le numéro du magazine demandé.

PUT /api/2.0/issues/<id>/publish-state
Paramètre Type Explication
privacy séquence Le niveau de confidentialité ou le numéro, cela pourrait être private ou unlisted

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0649338001409248394";

# Make the call to the client.
$result = $jmClient->publishIssue( $issueID, 'unlisted' );

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": []
}

Dépublier la publication

Retire la publication du numéro de magazine sélectionné.

DELETE /api/2.0/issues/<id>/publish-state

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0727865001409319307";

# Make the call to the client.
$result = $jmClient->unpublishIssue( $issueID );

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": []
}

Vérifiez l'état de la publication

Vérifiez si le numéro est publié ou non.

GET /api/2.0/issues/<id>/publish-state

Exemple:

# Include the API wrapper class (see "Libraries" for instructions)
require 'JoomagREST.php';

# Instantiate the client.
$jmClient = new JoomagREST(
    'api_de81b9eb3ff797796edc0cd00020b6c8',
    'sec_e8ff4e7e74c64fcfd63dcf728040ba3e5b29aa398e5cc1cb414011661c75fd19'
);

# ID of the issue
$issueID = "0727865001409319307";

# Make the call to the client.
$result = $jmClient->getIssuePublishState( $issueID );

Réponse:

{
  "error": 0,
  "message": "OK",
  "data": {
    "is_published": true
  }
}