API փաստաթղթեր
Հարց ունե՞ք: Կապվեք մեզ հետ:
Բոլոր API հարցումները պետք է կատարվեն HTTPS-ով և պահանջեն api_key որպես 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://en.wikipedia.org/wiki/Eclipse
Եթե կա հաջողություն, կստանաք http պատասխան Արցախի 200 կարգավիճակով և JSON տվյալներ նրանում:
{"status":"success","file_url":"https://api.printfriendly.com/downloads/pdf_1531957353_e94df5Letter.pdf"}
API տարբերակ
API-ի ներկայիս տարբերակը 2.0 է։
API-ի հիմնական տարբերակը պետք է տրամադրվի URL-ում որպես 'v' և թիվ, օրինակ՝ v1, v2, v3:
Օրինակ
https://api.printfriendly.com/v2/pdf/create
https://api.printfriendly.com/v2/html/create
API մեթոդներ
Մեթոդ | Մուտքագրում | Արդյունք |
|---|---|---|
PDF / ստեղծել | URL / HTML | HTML |
html / ստեղծել | URL / HTML |
Պարամետրեր
Պետք է նշել page_url կամ html պարամետրը։ Մնացած բոլոր պարամետրերը կամընտիր են։
Պարամետրեր | արժեք |
|---|---|
Էջի URL-հասցե | Նպատակային էջի URL |
HTML | Թիրախային էջի HTML բովանդակությունը |
Ելքի տեսակ | Կարգավորեք այն որպես «կցված», որպեսզի PDF ֆայլը ստանաք որպես ելք JSON-ի փոխարեն |
css_url | URL հարմարեցված CSS ֆայլի համար |
header_image_url | URL հարմարեցված վերնագրի նկարի համար |
Վերնագրի տեքստ | Տեքստային տող |
Ներքևում բերված բոլոր օրինակները ներկայացված են "pdf/create" մեթոդի համար և գործում են նաև "html/create" մեթոդի համար:
Օրինակ 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'
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>'
Սխալներ
PrintFriendly-ը օգտագործում է սովորական կարգավիճակի կոդեր և JSON պատասխանը՝ սխալի մանրամասները տրամադրելու համար։
Կարգավիճակի կոդեր
Կարգավիճակ | Նկարագրություն |
|---|---|
200 Հաջող | Ամեն ինչ լավ է աշխատում։ |
400 Անվավեր հարցում | Տեղի է ունեցել սխալ։ Տես մանրամասները JSON-ում։ |
401 Անթույլատրելի | 401 Անթույլատրելի |
404 Չի հայտնաբերվել | 404 Չի հայտնաբերվել |
429 Շատ շատ հարցումներ | 429 Շատ շատ հարցումներ |
Բոլոր չհաջողված (ոչ կարգավիճակ 200) պատասխաններում JSON մարմին կա սխալի մանրամասներով և պարունակում է սխալի տեսակը և հաղորդագրությունը։
Սխալների տեսակներ
Տեսակ | Նկարագրություն |
|---|---|
Պարամետրերի վավերացում | Պարամետրերի վավերացումը ձախողվեց։ |
Արգելված դոմեն | Այդ դոմենը ժամանակավորապես արգելվել է։ |
Չհաջողվեց վերլուծությունը | Հնարավոր չէ էջի վերլուծություն։ Մենք չենք կարող որոշել այս էջի պարունակությունը։ |
Բերելու սխալ | Չի հաջողվում տիրապետել էջը։ Ստուգեք, որ URL-ը հասանելի է և փորձեք նորից։ |
բարձր բեռնվածություն | Պարամետրերի վավերացումը ձախողվեց։ |
Անվավեր ֆայլի ընդլայնում | Միայն վեբ էջերն են աջակցվում։ Սա PDF/TXT ֆայլ է կամ պատկեր (JPG, PNG, GIF): |
մեծ էջ | Նպատակային էջը գերազանցում է 2 ՄԲ։ Խոշոր էջերը չեն աջակցվում։ |
անվտանգության հարթակ | Անվտանգության հարթակը արգելափակում է մեզ այս էջը փոխանցելուց։ |
ժամանակի ավարտը | Ժամկետը ավարտվեց։ Շարժիչը չի կարող մշակել էջը 30 վայրկյանում։ Խնդրում ենք կրկին փորձել ավելի ուշ։ |
ամբողջական | Անսպասելի սխալ։ Խնդրում ենք փորձել ավելի ուշ։ |
Օրինակ
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 մուտքագրում
# 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"}
Հարցումների արագության սահմանափակում
API-ն ունի սահմանափակում՝ 60 հարցման մեկ րոպեում։ Եթե գերազանցես սահմանափակումը, կստանաս պատասխան կարգավիճակով՝ 429 Շատ հարցումներ։
Վերնագիր | Նկարագրություն |
|---|---|
X-Արագության Սահման | Ընդհանուր հարցումների սահմանափակում ներկա ժամանակաշրջանի համար։ |
X-Մնացյալ սահմանաչափ | Մնացած հարցումը ընթացիկ շրջանի համար. |
X-RateLimit վերականգնում | Ընթացիկ ժամանակաշրջանի ավարտին մնացած վայրկյանների քանակը։ |
Օրինակ՝ 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