관련 링크
0로그인

REST API

이미지, PDF 및 파일 처리 API

모든 파일 프로세서는 하나의 작업 엔드포인트를 공유합니다. toolName와 함께 작업을 선택하십시오. 매개 변수를 찾아 모든 도구에 대한 전체 예제를 확인하십시오.

1. API 키 생성
  1. 등록, 이메일 확인 및 무료 계정에 로그인.
  2. 설정 열기 → API 키 (사용자 메뉴에서도 사용할 수 있습니다), 이름을 입력하고 키를 만듭니다.
  3. 전체 키는 한번 표시됩니다. 서버 측 API_KEY 환경 변수에 복사하십시오. 잃어버린 키를 복사하고 교체하십시오.
Authorization: Bearer $API_KEY

업로드, 작업, polling, 다운로드 및 규칙 관리는 유효한 API 열쇠 또는 서명 웹 세션을 요구합니다. 스크립트, MCP 및 자동화를 위한 API 열쇠를 사용하십시오; 프론트엔드 부호에서 그것을 두지 마십시오. 즉시 작동되는 열쇠 정지.

각 키는 최대 120 요청/분을 기본으로 허용합니다. 작업 할당은 계정과 키에 걸쳐 공유됩니다. 20/day, Pro를 100/day에 무료로 기본으로 설정할 수 있습니다. 실제 구성에 /api/tools/entitlements를 읽으십시오.

2. 업로드 → 일자리 창출 → 투표 → 다운로드
* 이름 *입력 / 응답
POST /api/tools/filesmultipart 필드 파일 → data.file.id; 업로드 당 하나의 파일
POST /api/tools/jobs{toolName, input: {fileId / fileIds, execution: "async", …}} → data.job.id
GET /api/tools/jobs?id=JOB_IDdata.job.status + data.job.result
GET /api/tools/artifacts?id=ARTIFACT_ID&download=1인증 바이너리 다운로드; data.job.result.data.artifact.id에 ID
DELETE /api/tools/jobs?id=JOB_ID종료 작업을 취소; 터미널 작업은 409를 반환 할 수 있습니다

HTTP 202 (status: allowed)는 완료되지 않습니다. data.job.status가 완료 될 때까지 모든 2 초마다 오염, 취소 또는 만료됩니다. data.job.result.data에서 성공 데이터를 읽고 data.job.result.error.details에서 고장 세부 사항. 검사는 다운로드 파일없이 JSON를 반환합니다.

모드: must_pass는 모든 규칙을 통과해야 합니다; best_effort는 경고를 가진 후보자를 돌려보낼 수 있습니다. 인라인 규칙 또는 저장된 ruleId를, 결코 둘 다 보내십시오. 단 하나 이미지 공구는 일 당 하나 fileId를 받아들입니다; 이미지 당 일을 창조하십시오.

업로드 및 artifacts 일반적으로 지속 24 시간; 사용 expiresAt. 작업 작성에 Idempotency-Key를 설정하고 네트워크 실패 후 동일한 몸으로 재사용하십시오. 무료 작업은 허용 25 MB 결합, 100 페이지, 40 MP 그리고 최대 10 입력합니다. Pro 수 있습니다. 100 입력; 엔진 한계는 아직도 적용합니다.

3. 도구에 의해 매개 변수 및 예

제출 전 파일 검사 · validate_file
POST /api/tools/validate

파일에는 공급 된 사실과 규칙이 포함되어 있습니다. 바이트가 업로드되거나 검사되지 않습니다. 저장 된 ruleId는 인증이 필요합니다.

{
  "file": {
    "name": "example.png",
    "mimeType": "image/png",
    "bytes": 180000
  },
  "rules": {
    "maxBytes": 200000
  },
  "mode": "must_pass"
}
도구 열기 및 양식에서 코드를 생성
이미지를 200KB로 압축 · compress_image
POST /api/tools/jobs

fileId, targetBytes (바이트), 형식, allowDownscale; 규칙.maxBytes는 산출을 유효하게 할 수 있습니다.

{
  "toolName": "compress_image",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "format": "jpeg",
    "targetBytes": 200000,
    "allowDownscale": true,
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
이미지 형식 변환 · convert_image
POST /api/tools/jobs

fileId, 형식; 옵션 배경 (#RRGGBB) 및 dpi (JPEG / PNG 전용).

{
  "toolName": "convert_image",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "format": "webp",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
이미지 크기 조절 · resize_image
POST /api/tools/jobs

fileId, 최소 폭 / 높이 (픽셀), 적합 (컨테이너 / 커버), allowUpscale, 형식, dpi.

{
  "toolName": "resize_image",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "width": 1200,
    "fit": "contain",
    "allowUpscale": false,
    "format": "jpeg",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
이미지 자르기 · crop_image
POST /api/tools/jobs

fileId, 작물: 상단 왼쪽 코너에서 픽셀의 {x,y,width,height}; 형식은 출력 유형을 선택합니다.

{
  "toolName": "crop_image",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "crop": {
      "x": 0,
      "y": 0,
      "width": 200,
      "height": 200
    },
    "format": "png",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
배경 제거 · remove_background
POST /api/tools/jobs

이미지 배경을 제거하고 투명 PNG를 다운로드합니다.

{
  "toolName": "remove_background",
  "input": {
    "fileId": "FILE_ID",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
이미지 정보 확인 · inspect_image
POST /api/tools/jobs

fileId; 디코딩된 차원, DPI 및 EXIF/GPS 사실 반환. 다운로드 artifact 없음.

{
  "toolName": "inspect_image",
  "input": {
    "fileId": "FILE_ID",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
이미지를 PDF로 변환 · convert_image_to_pdf
POST /api/tools/jobs

페이지 순서에 있는 fileIds; pageSize (원래/a4/letter), pageOrientation (초상/landscape), marginPoints (0-144 pt), pageDpi (36-600).

{
  "toolName": "convert_image_to_pdf",
  "input": {
    "fileIds": [
      "FILE_ID_1",
      "FILE_ID_2"
    ],
    "mode": "best_effort",
    "pageSize": "a4",
    "pageOrientation": "portrait",
    "marginPoints": 24,
    "pageDpi": 150,
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
PDF 정보 확인 · inspect_file
POST /api/tools/jobs

fileId; 실제 PDF 페이지를 반환, 치수, 글꼴 및 임베디드 이미지 사실. 다운로드 Artifact 없음.

{
  "toolName": "inspect_file",
  "input": {
    "fileId": "FILE_ID",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
PDF를 200KB로 압축 · compress_pdf
POST /api/tools/jobs

fileId; 규칙.maxBytes는 바이트의 표적을 놓습니다. 엄격한 형태는 표적이 만나지 않는 경우에 규칙 보고에 실패합니다.

{
  "toolName": "compress_pdf",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "rules": {
      "maxBytes": 200000
    },
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
PDF 병합 · merge_pdfs
POST /api/tools/jobs

fileIds, 최소 2, 배열 순서에서 합병; 옵션 규칙은 결과를 검증.

{
  "toolName": "merge_pdfs",
  "input": {
    "fileIds": [
      "FILE_ID_1",
      "FILE_ID_2"
    ],
    "mode": "best_effort",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
PDF 페이지 추출 · split_pdf
POST /api/tools/jobs

fileId, pageRange (예: 1-3,5,2) 또는 페이지 배열; 1에서 페이지 번호 시작은 재주문되거나 반복될 수 있습니다.

{
  "toolName": "split_pdf",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "pageRange": "1-2",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
PDF 페이지 회전 · rotate_pdf
POST /api/tools/jobs

fileId, 교체 (90/180/270); 선택 pageRange/페이지, 모든 페이지를 회전시키기 위하여 무겁게 한.

{
  "toolName": "rotate_pdf",
  "input": {
    "fileId": "FILE_ID",
    "mode": "best_effort",
    "rotation": 90,
    "pageRange": "1",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
제출용 ZIP 패키지 · create_submission_package
POST /api/tools/jobs

fileIds, packageName, namingTemplate; 무료 템플릿: {index}-{name}.{ext}. 사용자 정의 템플릿은 Pro가 필요합니다. ZIP는 파일, 표 및 파일 보고서를 포함합니다.

{
  "toolName": "create_submission_package",
  "input": {
    "fileIds": [
      "FILE_ID_1",
      "FILE_ID_2"
    ],
    "mode": "best_effort",
    "packageName": "submission-package",
    "namingTemplate": "{index}-{name}.{ext}",
    "execution": "async"
  }
}
도구 열기 및 양식에서 코드를 생성
오류, 권한 및 통합

401: 누락된, 무효 또는 개정된 열쇠. 403: 계정/키 부족 허가. 429/rate_limited: 요청 비율 또는 일일 할당량 도달; 재발이 허용될 때만 뒤로. invalid_input: 체크 모수. subscription_required: 계획 기능 필수. processing_failed/rule 실패: 오류를 검사하십시오. 200는 혼자서만 실행하지 않습니다.

카탈로그, OpenAPI 및 공급-제품 /api/tools/validate 엔드포인트 공개. 게스트 웹 처리에는 별도의 세션 / IP 제한 경로가 있으며 익명 자동화 자격 증명이 없습니다. 파일, 작업, 규칙 및 검사는 소유자의 ROI입니다.

/api/tools/rules (GET/POST/DELETE)를 사용하여 저장한 규칙을 위한 /api/tools/jobs를 역사에 얻십시오. OpenAPI는 가득 차있는 스키마를 포함합니다. MCP와 REST 공유 공구 및 계정 quotas. Pro 체크 아웃 및 정상 가동은 아직 열리지 않습니다.

# CLI: ATTACHREADY_BASE_URL + ATTACHREADY_API_KEY
node scripts/tools-cli.mjs run convert_image --input '{"fileId":"FILE_ID","format":"webp"}' --wait