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
کامیابی کی صورت میں، آپ کو اسٹیٹس 200 کے ساتھ ایک http جواب اور جواب کے جسم میں 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 | کسٹم CSS فائل کے لیے URL |
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 باڈی ہوتا ہے جس میں غلطی کی تفصیلات ہوتی ہیں اور اس میں غلطی کی قسم اور پیغام شامل ہوتا ہے۔
خرابی کی اقسام
قسم | تفصیل |
|---|---|
پیرامیٹروں کی تصدیق | پیرامیٹرز کی تصدیق ناکام ہوگئی۔ |
ممنوعہ ڈومین | یہ ڈومین عارضی طور پر ممنوع ہے۔ |
تجزیہ ناکام | صفحہ کو تجزیہ نہیں کیا جا سکتا۔ ہم اس صفحہ کے مواد کا تعین نہیں کر سکتے۔ |
فetch خرابی | صفحہ حاصل نہیں کیا جا سکتا۔ چیک کریں کہ URL قابل رسائی ہے اور دوبارہ کوشش کریں۔ |
زیادہ بوجھ | پیرامیٹرز کی توثیق ناکام ہو گئی۔ |
غیر موزوں فائل ایکسٹینشن | صرف ویب صفحات معاونت یافتہ ہیں۔ یہ ایک PDF/TXT فائل یا تصویر (JPG، PNG، GIF) ہے۔ |
بڑا صفحہ | ہدف صفحہ 2Mb سے زیادہ ہے۔ بڑی صفحات کی حمایت نہیں کی جاتی ہے۔ |
سیکیورٹی پلیٹ فارم | سیکیورٹی پلیٹ فارم ہمیں اس صفحہ کو حاصل کرنے سے روکتا ہے۔ |
وقت ختم | وقت ختم ہو گیا۔ انجن 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-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