콘텐츠로 이동

Connect REST API 참조

NextPDF Connect는 도구 레지스트리를 REST 전송을 통해 HTTP로 노출하며, 이는 OpenAPI 3.1 계약으로 기술됩니다. 이 페이지는 해당 인터페이스에 대한 참조입니다. 기본 URL, 인증 방법, 작업 그룹, 오류 모델을 다룹니다. 전체 기계 판독 가능 사양이 게시되어 있으므로, 무엇도 손으로 복사하지 않고 대화형 탐색기, 클라이언트 생성기 또는 요청 클라이언트에 로드할 수 있습니다.

전송 방식과 무관한 도구 카탈로그(REST뿐 아니라 Model Context Protocol 및 gRPC를 통한 동일한 작업)는 Connect API 참조를 참조하세요. RoadRunner 파이프라인, 배포 및 인증 설정은 REST 전송 가이드를 참조하세요.

REST 전송은 배포에 맞게 구성된 호스트와 포트에서 수신 대기합니다. 로컬 실행에서는 http://localhost:8080이며, 프로덕션에서는 워커 풀 앞단의 주소입니다.

인증 방식은 베어러 토큰입니다. 티어 제한이 적용되는 라우트에 대한 모든 요청에서는 Authorization 헤더로 API 키를 전송하세요.

Terminal window
curl --request POST \
--url http://localhost:8080/api/v1/render \
--header "Authorization: Bearer $NEXTPDF_API_KEY" \
--header "Content-Type: application/json" \
--data '{"operations":[{"op":"add_text","text":"Hello from NextPDF Connect"}]}'

읽기 전용 라이브니스 및 레디니스 프로브에는 토큰이 필요하지 않습니다.

사용 가능 여부는 티어에 따라 제한됩니다. 오픈 소스 코어는 문서, 렌더링, 세션 및 작업(job) 관련 작업을 제공합니다. 서명, 양식 작성, 수정 마스킹(redaction), 비교, 접근성 검사, 최적화에는 서버와 함께 설치된 상용 에디션이 필요합니다. 특정 배포에서 사용할 수 있는 권위 있는 작업 집합은 capabilities 엔드포인트에서 반환됩니다. 고정된 목록을 가정하지 말고 해당 엔드포인트를 조회하세요.

메서드경로용도
GET/healthz라이브니스 프로브. 인증 없음.
GET/readyz레디니스 프로브(종속성 및 워커 풀 준비 완료). 인증 없음.
GET/api/v1/capabilities이 배포가 실제로 노출하는 도구와 티어입니다. 가장 먼저 조회하세요.
메서드경로용도
POST/api/v1/render정렬된 작업 목록에서 문서를 렌더링하고 PDF를 반환합니다.
POST/api/v1/extract-textPDF에서 텍스트 콘텐츠를 추출합니다.
POST/api/v1/merge여러 PDF 입력을 하나의 문서로 병합합니다.
POST/api/v1/splitPDF를 여러 문서로 분할합니다.
메서드경로용도
POST/api/v1/jobs장기 실행 작업을 작업(job)으로 제출합니다.
GET/api/v1/jobs/{id}작업 상태를 폴링합니다.
GET/api/v1/jobs/{id}/result완료된 작업 결과를 검색합니다.

세션은 여러 호출 동안 문서를 열린 상태로 유지하므로, 문서를 점진적으로 구성하고 마지막에 한 번 렌더링할 수 있습니다.

메서드경로용도
POST/api/v1/sessions세션을 엽니다.
GET / DELETE/api/v1/sessions/{sessionId}세션을 검사하거나 닫습니다.
POST/api/v1/sessions/{sessionId}/pages페이지를 추가합니다.
POST/api/v1/sessions/{sessionId}/text텍스트를 추가합니다.
POST/api/v1/sessions/{sessionId}/images이미지를 추가합니다.
POST/api/v1/sessions/{sessionId}/tables표를 추가합니다.
POST/api/v1/sessions/{sessionId}/html렌더링된 HTML을 추가합니다.
POST/api/v1/sessions/{sessionId}/font활성 글꼴을 설정합니다.
POST/api/v1/sessions/{sessionId}/render세션 문서를 렌더링합니다.

이 라우트들은 해당 상용 에디션이 설치된 경우에만 등록됩니다. 일부에는 휴먼-인-더-루프 확인 흐름을 통한 승인 게이트가 적용됩니다. 위험 티어를 참조하세요.

메서드경로용도
POST/api/v1/sign디지털 서명을 적용합니다.
POST/api/v1/fill-form대화형 양식을 작성합니다.
POST/api/v1/redact콘텐츠를 수정 마스킹(redaction)합니다.
POST/api/v1/comparePDF 문서 두 개를 비교합니다.
POST/api/v1/check-accessibility구조적 접근성 검사를 실행합니다.
POST/api/v1/optimize문서를 최적화하고 크기를 줄입니다.

REST 전송은 RFC 9110에 정의된 의미 체계에 따라 HTTP 상태 코드를 사용합니다. 2xx는 성공을 나타냅니다. 4xx는 호출자가 수정해야 하는 요청에 사용되며(400 잘못된 형식의 본문, 401 누락되었거나 유효하지 않은 토큰, 403 티어 또는 승인 거부, 404 알 수 없는 라우트 또는 작업, 409 멱등성 충돌, 422 엔진이 처리할 수 없는 올바른 형식의 요청), 5xx는 서버 측 실패에 사용됩니다. 401 응답은 WWW-Authenticate 챌린지를 전달합니다.

오류 본문은 RFC 9457(Problem Details for HTTP APIs)에 따른 application/problem+json 문서입니다. 안정적인 type, 짧은 title, 숫자 status, 사람이 읽을 수 있는 detail로 구성됩니다. 매칭에는 type을 사용하고, detail 문자열은 사용하지 마세요. 규범적 정의는 RFC 9110(HTTP Semantics) 및 RFC 9457도 참조하세요.

상태를 변경하는 요청이 재시도되어도 한 번만 처리되도록 Idempotency-Key 헤더와 함께 제출하세요.

전체 계약은 정적 OpenAPI 3.1 문서로 게시됩니다:

https://nextpdf.dev/docs/openapi/nextpdf-connect.yaml

REST 인터페이스의 단일 진실 공급원으로 이를 사용하세요:

  1. 이 계약에서 생성되고 브라우저 내에서 자체 호스팅되는 Scalar 참조인 대화형 API 탐색기를 열어, 각 작업을 요청 및 응답 스키마와 함께 읽고 시험해 보세요.
  2. Postman 또는 Insomnia와 같은 요청 클라이언트로 가져오세요.
  3. OpenAPI 생성기를 사용해 사용하는 언어에 맞는 타입 지정 클라이언트를 생성하세요.

이 문서는 패키지에 버전이 고정된 정적 계약입니다. 라이브 엔드포인트로 제공되는 것이 아니므로, 배포 전반에 걸쳐 안정적으로 유지됩니다.