API Belgeleri
Bir sorunuz mu var? Bize Ulaşın.
Tüm API istekleri HTTPS üzerinden yapılmalı ve URL sorgu parametresi olarak api_key gereklidir.
Örnek
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
Başarı durumunda, 200 Durumlu http yanıtı ve yanıt gövdesinde JSON bilgisi alırsınız.
{"status":"success","file_url":"https://api.printfriendly.com/downloads/pdf_1531957353_e94df5Letter.pdf"}
API Sürümü
API'nin mevcut sürümü 2.0'dır.
Ana API sürümü URL'de 'v' ve numara olarak sağlanmalıdır, örneğin v1, v2, v3.
Örnek
https://api.printfriendly.com/v2/pdf/create
https://api.printfriendly.com/v2/html/create
API Yöntemleri
Yöntem | Girdi | Çıktı |
|---|---|---|
PDF / oluştur | URL / HTML | HTML |
html / oluştur | URL / HTML |
Parametreler
page_url veya html parametresini sağlamanız gerekiyor. Diğer tüm parametreler isteğe bağlıdır.
Parametreler | Değer |
|---|---|
Sayfa URL'si | Hedef sayfanın URL'si |
HTML | Hedef sayfanın HTML içeriği |
Çıkış türü | "attachment" olarak ayarlayın, böylece JSON yerine çıktı olarak PDF dosyasını alabilirsiniz |
css_url | Özel CSS dosyası için URL |
header_image_url | Özel Başlık görüntüsü için URL |
Başlık metni | Metin Dizesi |
Aşağıdaki tüm örnekler "pdf/create" yöntemi için sağlanmıştır ve aynı zamanda "html/create" yöntemi için de çalışır.
page_url parametresi ile örnek
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 girişi
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>'
Hatalar
PrintFriendly hata detaylarını sağlamak için geleneksel durum kodlarını ve JSON yanıtını kullanır.
Durum Kodları
Durum | Açıklama |
|---|---|
200 Tamam | Her şey düzgün çalışıyor. |
400 Kötü İstek | Bir hata oluştu. Ayrıntıları JSON'de gör. |
401 Yetkisiz | 401 Yetkisiz |
404 Bulunamadı | 404 Bulunamadı |
429 Çok Fazla İstek | 429 Çok Fazla İstek |
Tüm başarısız (Durum 200 değil) yanıtlar hata detaylarını içeren JSON veri gövdesine sahiptir ve hata türü ve mesajı içerir.
Hata Türleri
Tür | Açıklama |
|---|---|
Parametre doğrulama | Parametre doğrulaması başarısız oldu. |
Yasaklı alan adı | Bu alan adı geçici olarak yasaklandı. |
Analiz başarısız | Sayfa çözümlenemiyor. Bu sayfanın içeriğini belirleyemiyoruz. |
Getirme hatası | Sayfa getirilemiyor. URL'nin erişilebilir olduğundan emin olun ve tekrar deneyin. |
yüksek yük | Parametre doğrulama başarısız oldu. |
Geçersiz dosya uzantısı | Yalnızca web sayfaları desteklenir. Bu bir PDF/TXT dosyası veya Görüntü (JPG, PNG, GIF). |
büyük sayfa | Hedef sayfa 2MB'den büyük. Büyük sayfalar desteklenmez. |
güvenlik platformu | Güvenlik platformu bu sayfayı almamızı engelliyor. |
zaman aşımı | Zaman aşımı. Motor sayfayı 30 saniye içinde işleyemiyor. Lütfen daha sonra tekrar deneyin. |
her şeyi kapsayan | Beklenmeyen bir hata meydana geldi. Lütfen daha sonra tekrar deneyin. |
Örnek
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 girişi
# 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"}
İstek Hızını Sınırlama
API'nin dakika başına 60 istek sınırı vardır. Bu sınırı aşarsanız, Durum: 429 Çok Fazla İstek içeren bir yanıt alırsınız.
Başlık | Açıklama |
|---|---|
X-Oran Sınırı | Mevcut dönem için toplam istek sınırı. |
X-Kalan Sınır | Mevcut dönem için kalan istek. |
X-RateLimit'i Sıfırla | Mevcut dönemin sonuna kadar saniye miktarı. |
page_url parametresi ile örnek
# 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