Documentação da API

Tem uma pergunta? Contacte-nos.

Todas as solicitações API devem ser feitas através de HTTPS e usar HTTP Basic Auth com as seguintes credenciais:

Username: API KEY

Password: Not needed

Exemplo

curl https://api.printfriendly.com/v1/pdfs/create /

-u your_api_key: /

-d page_url=https://en.wikipedia.org/wiki/Eclipse

Bandeira

Descrição

-u

Passe as credenciais de autenticação básicas, dois pontos após a chave API impedem o cURL de solicitar uma senha.

-d

envie dados em solicitação POST

Em caso de sucesso, receberá uma resposta HTTP com Status 302 (Redirecionamento) e a informação JSON estará no corpo da resposta.

# HTTP RESPONSE

# HEADERS (some of headers are ommited)

Content-Type: application/json; charset=utf-8

Status: 302 Found

Location: https://v.printfriendly.com/system/pdfs/pdf_1480936999_755625A4.pdf

# BODY

{"success":"Redirect to https://v.printfriendly.com/system/pdfs/pdf_1480947535_6e7ecaA4.pdf"}

Versão da API

A versão atual da API é 1.0.

A principal versão da API deve ser indicada no URL como 'v' e número, ou seja, v1, v2, v3.

Exemplo

https://api.printfriendly.com/v2/pdf/create

https://api.printfriendly.com/v2/html/create

Métodos API

Método

Entrada

Saída

PDF / criar

URL / HTML

HTML

html / criar

URL / HTML

PDF

Parâmetros

Tem de fornecer o parâmetro page_url ou html. Todos os outros parâmetros são opcionais.

Parâmetros

Valor

URL da página

URL da página de destino

HTML

Conteúdo HTML da página de destino

css_url

URL para ficheiro CSS personalizado

header_image_url

URL para a imagem do cabeçalho personalizado

Texto do cabeçalho

Sequência de texto

Todos os exemplos abaixo são fornecidos para o método "pdf/create" e também funcionam para o método "html/create".

Exemplo com o parâmetro page_url

curl https://api.printfriendly.com/v1/pdfs/create /

-u your_api_key: /

-d page_url=https://test.test /

-d css_url=https://my-site.com/pdf_style.css /

-d header_text='My Custom Header'

Em caso de sucesso, receberá uma resposta HTTP com Status 302 (Redirecionamento) e a informação JSON estará no corpo da resposta.

Exemplo com parâmetros html

curl https://api.printfriendly.com/v1/pdfs/create /

-u your_api_key: /

-d html='<html><body><h1>Title</h1><p>Text text text text text text text text text</p></body></html>'

Em caso de sucesso, irá obter uma resposta HTTP com o estado 200 e conteúdo PDF/HTML no corpo da resposta.

Erros

PrintFriendly utiliza códigos de estado convencionais e respostas JSON para fornecer detalhes de erros.

Códigos de estado

Estado

Descrição

200 OK

Tudo funciona bem.

400 Pedido Inválido

Ocorreu um erro. Veja os detalhes em JSON.

401 Não autorizado

401 Não autorizado

404 Não encontrado

404 Não encontrado

429 Solicitações em excesso

429 Solicitações em excesso

Todas as respostas não bem-sucedidas (não Status 302 OK) têm o corpo JSON com os detalhes do erro, que incluirão o tipo de erro e mensagem.

Tipos de Erro

Tipo

Descrição

Validação de parâmetros

A validação dos parâmetros falhou.

Domínio proibido

Este domínio está temporariamente banido.

Falha ao analisar

Não é possível analisar a página. Não conseguimos determinar o conteúdo desta página.

Erro de busca

Não é possível carregar a página. Verifique se o URL é acessível e tente novamente.

alta carga

A validação dos parâmetros falhou.

Extensão de ficheiro inválida

Apenas páginas web são suportadas. É um ficheiro PDF/TXT ou uma imagem (JPG, PNG, GIF).

página grande

A página de destino tem mais de 2 MB. Páginas grandes não são suportadas.

plataforma de segurança

A plataforma de segurança impede-nos de obter esta página.

tempo limite

Tempo limite excedido. O motor não consegue processar a página em 30 segundos. Por favor, tente novamente mais tarde.

geral

Erro inesperado. Por favor, tente novamente mais tarde.

Exemplo

curl https://api.printfriendly.com/v1/pdfs/create /

-u your_api_key: /

-d page_url=https://test.test

Entrada HTML

# HTTP RESPONSE

# HEADERS (some of headers were ommited)

Content-Type: application/json; charset=utf-8/

Status: 400 Bad Request

# BODY (JSON)

{"status":"failed","message":"Print technology unable to download or parse content"}

Limitação da Taxa de Pedidos

A API tem um limite de 60 pedidos por minuto. Se ultrapassar este limite, receberá uma resposta com Status: 429 Pedidos em excesso.

Cabeçalho

Descrição

Limite de taxa-X

Limite total de pedidos para o período atual.

X-Limite Restante

Pedido restante para o período atual.

Redefinir X-RateLimit

Quantidade de segundos até ao fim do período atual.

Exemplo com parâmetro page_url

# HEADERS (some of headers were ommited)

Status: 429 Too Many Requests

X-RateLimit-Limit: 60

X-RateLimit-Remaining: 0

X-RateLimit-Reset: 20

# BODY (JSON)Empty

Comece grátis

Experimente gratuitamente e não é necessário cartão de crédito. Contacte-nos se tiver dúvidas.