본문으로 건너뛰기
DownloadPatent

API

DownloadPatent API

직접 작성한 스크립트나 AI 에이전트에서 특허 PDF를 내려받고 의견제출통지서(OA)를 인용 문헌 목록으로 변환할 수 있습니다. API는 웹사이트와 같은 계정, 같은 크레딧을 사용합니다.

인증

로그인한 상태에서 설정 메뉴에서 API 키를 만듭니다. 전체 키는 생성할 때 한 번만 표시되므로 비밀번호처럼 안전하게 보관하시기 바랍니다. 모든 요청의 Authorization 헤더에 Bearer 토큰으로 담아 보내면 됩니다. 키가 생성될 때마다 이메일로 알려 드립니다. 키를 만들 때 만료 시점(기본값은 일 년, 또는 만료 없음)과 사용 한도(기본값은 월 $50, 또는 한도 없음)를 정할 수 있으며, 둘 다 나중에 설정에서 변경할 수 있습니다. 키를 교체하려면 새 키를 만들어 전환한 뒤 이전 키를 폐기합니다. 폐기는 다음 요청부터 바로 적용됩니다.

무료 계정을 포함한 모든 계정에서 API 키를 만들 수 있습니다. 활성 키는 최대 5개까지 보유할 수 있고 언제든 폐기할 수 있습니다. 키당 분당 60회까지 요청할 수 있습니다. 집계 대상이 되는 모든 응답에는 IETF 표준 RateLimit-Policy 및 RateLimit 필드(예: RateLimit-Policy: "per-key";q=60;w=60, RateLimit: "per-key";r=59;t=42 — 남은 요청 59회, 42초 후 해당 분 종료)와 같은 값을 담은 기존 X-RateLimit-Limit, X-RateLimit-Remaining 헤더가 포함됩니다.

Authorization: Bearer dpk_live_…

요금 및 한도

API 호출에는 웹사이트와 같은 크레딧이 같은 가격으로 차감됩니다. 크레딧은 만료되지 않는 충전분과 무료 크레딧(지급 후 30일이 지나면 만료되는 가입 크레딧, 지급 시 안내한 날짜에 만료되는 프로모션 크레딧)으로 구성되며, 무료 크레딧이 먼저 사용됩니다.

특허 PDF: API를 통한 다운로드는 UTC 기준 하루에 계정당 처음 50건까지 무료이며(웹사이트의 일일 무료 한도와 별도로 집계), 그 이후에는 건당 $0.005입니다. POST /patent-pdfs로 받을 수 있는 특허 PDF는 UTC 기준 하루에 계정당 최대 2,000건입니다. 이를 넘으면 다음 UTC 자정까지 429 daily_patent_cap_reached로 응답하며, 다른 엔드포인트는 계속 사용할 수 있습니다.

2026-11-18부터 무료 계정은 매월 100건의 특허 PDF를 무료로 받을 수 있습니다. 월간 요금제에는 매월 특허 PDF 3,000건(다른 언어 버전 포함)과 의견제출통지서 50건이 포함됩니다. 초과분은 특허 건당 US$0.01입니다. 웹사이트와 API는 같은 한도를 사용합니다. 이미 구매한 크레딧의 가치는 변하지 않습니다.

의견제출통지서 분석: 인용 문헌 목록(mode quick)은 건당 $0.15, 전문 인용 분석(mode full)은 건당 $0.25입니다. Monthly 요금제에서는 API로 보낸 의견제출통지서도 웹사이트와 동일한 구독 기간당 100건에 포함되며, 100건을 넘는 분부터 크레딧이 사용됩니다. 크레딧은 작업을 생성할 때 예치되고, 결과 조회 여부와 관계없이 작업이 끝나면 청구됩니다. 결과를 조회해도 비용이 들지 않습니다. 분석에 실패한 파일은 청구되지 않습니다. 의견제출통지서의 인용 특허 PDF와 ZIP은 해당 가격에 포함되어 있어 무료 특허 PDF 한도를 쓰지 않고 추가 비용도 없으며, 하루 2,000건 한도에도 집계되지 않습니다. 영어 대응 특허는 처음 다운로드할 때 건당 $0.03입니다(Monthly 요금제에는 포함). 자체 번호가 기재되어 있지 않은 대응 특허 PDF는 무료로 제공됩니다.

엔드포인트

별도 표기가 없으면 응답은 JSON입니다. 모든 경로는 다음 주소를 기준으로 한 상대 경로입니다: https://downloadpatent.com/api/v1.

POST /patent-pdfs
number 필드에 특허 번호를 담은 JSON 본문을 보내면 PDF 파일 자체(application/pdf)를 받습니다. 웹사이트와 같은 출처를 사용하며, 여러 요청이 동시에 같은 특허를 요청해도 한 번만 가져옵니다. 번호는 공백, 쉼표, 슬래시, 하이픈 유무나 대소문자에 관계없이 입력할 수 있습니다(US 9,876,543 B2도 가능). 실제로 사용한 형식은 X-Patent-Number 응답 헤더에서 확인할 수 있습니다. 출원번호(US 10/123,456, CN, TW, JP 또는 PCT 출원)는 조회하지 않고 reason application_number로 거부합니다. 공개번호나 등록번호를 보내 주시고, JP 번호가 거부되면 공백 없이 입력하시기 바랍니다(JP2022529962A).
POST /oa-jobs
의견제출통지서를 multipart form data로 업로드합니다. 필드는 mode(quick 또는 full)와 file입니다. quick은 PDF 최대 10개, full은 1개를 받습니다. 파일당 최대 25 MB, 요청 전체 최대 28 MB이므로 더 큰 묶음은 여러 작업으로 나누어 보내시기 바랍니다. 선택 항목으로, find_english=true는 영어가 아닌 인용 특허마다 영어 대응 특허를 찾아 제공하고(Monthly 요금제는 포함 한도가 남아 있으면 기본값 true, 다 쓰면 그 외와 같이 false. true를 명시하면 한도를 넘은 분은 청구됩니다), deliver_files=false는 인용 문헌 목록만 받습니다(기본값 true). 응답은 202와 작업 정보입니다. 재시도를 안전하게 하려면 Idempotency-Key 헤더를 보내십시오. quick은 각 의견제출통지서에 첨부된 검색 보고서를 읽습니다. 검색 보고서가 없으면 결과에 searchReportFound false가 표시되므로 mode full로 다시 보내시기 바랍니다.
GET /oa-jobs/:id
작업 상태(queued, running, partial, done, failed)와 업로드한 각 파일의 상태를 반환합니다. done, partial, failed 중 하나가 될 때까지 몇 초 간격으로 폴링하시기 바랍니다.
GET /oa-jobs/:id/result
각 의견제출통지서에서 찾은 인용 문헌을 반환합니다. 특허 번호와 그룹(substantive, background, PTO-892, IDS, examiner list), 영어 또는 중국어 패밀리, 비특허 문헌이 포함됩니다. 작업 비용은 작업이 끝날 때 청구되며, 조회에는 비용이 들지 않습니다. deliver_files를 사용하면 작업 완료 후 잠시 동안 job.filesStatus가 preparing으로 표시되므로, ready가 될 때까지 5초 간격으로 결과를 다시 조회하시기 바랍니다. 준비가 끝나면 웹사이트 다운로드에서 기본 선택되는 인용 특허마다 pdfUrl이 제공되고(영어 대응 특허가 있으면 englishPdfUrl도 제공), 작업과 각 의견제출통지서에는 zipUrl이 제공됩니다. 내용은 웹사이트 ZIP과 같은 파일 및 인용 문헌 목록입니다. 같은 API 키로 다운로드할 수 있으며 24시간 동안 보관됩니다. pdfStatus가 not_included 또는 failed인 특허는 POST /patent-pdfs로 받을 수 있습니다.
GET /oa-jobs/:id/archive, /results/:resultId/archive, /files/:fileId
결과에 포함된 URL입니다. 각각 작업 ZIP(의견제출통지서 하나의 ZIP 또는 의견제출통지서별 ZIP을 묶은 ZIP), 의견제출통지서 하나의 ZIP, PDF 하나를 가리킵니다. 작업과 같은 키, 같은 계정으로 접근합니다. 인용 특허 PDF는 의견제출통지서 가격에 포함됩니다. 영어 대응 특허는 어느 URL로 받든 첫 다운로드 시 청구되며, 다시 받을 때는 비용이 들지 않습니다. 파일을 준비하는 동안에는 409 files_not_ready로 응답합니다.
GET /balance
사용 가능한 크레딧(마이크로달러 단위, 1,000,000 = $1), 남은 무료 특허 PDF 수인 patentPdfs.freeRemaining, 다시 집계되는 시점인 freeResetsAt(freeRemainingToday는 같은 값이며 사용 중단 예정)을 반환합니다. Monthly 요금제에서는 monthlyOas도 반환합니다. 이번 기간에 포함된 의견제출통지서 수, 사용한 수(웹사이트와 API 합산), 기간 종료 시점이 담기며, 요금제가 없으면 null입니다.

예시

curl https://downloadpatent.com/api/v1/patent-pdfs \
  -H "Authorization: Bearer $DOWNLOADPATENT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"number": "US10000000B2"}' \
  -o US10000000B2.pdf
curl https://downloadpatent.com/api/v1/oa-jobs \
  -H "Authorization: Bearer $DOWNLOADPATENT_API_KEY" \
  -H "Idempotency-Key: matter-1234-oa-1" \
  -F mode=quick \
  -F [email protected]
curl https://downloadpatent.com/api/v1/oa-jobs/$JOB_ID \
  -H "Authorization: Bearer $DOWNLOADPATENT_API_KEY"

curl https://downloadpatent.com/api/v1/oa-jobs/$JOB_ID/result \
  -H "Authorization: Bearer $DOWNLOADPATENT_API_KEY"

안전한 재시도

POST /oa-jobs를 재시도할 때 같은 Idempotency-Key(영문자, 숫자, . _ : -, 최대 128자)를 보내십시오. 24시간 이내에는 작업을 새로 만들어 다시 청구하지 않고 첫 작업을 반환합니다. 같은 키를 다른 파일과 함께 사용하면 거부됩니다. 크레딧 부족 등으로 첫 요청이 거부되었다면 충전한 뒤 같은 키로 재시도할 수 있습니다.

오류

모든 오류는 형식이 같습니다. code와 message가 담긴 error 객체이며, 경우에 따라 retryAfterSeconds 같은 필드가 추가됩니다(아래 예시 참고). 처리 로직은 code를 기준으로 작성하시기 바랍니다. message는 사람이 읽기 위한 내용입니다.

{
  "error": {
    "code": "rate_limited",
    "message": "Too many requests. Retry after the indicated delay.",
    "retryAfterSeconds": 12
  }
}
401 invalid_api_key
키가 없거나 형식이 잘못되었거나 폐기되었습니다. 또는 해당 계정이 더 이상 활성 상태가 아닙니다.
401 key_disabled / key_expired
키 소유자가 설정에서 키를 비활성화했거나 키가 만료일을 지났습니다. 비활성화된 키는 다시 활성화하면 사용할 수 있지만, 만료된 키는 사용할 수 없으므로 새로 만들어야 합니다.
403 api_not_available
이 계정에는 아직 API가 열려 있지 않습니다. DownloadPatent가 API를 모든 사용자에게 공개하기 전까지 다른 계정의 키는 거부됩니다.
429 rate_limited / daily_patent_cap_reached
rate_limited: 이 키가 해당 분의 요청 횟수를 모두 사용했거나, 이 주소에서 잘못된 키를 너무 많이 보냈습니다. daily_patent_cap_reached: 오늘 API로 받을 수 있는 계정의 특허 PDF 2,000건을 모두 사용했습니다. 다른 엔드포인트는 계속 사용할 수 있습니다. Retry-After 헤더에 표시된 초만큼 기다리시기 바랍니다(일일 한도는 다음 UTC 자정까지). 키 자체의 한도로 거부된 경우 RateLimit 헤더의 t에도 같은 값이 담깁니다.
402 insufficient_credits
크레딧이 요청 비용에 미치지 못합니다. 충전한 뒤 다시 시도하시기 바랍니다.
402 daily_free_limit_reached
무료 특허 PDF를 모두 사용했고, 다음 건을 처리할 크레딧도 부족합니다.
403 terms_consent_required
새 작업을 시작하려면 변경된 이용약관에 동의해야 합니다. 웹사이트에 로그인해 동의하세요. 기존 결과와 잔액 조회는 계속 가능합니다.
402 key_spend_limit_reached
이 요청을 처리하면 해당 기간의 키 사용 한도를 넘습니다. 설정에서 한도를 올리거나 응답에 표시된 초기화 시점까지 기다리시기 바랍니다.
400 invalid_request
요청 형식이 잘못되었습니다. 해당 필드와 사유가 응답에 포함됩니다.
413 payload_too_large
파일이 25 MB를 넘거나 요청 전체가 28 MB를 넘습니다. 더 큰 묶음은 여러 작업으로 나누어 보내시기 바랍니다.
404 not_found / patent_not_found
이 계정에 해당 작업이 없거나, 해당 번호의 공개된 PDF가 없습니다.
405 method_not_allowed
엔드포인트는 존재하지만 이 HTTP 메서드는 지원하지 않습니다. 허용되는 메서드는 Allow 헤더에 표시됩니다.
409 / 422 idempotency_in_progress / idempotency_conflict
이 키로 보낸 첫 요청이 아직 실행 중이거나, 이 키가 다른 파일과 함께 사용되었습니다.
409 result_not_ready / files_not_ready
작업이 끝나지 않았거나 파일을 아직 준비 중입니다. 계속 폴링하시기 바랍니다.
451 region_unavailable
현재 지역 또는 계정에서는 DownloadPatent를 이용할 수 없습니다.
503 unavailable
저희 측 또는 특허청 측의 일시적인 문제입니다. 나중에 다시 시도하시기 바랍니다.

버전 관리 및 지원 중단

버전은 경로에 포함됩니다. /v1 안에서는 필드, 엔드포인트, 오류 코드를 추가하기만 하며, 호환되지 않는 변경은 새 버전으로 제공합니다. 알 수 없는 필드는 무시하시기 바랍니다. 모든 금액은 마이크로달러 단위의 정수입니다. API를 모든 계정에 공개하기 전에 key_spend_limit_reached의 limitMicros와 spentMicros가 문자열에서 숫자로 변경되었습니다.

엔드포인트, 필드 또는 버전을 종료하기 전에는 사용이 중단되기 최소 90일 전에 공지합니다. 공지 시점부터 해당 응답에는 지원 중단 날짜를 담은 Deprecation 헤더(RFC 9745), 사용 종료 날짜를 담은 Sunset 헤더(RFC 8594), 공지로 연결되는 Link 헤더가 포함됩니다. 이 페이지에서 대체 항목을 안내하고, 직전 90일 동안 해당 항목을 호출한 키의 소유자에게 이메일을 보내 드립니다. 현재 지원 중단된 항목은 없습니다.

정확성

의견제출통지서는 OCR로 읽고, 인용 문헌은 규칙으로 추출하며, 규칙으로 부족한 부분에는 AI를 사용합니다. 어느 쪽이든 틀릴 수 있으므로 사용하기 전에 모든 인용 문헌을 의견제출통지서와 대조하시기 바랍니다. AI로 찾은 인용 문헌은 결과에 source ai로 표시됩니다.

OpenAPI 명세

코드 생성기와 AI 에이전트가 읽을 수 있도록 이 엔드포인트들의 명세를 OpenAPI 3.1 형식으로 제공합니다.

DownloadPatent API — 특허 PDF와 의견제출통지서 인용 문헌 · DownloadPatent