API-documentatie
Heeft u een vraag? Neem contact met ons op.
Alle API-verzoeken moeten worden gedaan via HTTPS en vereisen api_key als URL-queryparameter.
Voorbeeld
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
In geval van succes, ontvang je een http-respons met Status 200 en JSON-informatie in het antwoordlichaam.
{"status":"success","file_url":"https://api.printfriendly.com/downloads/pdf_1531957353_e94df5Letter.pdf"}
API-versie
De huidige versie van de API is 2.0.
De hoofdversie van de API moet worden opgegeven in de URL als 'v' en een nummer, bijvoorbeeld v1, v2, v3.
Voorbeeld
https://api.printfriendly.com/v2/pdf/create
https://api.printfriendly.com/v2/html/create
API-methoden
Methode | Invoer | Uitvoer |
|---|---|---|
PDF / maken | URL / HTML | HTML |
html / maken | URL / HTML |
Parameters
U moet de parameter page_url of html opgeven. Alle andere parameters zijn optioneel.
Parameters | Waarde |
|---|---|
Pagina-URL | URL van de doelpagina |
HTML | HTML-inhoud van de doelpagina |
Uitvoertype | Stel het in op "attachment" om het PDF-bestand als output te ontvangen in plaats van JSON |
css_url | URL voor aangepaste CSS-bestand |
header_image_url | URL voor aangepaste kopafbeelding |
Headertekst | Tekststring |
Alle onderstaande voorbeelden worden verstrekt voor de methode "pdf/create" en werken ook voor de methode "html/create".
Voorbeeld met page_url-parameter
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'
HTML-invoer
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>'
Fouten
PrintFriendly gebruikt conventionele statuscodes en JSON-reacties om foutdetails te bieden.
Statuscodes
Status | Beschrijving |
|---|---|
200 OK | Alles werkt prima. |
400 Ongeldige aanvraag | Er is een fout opgetreden. Bekijk details in JSON. |
401 Niet toegestaan | 401 Niet toegestaan |
404 Niet gevonden | 404 Niet gevonden |
429 Te veel aanvragen | 429 Te veel aanvragen |
Alle niet succesvol (niet Status 200) reacties hebben een JSON-body met de foutdetails en bevatten het type fout en bericht.
Fouttypen
Type | Beschrijving |
|---|---|
Parameter validatie | Validatie van parameters is mislukt. |
Verboden domein | Deze domein is tijdelijk verboden. |
Parsing mislukt | Kan pagina niet analyseren. We kunnen de inhoud van deze pagina niet bepalen. |
Ophaalfout | Pagina kan niet worden opgehaald. Controleer of de URL toegankelijk is en probeer het opnieuw. |
hoge belasting | Validatie van parameters is mislukt. |
Ongeldige bestandsextensie | Alleen webpagina's worden ondersteund. Het is een PDF/TXT-bestand of afbeelding (JPG, PNG, GIF). |
grote pagina | Doelpagina is groter dan 2 MB. Grote pagina's worden niet ondersteund. |
veiligheidsplatform | Het beveiligingsplatform blokkeert ons om deze pagina te ophalen. |
timeout | Time-out overschreden. De engine kan de pagina niet binnen 30 seconden verwerken. Probeer het later opnieuw. |
allesomvattend | Onverwachte fout. Probeer het later opnieuw. |
Voorbeeld
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
HTML-invoer
# 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"}
Verzoekssnelheid beperken
De API heeft een limiet van 60 aanvragen per minuut. Als u deze limiet overschrijdt, ontvangt u een antwoord met Status: 429 Te Veel Aanvragen.
Koptekst | Beschrijving |
|---|---|
X-Snelheidslimiet | Totale verzoeklimiet voor de huidige periode. |
X-Resterende limiet | Resterend verzoek voor de huidige periode. |
X-RateLimit opnieuw instellen | Aantal seconden tot het einde van de huidige periode. |
Voorbeeld met de parameter 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