API-dokumentasjon
Har du et spørsmål? Kontakt oss.
Alle API-forespørsler må gjøres over HTTPS og bruke HTTP Basic Auth med følgende legitimasjon:
Username: API KEY
Password: Not needed
Eksempel
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d page_url=https://en.wikipedia.org/wiki/Eclipse
Flagg | Beskrivelse |
|---|---|
-u | Send grunnleggende autentiseringsopplysninger, kolon etter API-nøkkelen hindrer cURL i å be om passord. |
-d | send data i POST-forespørsel |
I tilfelle suksess vil du få en HTTP-respons med status 302 (Redirect), og JSON-informasjonen vil være i responsens kropp.
# 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"}
API-versjon
Gjeldende versjon av API er 1.0.
Hovedversjonen av API må være angitt i URL-en som 'v' og nummer, f.eks. v1, v2, v3.
Eksempel
https://api.printfriendly.com/v2/pdf/create
https://api.printfriendly.com/v2/html/create
API-metoder
Metode | Inndata | Utdata |
|---|---|---|
PDF / opprett | URL / HTML | HTML |
html / opprett | URL / HTML |
Parametere
Du må oppgi enten page_url eller html parameter. Alle andre parametere er valgfrie.
Parametere | Verdi |
|---|---|
Side-URL | URL for målside |
HTML | HTML-innhold for målsiden |
css_url | URL for tilpasset CSS-fil |
header_image_url | URL for egendefinert topptekstbilde |
Overskriftstekst | Tekststreng |
Alle eksempler nedenfor er gitt for "pdf/create"-metoden og fungerer også for "html/create"-metoden.
Eksempel med page_url-parameter
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'
I tilfelle suksess vil du få en HTTP-respons med status 302 (Redirect), og JSON-informasjonen vil være i responsens kropp.
Eksempel med html-parametere
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>'
I tilfelle suksess, vil du få en HTTP-respons med Status 200 og PDF/HTML-innhold i responsens kropp.
Feil
PrintFriendly bruker konvensjonelle statuskoder og JSON-respons for å gi feildetaljer.
Statuskoder
Status | Beskrivelse |
|---|---|
200 OK | Alt fungerer fint. |
400 Ugyldig forespørsel | En feil har oppstått. Se detaljer i JSON. |
401 Uautorisert | 401 Uautorisert |
404 Ikke funnet | 404 Ikke funnet |
429 For mange forespørsler | 429 For mange forespørsler |
Alle ikke suksessfulle (ikke Status 302 OK) svar har JSON-kropp med feildetaljer, som vil inkludere feiltype og melding.
Feiltyper
Type | Beskrivelse |
|---|---|
Parameter-validering | Validering av parametere mislyktes. |
Forbudt domene | Dette domenet er midlertidig bannlyst. |
Analysering mislyktes | Kan ikke analysere siden. Vi kan ikke fastslå innholdet på denne siden. |
Hentefeil | Kan ikke hente siden. Sjekk at URL-en er tilgjengelig, og prøv igjen. |
høy belastning | Validering av parametere mislyktes. |
Ugyldig filtype | Bare nettsider støttes. Det er en PDF/TXT-fil eller bilde (JPG, PNG, GIF). |
stor side | Målsiden er over 2 MB. Store sider støttes ikke. |
sikkerhetsplattform | Sikkerhetsplattformen blokkerer oss fra å hente denne siden. |
tidsavbrudd | Tidsavbrudd oversteget. Motoren kan ikke behandle siden i løpet av 30 sekunder. Vennligst prøv igjen senere. |
alt-i-ett | Uventet feil. Vennligst prøv igjen senere. |
Eksempel
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d page_url=https://test.test
HTML-inndata
# 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"}
Begrensning av forespørselsrate
API-en har en grense på 60 forespørsler per minutt. Hvis du overskrider denne grensen, får du et svar med status: 429 For mange forespørsler.
Overskrift | Beskrivelse |
|---|---|
X-Takstgrense | Total forespørselsgrense for gjeldende periode. |
X-Gjenstående grense | Gjenstående forespørsel for inneværende periode. |
Tilbakestill X-RateLimit | Antall sekunder til slutten av nåværende periode. |
Eksempel med page_url-parameteren
# 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