API 문서
질문이 있으신가요? 문의하기.
모든 API 요청은 HTTPS를 통해 이루어져야 하며, 다음 자격 증명을 사용하여 HTTP Basic Auth를 사용해야 합니다:
Username: API KEY
Password: Not needed
예제
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d page_url=https://en.wikipedia.org/wiki/Eclipse
깃발 | 설명 |
|---|---|
-u | 기본 인증 자격 증명을 전달하십시오. API 키 뒤에 콜론이 있으면 cURL이 비밀번호를 요청하지 않습니다. |
-디 | POST 요청에서 데이터를 보내십시오 |
성공 시, 상태 302(리디렉션)과 함께 HTTP 응답을 받게 되며, JSON 정보는 응답 본문에 포함됩니다.
# HTTP RESPONSE
# HEADERS (some of headers are ommited)
Content-Type: application/json; charset=utf-8
Status: 302 Found
Location: https://v.printfriendly.com/system/pdfs/pdf_1480936999_755625A4.pdf
# BODY
{"success":"Redirect to https://v.printfriendly.com/system/pdfs/pdf_1480947535_6e7ecaA4.pdf"}
API 버전
API의 현재 버전은 1.0입니다.
주요 API 버전은 'v' 및 숫자로 URL에 제공되어야 합니다. 예: 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 콘텐츠 |
css_url | 사용자 지정 CSS 파일의 URL |
header_image_url | 커스텀 헤더 이미지의 URL |
헤더 텍스트 | 텍스트 문자열 |
아래의 모든 예는 "pdf/create" 메서드에 대해 제공되며 "html/create" 메서드에서도 작동합니다.
page_url 매개변수 사용 예
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d page_url=https://test.test /
-d css_url=https://my-site.com/pdf_style.css /
-d header_text='My Custom Header'
성공 시, 상태 302(리디렉션)과 함께 HTTP 응답을 받게 되며, JSON 정보는 응답 본문에 포함됩니다.
html 매개변수를 가진 예
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-d html='<html><body><h1>Title</h1><p>Text text text text text text text text text</p></body></html>'
성공한 경우 상태 코드 200 및 응답 본문에 PDF/HTML 콘텐츠가 포함된 HTTP 응답을 받습니다.
오류
PrintFriendly는 오류 세부 정보를 제공하기 위해 일반 상태 코드와 JSON 응답을 사용합니다.
상태 코드
상태 | 설명 |
|---|---|
200 확인 | 모든 것이 잘 작동합니다. |
400 잘못된 요청 | 오류가 발생했습니다. JSON에서 세부 정보를 확인하세요. |
401 승인되지 않음 | 401 승인되지 않음 |
404 찾을 수 없음 | 404 찾을 수 없음 |
429 너무 많은 요청 | 429 너무 많은 요청 |
모든 성공하지 않음 (상태 302 OK 아님) 응답은 오류 유형 및 메시지를 포함한 오류 세부 정보가 있는 JSON 본문을 포함합니다.
오류 유형
유형 | 설명 |
|---|---|
매개변수 검증 | 매개변수 검증에 실패했습니다. |
금지된 도메인 | 이 도메인은 임시로 금지되었습니다. |
분석 실패 | 페이지를 파싱할 수 없습니다. 이 페이지의 내용을 확인할 수 없습니다. |
가져오기 오류 | 페이지를 가져올 수 없습니다. URL에 접근 가능한지 확인하고 다시 시도하세요. |
고부하 | 매개변수 검증에 실패했습니다. |
잘못된 파일 확장자 | 웹페이지만 지원됩니다. PDF/TXT 파일 또는 이미지(JPG, PNG, GIF)입니다. |
큰 페이지 | 대상 페이지가 2MB를 초과합니다. 큰 페이지는 지원되지 않습니다. |
보안 플랫폼 | 보안 플랫폼이 이 페이지를 가져오는 것을 차단합니다. |
시간 초과 | 시간 초과. 엔진이 30초 이내에 페이지를 처리할 수 없습니다. 나중에 다시 시도해 주세요. |
포괄적인 | 예기치 못한 오류가 발생했습니다. 나중에 다시 시도해 주세요. |
예제
curl https://api.printfriendly.com/v1/pdfs/create /
-u your_api_key: /
-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