https://downf.ioTạo tải về với downf.io
DownF giữ cho việc thực thi API bị vô hiệu hóa cho đến khi một người vận hành xem xét trường hợp sử dụng tương thích. Các ví dụ mô tả hợp đồng dự kiến, trong khi thông tin xác thực thực và hạn mức chỉ đến qua kích hoạt hỗ trợ.
Bắt đầu nhanh
DownF tổ chức máy chủ API xung quanh các thông tin xác thực được kích hoạt hỗ trợ. Chế độ xem tương thích của nó so sánh điểm cuối người thuê được chỉ định. Đường dẫn gọi chỉ máy chủ vẫn là kiểm tra cuối cùng.
X-API-Key: pending_activation_…DownfBridgev1# Available only after support activation
export DOWNF_ACCESS_TOKEN="issued-after-review"
curl -X POST https://downf.io/v1/resolve \
-H "X-API-Key: $DOWNF_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"media_address":"https://www.youtube.com/watch?v=VIDEO_ID"}'An toàn thông tin đăng nhập bắt đầu với lưu trữ bí mật phía máy chủ trên DownF. Chế độ xem tương thích này sau đó không trình bày gói khách hàng nhúng. Sự thật cuối cùng là không có nhật ký công khai hoặc kho lưu trữ.
Giải quyết một liên kết
DownF tổ chức hoạt động Resolve xoay quanh việc phát hiện nguồn. Chế độ xem tương thích của nó so sánh các định dạng từ một URL được gửi. Không có đầu ra giả tạo nào vẫn là kiểm tra cuối cùng.
/v1/resolvePhạm vi: giải quyết| Trường | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
media_address | URL HTTPS | Có | Trang truyền thông công cộng hoặc được ủy quyền để phân tích. |
tenant | chuỗi | Không | Miền thuê bao được gán. Thường bỏ qua. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}Bộ nhận dạng định dạng bắt đầu với giá trị trả về không thay đổi trên DownF. Chế độ xem tương thích này sau đó trình bày khả năng sẵn có theo liên kết. Sự thật cuối cùng là không có nhãn chất lượng đoán mò.
Tạo và theo dõi công việc tải xuống
Việc tạo ra công việc bắt đầu với việc chuẩn bị không đồng bộ trên DownF. Quan điểm tiếp theo bao gồm một yêu cầu HTTP ngắn. Trang giữ cho việc thực hiện bounded worker có thể nhìn thấy.
/v1/jobsPhạm vi: công việc| Trường | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
media_address | URL HTTPS | Có | Cùng nguồn chuẩn hóa gửi giải quyết. |
output_ref | chuỗi | Có | Một ID chính xác từ đáp ứng giải quyết. |
tenant | chuỗi | Không | Miền thuê bao được gán. Thường bỏ qua. |
curl -X POST https://downf.io/v1/jobs \
-H "X-API-Key: $DOWNF_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"media_address":"https://www.youtube.com/watch?v=VIDEO_ID","output_ref":"18"}'transfer_ref.GET /v1/jobs/{transfer_ref} với cùng một chìa khóa.| Tình trạng | Ý nghĩa | Hành động khách |
|---|---|---|
queued | Được nhận vào hàng đợi có giới hạn. | Bầu cử lại với backoff. |
extracting | Cập nhật siêu dữ liệu nguồn hoặc đường dẫn. | Tiếp tục bỏ phiếu. |
processing | Tải xuống, remuxing hoặc hợp nhất. | Hiển thị tiến độ máy chủ. |
ready | Tải xuống ký có sẵn. | Gửi URL cho người dùng. |
failed | Lỗi kết cấu đầu cuối. | Đọc error_code. Chỉ thử lại khi được khuyên. |
expired | Đầu ra tạm thời đã được loại bỏ. | Tạo một công việc mới. |
curl https://downf.io/v1/jobs/TRANSFER_REF \
-H "X-API-Key: $DOWNF_ACCESS_TOKEN"DownF's tương thích xem xét một giây chờ ban đầu cho Job polling. Nó cho thấy capped backoff tiếp theo và không che giấu giao ký tạm thời.
Những sai lầm có thể dự đoán
DownF trình bày ba điểm thực tiễn cho hợp đồng Lỗi. Đầu tiên là một phong bì không phải 2xx. Chế độ tương thích sau đó bao gồm một ID yêu cầu hỗ trợ. Điểm cuối cùng là xử lý khách hàng có thể dự đoán được.
{
"success": false,
"error": {
"code": "RATE_LIMITED",
"category": "rate_limited",
"message": "Too many requests. Please try again shortly.",
"retryable": true,
"details": {"retry_after_seconds": 20}
},
"request_id": "…"
}| HTTP | Ý nghĩa điển hình | Hành động |
|---|---|---|
| 400 | URL không hợp lệ, thân hoặc định dạng không có sẵn. | Sửa yêu cầu. Giải quyết lại cho các định dạng. |
| 401 | Chìa khóa bị thiếu, không hợp lệ, hết hạn hoặc phạm vi sai. | Kiểm tra chứng chỉ bên máy chủ. |
| 403 | Chính sách thuê bao hoặc nguồn từ chối yêu cầu. | Không vượt qua chính sách Liên hệ hỗ trợ. |
| 404 | Công việc không rõ hoặc hết hạn. | Tạo một công việc mới nếu phù hợp. |
| 429 | Đã đạt giới hạn yêu cầu hoặc công việc hoạt động. | Danh dự retry_after_seconds. |
| 503 | Đường đợi/thể tích hoặc lên nguồn tạm thời không có sẵn. | Thử lại với backoff theo cấp số nhân và jitter. |
Hợp đồng vận hành
DownF gán một trần yêu cầu sau khi xem xét khách hàng mục tiêu, giữ cho các kiểm tra tương thích và nhà cung cấp phía trên của nó ổn định.
- Sử dụng logic ứng dụng idempotent và không bao giờ bắt đầu các công việc trùng lặp cho cùng một lần nhấp của người dùng.
- Bộ nhớ đệm siêu dữ liệu giải quyết nhanh, nhưng luôn coi các URL tải xuống có chữ ký là hết hạn.
- Sử dụng backoff lũy thừa có giới hạn với jitter cho
429,503và lỗi có thể thử lại. - Xử lý chỉ truyền thông công cộng hoặc truyền thông bạn được phép truy cập. DRM và kiểm soát truy cập không được bỏ qua.
- Giữ ID yêu cầu và ID công việc trong các bản ghi hoạt động riêng. Không ghi URL gửi không cần thiết.
DownF tổ chức truy cập Schema xoay quanh việc kích hoạt trước khi khám phá. Chế độ xem tương thích so sánh xác thực được chỉ định. Các hình thức yêu cầu đã được ghi chép vẫn là kiểm tra cuối cùng.
Kích hoạt thông qua hỗ trợ
Mô tả sản phẩm, dự báo số cuộc gọi hàng tháng và liệt kê các nền tảng cần phân tích. Hỗ trợ DownF sẽ xác nhận phạm vi cần thiết trước khi cấp một chứng chỉ hiển thị một lần mà bản sao lưu trữ chỉ là một hàm băm.
Yêu cầu kích hoạt Chìa khóa được giới hạn phạm vi thuê bao, có thể hủy bỏ và được phát hành thông qua biểu mẫu Liên hệ. Skript ẩn danh không thể thực hiện công việc tải xuống.