API Documentation
Una swali? Wasiliana nasi.
Mahitaji yote ya API lazima yafanywe kupitia HTTPS na yanahitaji api_key kama kigezo cha hoja ya URL.
Mfano
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
Katika hali ya mafanikio, utapata majibu ya http yenye Hali ya 200 na maelezo ya JSON kwenye mwili wa jibu.
{"status":"success","file_url":"https://api.printfriendly.com/downloads/pdf_1531957353_e94df5Letter.pdf"}
Toleo la API
Toleo la sasa la API ni 2.0.
Toleo kubwa la API lazima litolewe kwenye URL kama 'v' na nambari, mfano v1, v2, v3.
Mfano
https://api.printfriendly.com/v2/pdf/create
https://api.printfriendly.com/v2/html/create
Njia za API
Njia | Ingizo | Mwelekeo |
|---|---|---|
PDF / unda | URL / HTML | HTML |
html / unda | URL / HTML |
Vigezo
Lazima utoe parameta ya page_url au html. Parameta zingine zote ni za hiari.
Vigezo | Thamani |
|---|---|
URL ya ukurasa | URL ya ukurasa lengwa |
HTML | Yaliyomo ya HTML ya ukurasa lengwa |
Aina ya pato | Weka hadi "attachment" ili kupokea faili la PDF kama matokeo badala ya JSON |
css_url | URL ya faili la CSS ya kibinafsi |
header_image_url | URL kwa picha ya Kichwa Maalum |
Maandishi ya kichwa | Mchapo wa Maandishi |
Mfano wote chini umepeanwa kwa mbinu ya "pdf/create" na pia hufanya kazi kwa mbinu ya "html/create".
Mfano na kipengele cha 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'
Ingizo la 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>'
Hitilafu
PrintFriendly hutumia msimbo wa hali za kawaida na majibu ya JSON kutoa maelezo ya hitilafu.
Nambari za Hali
Hali | Maelezo |
|---|---|
200 Sawa | Kila kitu kinafanya kazi vizuri. |
400 Ombi Mbaya | Kosa imetokea. Tazama maelezo katika JSON. |
401 Haijaruhusiwa | 401 Haijaruhusiwa |
404 Haikupatikana | 404 Haikupatikana |
429 Maombi Mengi Sana | 429 Maombi Mengi Sana |
Mapokeo yote ambayo hayajafanikiwa (sio Status 200) yana mwili wa JSON wenye maelezo ya kosa na yanajumuisha aina ya kosa na ujumbe.
Aina za Makosa
Aina | Maelezo |
|---|---|
Uthibitishaji wa vigezo | Uthibitishaji wa vigezo umeshindwa. |
Kikoa kilichozuiliwa | Eneo hili limezuiwa kwa muda. |
Imeshindikana kuchanganua | Haiwezi kuchambua ukurasa. Hatuwezi kubaini maudhui ya ukurasa huu. |
Hitilafu ya kuteua | Huwezi kupata ukurasa. Hakikisha URL inaweza kufikiwa na jaribu tena. |
mzigo mkubwa | Uthibitishaji wa vigezo umeshindwa. |
Kiendelezi cha faili si sahihi | Kurasa za wavuti pekee zinasaidiwa. Ni faili la PDF/TXT au Picha (JPG, PNG, GIF). |
ukurasa mkubwa | Ukurasa lengwa ni zaidi ya 2Mb. Kurasa kubwa hazijakubalika. |
jukwaa la usalama | Jukwaa la usalama linatuzuia kufikia ukurasa huu. |
muda umekwisha | Muda wa kutimizwa umeisha. Injini haiwezi kuchakata ukurasa ndani ya sekunde 30. Tafadhali jaribu tena baadaye. |
uliowezesha kila kitu | Hitilafu isiyotarajiwa. Tafadhali jaribu tena baadaye. |
Mfano
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
Ingizo la 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"}
Kuwekea Ukomo wa Kiwango cha Maombi
API ina kikomo cha maombi 60 kwa dakika. Ukizidi kikomo hiki, utapokea jibu lenye Hali: 429 Maombi Mengi Sana.
Kichwa | Maelezo |
|---|---|
X-Kiwango Kikomo | Kikomo cha jumla ya maombi kwa kipindi cha sasa. |
X-Kikomo kilichobaki | Ombi lililobaki kwa kipindi cha sasa. |
Weka upya X-RateLimit | Idadi ya sekunde mpaka mwisho wa kipindi cha sasa. |
Mfano na kigezo cha 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