Documentação da API

Tem uma pergunta? Contacte-nos.

Todas as solicitações de API devem ser feitas através de HTTPS e necessitam de api_key como um parâmetro de consulta de URL.

Exemplo

curl https://api.printfriendly.com/v2/pdf/create?api_key=YOUR_API_KEY /

-H 'Content-Type: application/x-www-form-urlencoded; charset=utf-8' /

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

Em caso de sucesso, receberá uma resposta http com Status 200 e informações JSON no corpo da resposta.

{"status":"success","file_url":"https://api.printfriendly.com/downloads/pdf_1531957353_e94df5Letter.pdf"}

Versão da API

A versão atual da API é 2.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

Tipo de saída

Defina para "attachment" para receber o ficheiro PDF como saída em vez de JSON

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/v2/pdf/create?api_key=YOUR_API_KEY /

-H 'Content-Type: application/x-www-form-urlencoded; charset=utf-8' /

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

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

-d header_text='My Custom Header'

Entrada HTML

curl https://api.printfriendly.com/v2/pdf/create?api_key=YOUR_API_KEY /

-H 'Content-Type: application/x-www-form-urlencoded; charset=utf-8' /

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

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 200) têm um corpo JSON com os detalhes do erro e contêm o tipo de erro e a 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/v2/pdf/create?api_key=YOUR_API_KEY /

-H 'Content-Type: application/x-www-form-urlencoded; charset=utf-8' /

-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.