Chuyển đến nội dung chính

Tài liệu API Fileverity

Giới hạn tốc độ và header

Giới hạn tốc độ yêu cầu theo từng khóa API, các header phản hồi về giới hạn tốc độ, retry-after trên 429 và 503 cùng các header khác mà Fileverity API đặt.

Xem dạng MarkdownCập nhật 2026-11-04

Mỗi khóa API có thể gửi 120 yêu cầu mỗi phút. Giới hạn được tính theo từng khung thời gian một phút và áp dụng cho mọi endpoint, kể cả các yêu cầu trả về lỗi. Khi đã dùng hết giới hạn của một khung thời gian, các yêu cầu tiếp theo nhận 429 với mã rate_limited cho đến khi khung thời gian được đặt lại.

Cần giới hạn cao hơn hoặc giá theo khối lượng? Liên hệ bộ phận kinh doanh.

Header giới hạn tốc độ

Mọi phản hồi cho một yêu cầu đã xác thực đều kèm trạng thái của khung thời gian hiện tại của bạn:

HeaderÝ nghĩa
x-ratelimit-limit-requestsSố yêu cầu được phép trong mỗi khung thời gian.
x-ratelimit-remaining-requestsSố yêu cầu còn lại trong khung thời gian hiện tại.
x-ratelimit-reset-requestsSố giây còn lại cho đến khi khung thời gian được đặt lại.
retry-afterChỉ có trên 429 với mã rate_limited và trên 503 với mã service_unavailable. Số giây cần chờ trước yêu cầu tiếp theo. pending_files_limit (cũng là 429) không có header này.

Các yêu cầu bị từ chối do thiếu khóa hoặc khóa không hợp lệ (401) không kèm các header này.

async function call(url, init) {  for (let attempt = 0; attempt < 5; attempt++) {    const response = await fetch(url, init);    if (response.status !== 429) return response;    const wait = Number(response.headers.get("retry-after")) || 1;    await new Promise((resolve) => setTimeout(resolve, wait * 1000));  }  throw new Error("Rate limited");}

Hãy phân tán các đợt yêu cầu dồn dập theo thời gian, ưu tiên dùng webhook thay cho các vòng lặp truy vấn định kỳ dày đặc, và dùng Prefer: wait trên lượt phân tích thay vì truy vấn định kỳ. Khi hệ thống đang bận, POST /analyses trả về 503 service_unavailable kèm retry-after; xem Khi dịch vụ đang bận.

Các header phản hồi khác

HeaderÁp dụng choÝ nghĩa
x-request-idMọi phản hồiMã yêu cầu, cũng có trong nội dung của các phản hồi lỗi.
cache-control: no-storeMọi phản hồiPhản hồi của API không bao giờ được lưu vào bộ nhớ đệm.
preference-appliedPOST /analyseswait=N khi header Prefer của bạn được áp dụng.
idempotent-replayedCác endpoint POSTtrue khi phản hồi là bản phát lại đã lưu. Xem Idempotency.
x-evidence-includedGET /analyses/{id}/report.pdffalse khi bằng chứng của tài liệu đã hết hạn và PDF không còn chứa phần này.

Header bạn gửi

  • Authorization: Bearer <key>: bắt buộc. Xem Xác thực và khóa API.
  • Content-Type: application/json cho nội dung JSON; multipart/form-data cho các lượt tải lên bằng POST /files.
  • Idempotency-Key: tùy chọn, dùng với các yêu cầu POST.
  • Prefer: wait=N: tùy chọn, dùng với POST /analyses.

Ví dụ: curl -i https://api.fileverity.com/v1/models -H "Authorization: Bearer $FILEVERITY_API_KEY" hiển thị toàn bộ header phản hồi.