Tài liệu Endpoint Trạng thái công việc
1. Tổng quan
Endpoint https://api.revidapi.com/paid/get/job/status là một phần của RevidAPI và được sử dụng để lấy trạng thái của một công việc cụ thể. Nó phù hợp với cấu trúc API tổng thể như một endpoint tiện ích để giám sát và quản lý các công việc đã được gửi đến các endpoint xử lý phương tiện khác nhau.
2. Endpoint
URL Path: https://api.revidapi.com/paid/get/job/status
HTTP Method: POST
3. Yêu cầu
Headers
x-api-key(bắt buộc): API key để xác thực.
Tham số Body
Body yêu cầu phải là đối tượng JSON với tham số sau:
job_id(string, bắt buộc): Mã định danh duy nhất của công việc mà trạng thái được yêu cầu.
Directive validate_payload trong tệp routes áp dụng schema JSON sau cho body yêu cầu:
{
"type": "object",
"properties": {
"job_id": {
"type": "string"
}
},
"required": ["job_id"],
}
Ví dụ yêu cầu
{
"job_id": "e6d7f3c0-9c9f-4b8a-b7c3-f0e3c9f6b9d7"
}
curl -X POST \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"job_id": "e6d7f3c0-9c9f-4b8a-b7c3-f0e3c9f6b9d7"}' \
https://api.revidapi.com/paid/get/job/status
4. Phản hồi
Phản hồi thành công
Phản hồi thành công sẽ chứa trực tiếp nội dung tệp trạng thái công việc, như được hiển thị trong ví dụ phản hồi từ app.py:
{
"endpoint": "/v1/toolkit/job/status",
"code": 200,
"id": null,
"job_id": "e6d7f3c0-9c9f-4b8a-b7c3-f0e3c9f6b9d7",
"response": {
"job_status": "done",
"job_id": "e6d7f3c0-9c9f-4b8a-b7c3-f0e3c9f6b9d7",
"queue_id": 140368864456064,
"process_id": 123456,
"response": {
"endpoint": "/v1/media/transcribe",
"code": 200,
"id": "transcribe_job_123",
"job_id": "e6d7f3c0-9c9f-4b8a-b7c3-f0e3c9f6b9d7",
"response": "Transcription completed successfully.",
"message": "success",
"pid": 123456,
"queue_id": 140368864456064,
"run_time": 5.234,
"queue_time": 1.123,
"total_time": 6.357,
"queue_length": 0,
"build_number": "1.0.0"
}
},
"message": "success",
"pid": 123456,
"queue_id": 140368864456064,
"run_time": 0.001,
"queue_time": 0.0,
"total_time": 0.001,
"queue_length": 0,
"build_number": "1.0.0"
}
Phản hồi lỗi
- 404 Not Found: Nếu không tìm thấy công việc với
job_idđược cung cấp, phản hồi sẽ là:
{
"error": "Job not found",
"job_id": "e6d7f3c0-9c9f-4b8a-b7c3-f0e3c9f6b9d7"
}
- 500 Internal Server Error: Nếu có lỗi không mong muốn xảy ra khi lấy trạng thái công việc, phản hồi sẽ là:
{
"error": "Failed to retrieve job status: <error_message>",
"code": 500
}
5. Xử lý lỗi
- Thiếu hoặc tham số không hợp lệ: Nếu tham số
job_idbị thiếu hoặc không hợp lệ, yêu cầu sẽ bị từ chối với lỗi 400 Bad Request. - Không tìm thấy công việc: Nếu không tìm thấy công việc với
job_idđược cung cấp, lỗi 404 Not Found sẽ được trả về. - Lỗi không mong muốn: Bất kỳ lỗi không mong muốn nào xảy ra trong quá trình lấy trạng thái công việc sẽ dẫn đến phản hồi 500 Internal Server Error.
Ngữ cảnh ứng dụng chính (app.py) bao gồm xử lý lỗi cho các tình huống tràn hàng đợi, nơi lỗi 429 Too Many Requests được trả về nếu đạt đến độ dài hàng đợi tối đa.
6. Ghi chú sử dụng
- Đảm bảo bạn có API key hợp lệ để xác thực.
- Tham số
job_idphải là chuỗi UUID hợp lệ đại diện cho một công việc hiện có. - Endpoint này không thực hiện bất kỳ xử lý phương tiện nào; nó chỉ lấy trạng thái của một công việc đã được gửi trước đó.
7. Vấn đề thường gặp
- Cung cấp
job_idkhông hợp lệ hoặc không tồn tại. - Cố gắng lấy trạng thái của một công việc đã được xử lý và đã bị xóa khỏi hệ thống.
8. Thực hành tốt nhất
- Sử dụng endpoint này để giám sát tiến trình của các công việc chạy lâu hoặc kiểm tra trạng thái của các công việc đã hoàn thành.
- Triển khai xử lý lỗi phù hợp trong ứng dụng máy khách của bạn để xử lý các kịch bản lỗi khác nhau, chẳng hạn như không tìm thấy công việc hoặc lỗi không mong muốn.
- Cân nhắc giới hạn tốc độ hoặc triển khai hệ thống hàng đợi ở phía máy khách để tránh làm quá tải API với quá nhiều yêu cầu.