Documentação da API 2.0 Joomag

Edições

Criar Edição a partir de um PDF

Cria edição da revista a partir do PDF

POST /api/2.0/magazines/<id>
Parâmetro Tipo Explicação
pdf arquivo Arquivo PDF para criação da revista
volume String Volume da edição a ser criada
description String Descrição da edição a ser criada
keywords String Lista de palavras chave separadas por vírgula para ser associada com a edição
category int Categoria da edição, uma constante da Lista de Categorias da Revista
allow_print bool Bandeira booleana que indica se a edição deve ser imprimível, deve ter valor de no o yes
allow_download bool Bandeira booleana que indica se a edição deve ser baixável, deve ter valor de no o yes
privacy String Nível de privacidade da edição, pode ser private or unlisted

Exemplo:

# 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'
));

Resposta:

issueTempID é um ID temporário durante a conversão do PDF para a edição Joomag

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

Obter Estado de Conversão da Edição

Devolve o estado atual de conversão do PDF para a edição Joomag.

GET /api/2.0/magazines/<id>/issues/<issueTempID>/status
GET /api/2.0/issues/<issueTempID>/status
Parâmetro Tipo Explicação
issueTempID String Este é um ID temporário durante a conversão do PDF para a edição Joomag. Use issueTempID da resposta createIssuePDF.

Exemplo:

# 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 );

Resposta:

{
  "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
    }
  ]
}

Obter detalhes da edição

Devolve propriedades da edição solicitada.

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

Exemplo:

# 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 );

Resposta:

{
  "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"]
  }
}

Obter Código de Incorporação

Obter código de incorporação HTML da edição da revista solicitada.

GET /api/2.0/magazines/<id>/issues/<id>/embed-code
POST /api/2.0/issues/<id>/embed-code
Parâmetro Tipo Explicação
width int Largura da incorporação da edição. Pode ser tanto em porcentagem (exemplo: 100%) como em pixels (exemplo: 500px).
height int Altura da incorporação da edição. Pode ser tanto em porcentagem (exemplo: 100%) como em pixels (exemplo: 500px).
start_page int Número da página da qual a incorporação deve ser aberta.
auto_flip int Duração da mudança de página automática. Omita para desativar a mudança automática.
background_color String Cor de fundo da incorporação. RGB hexadecimal da cor (exemplo: e2e2d1)

Exemplo:

# 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'
));

Resposta:

{
  "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>"
  }
}

Excluir Edição

Deleta a edição da revista solicitada.

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

Exemplo:

# 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 );

Resposta:

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

Atualizar detalhes da edição

Atualiza propriedades da edição da revista solicitada.

PUT /api/2.0/magazines/<id>/issues/<id>
PUT /api/2.0/issues/<id>
Parâmetro Tipo Explicação
volume String Volume da edição
description String Descrição da edição
secondary_category int Categoria secundária da edição, uma constante da Lista de Categorias da Revista
adult_content bool Bandeira booleana que indica se a edição da revista contém conteúdo adulto, deve ter valor de no ou yes
allow_print bool
allow_download bool

Exemplo:

# 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'
));

Resposta:

{
  "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"]
  }
}

Publicar edição

Publica a edição da revista solicitada.

PUT /api/2.0/issues/<id>/publish-state
Parâmetro Tipo Explicação
privacy String Nível de privacidade da edição, pode ser private or unlisted

Exemplo:

# 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' );

Resposta:

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

Despublicar Edição

Despublica a edição da revista solicitada.

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

Exemplo:

# 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 );

Resposta:

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

Verificar estado de Publicação

Verifica se a edição foi ou não publicada.

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

Exemplo:

# 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 );

Resposta:

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