API dokumentacija
Imate pitanje? Kontaktirajte nas.
Svi API zahtjevi moraju biti napravljeni putem HTTPS i koristiti HTTP Basic Auth s sljedećim vjerodajnicama:
Username: API KEY
Password: Not needed
Primjer
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d page_url=https://en.wikipedia.org/wiki/Eclipse
Zastava | Opis |
|---|---|
-u | Proslijedite osnovne vjerodajnice za autentifikaciju, dvotočka nakon API ključa sprječava da cURL traži lozinku. |
-d | pošaljite podatke u POST zahtjevu |
U slučaju uspjeha, dobit ćete HTTP odgovor sa statusom 302 (Preusmjeravanje), a JSON informacije će biti u tijelu odgovora.
# 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"}
Verzija API-ja
Trenutna verzija API-ja je 1.0.
Glavna verzija API-ja mora biti navedena u URL-u kao 'v' i broj, npr. v1, v2, v3.
Primjer
https://api.printfriendly.com/v2/pdf/create
https://api.printfriendly.com/v2/html/create
API metode
Metoda | Unos | Izlaz |
|---|---|---|
PDF / stvori | URL / HTML | HTML |
html / izradi | URL / HTML |
Parametri
Morate navesti parametar page_url ili html. Svi ostali parametri su opcionalni.
Parametri | Vrijednost |
|---|---|
URL stranice | URL ciljne stranice |
HTML | HTML sadržaj ciljane stranice |
css_url | URL za prilagođenu CSS datoteku |
header_image_url | URL za prilagođenu sliku zaglavlja |
Tekst zaglavlja | Tekstni niz |
Svi primjeri ispod su dani za metodu "pdf/create" i također rade za metodu "html/create".
Primjer s parametrom 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'
U slučaju uspjeha, dobit ćete HTTP odgovor sa statusom 302 (Preusmjeravanje), a JSON informacije će biti u tijelu odgovora.
Primjer s html parametrima
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>'
U slučaju uspjeha, dobit ćete HTTP odgovor sa statusom 200 i PDF/HTML sadržajem u tijelu odgovora.
Pogreške
PrintFriendly koristi konvencionalne statusne kodove i JSON odgovore za pružanje detalja pogreške.
Statusni kodovi
Status | Opis |
|---|---|
200 OK | Sve radi kako treba. |
400 Neispravan zahtjev | Dogodila se pogreška. Pogledajte detalje u JSON. |
401 Neautorizirano | 401 Neautorizirano |
404 Nije pronađeno | 404 Nije pronađeno |
429 Previše zahtjeva | 429 Previše zahtjeva |
Sve neuspješne (ne Status 302 OK) odgovore imaju JSON tijelo s detaljima o grešci, što uključuje vrstu greške i poruku.
Tipovi pogrešaka
Tip | Opis |
|---|---|
Validacija parametara | Validacija parametara nije uspjela. |
Zabranjena domena | Ova domena je privremeno zabranjena. |
Neuspio parsiranje | Ne možemo obraditi stranicu. Ne možemo odrediti sadržaj ove stranice. |
Pogreška dohvaćanja | Ne može se dohvatiti stranica. Provjerite je li URL dostupan i pokušajte ponovno. |
visoko opterećenje | Validacija parametara nije uspjela. |
Nevažeći datotečni nastavak | Podržane su samo web stranice. Ovo je PDF/TXT datoteka ili slika (JPG, PNG, GIF). |
velika stranica | Ciljana stranica je preko 2 MB. Velike stranice nisu podržane. |
sigurnosna platforma | Sigurnosna platforma nam blokira pristup ovoj stranici. |
vremensko ograničenje | Vrijeme je isteklo. Motor ne može obraditi stranicu u roku od 30 sekundi. Molimo pokušajte ponovno kasnije. |
sveobuhvatan | Neočekivana pogreška. Pokušajte ponovno kasnije. |
Primjer
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d page_url=https://test.test
HTML ulaz
# 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"}
Ograničenje brzine zahtjeva
API ima ograničenje od 60 zahtjeva po minuti. Ako prekoračite ovo ograničenje, dobit ćete odgovor sa statusom: 429 Previše zahtjeva.
Zaglavlje | Opis |
|---|---|
X-Ograničenje brzine | Ukupno ograničenje zahtjeva za trenutni period. |
X-Preostalo ograničenje | Preostali zahtjev za trenutni period. |
Resetiraj X-RateLimit | Broj sekundi do kraja trenutnog razdoblja. |
Primjer s parametrom 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