https://dwyt.appTải xuống bản dựng với DWYT
Các mẫu mã DWYT ghi lại trình tự yêu cầu trong tương lai. Các cuộc gọi sản xuất vẫn đóng cho đến khi khách hàng video được xem xét và thông tin đăng nhập được gán bởi người vận hành được kích hoạt.
Bắt đầu nhanh
Bản đồ định dạng của DWYT xem xét các chứng chỉ được kích hoạt hỗ trợ cho máy chủ API. Nó hiển thị một điểm cuối thuê bao được chỉ định tiếp theo và không che khuất đường dẫn gọi chỉ dành cho máy chủ.
X-API-Key: pending_activation_…DwytFlowv1# Available only after support activation
export DWYT_FLOW_SECRET="issued-after-review"
curl -X POST https://dwyt.app/v1/resolve \
-H "X-API-Key: $DWYT_FLOW_SECRET" \
-H "Content-Type: application/json" \
-d '{"public_media":"https://www.youtube.com/watch?v=VIDEO_ID"}'Để đảm bảo an toàn thông tin đăng nhập, DWYT bắt đầu với lưu trữ bí mật phía máy chủ. Bản đồ định dạng của nó kết hợp điều đó với việc không nhúng gói khách hàng và kết thúc với 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
Bản đồ định dạng của DWYT xem xét phát hiện nguồn cho thao tác Giải quyết. Nó hiển thị các định dạng từ một URL được gửi tiếp theo và không che giấu các đầu ra không được tạo ra.
/v1/resolvePhạm vi: giải quyết| Trường | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
public_media | 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
}Đối với định danh Định dạng, DWYT bắt đầu với giá trị trả về không thay đổi. Bản đồ định dạng của nó kết hợp điều đó với khả năng sẵn có theo liên kết và kết thúc mà không có nhãn chất lượng đoán được.
Tạo và theo dõi công việc tải xuống
Đối với Tạo công việc, DWYT kiểm tra chuẩn bị không đồng bộ trước một yêu cầu HTTP ngắn. Bản đồ định dạng này cũng làm rõ việc thực thi công nhân có giới hạn.
/v1/jobsPhạm vi: công việc| Trường | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
public_media | URL HTTPS | Có | Cùng nguồn chuẩn hóa gửi giải quyết. |
rendition_key | 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://dwyt.app/v1/jobs \
-H "X-API-Key: $DWYT_FLOW_SECRET" \
-H "Content-Type: application/json" \
-d '{"public_media":"https://www.youtube.com/watch?v=VIDEO_ID","rendition_key":"18"}'flow_id.GET /v1/jobs/{flow_id} 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://dwyt.app/v1/jobs/FLOW_ID \
-H "X-API-Key: $DWYT_FLOW_SECRET"Việc kiểm tra công việc bắt đầu với chờ đợi ban đầu một giây trên DWYT. Bản đồ định dạng này sau đó trình bày việc lùi lại có giới hạn. Sự thật cuối cùng là giao hàng ký tạm thời.
Những sai lầm có thể dự đoán
DWYT xử lý hợp đồng Lỗi bằng cách đầu tiên xác định một phong bì không phải 2xx. Nó tiếp tục với một ID yêu cầu hỗ trợ và giữ việc xử lý khách hàng có thể dự đoán trong tầm nhìn.
{
"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
DWYT xem xét sự tích hợp trước khi chọn các hạn ngạch bảo vệ cả khách hàng video và các dịch vụ lên dòng.
- 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.
Bản đồ định dạng của DWYT xem xét kích hoạt trước khi khám phá để truy cập Schema. Nó hiển thị xác thực được chỉ định tiếp theo và không che khuất các hình dạng yêu cầu đã được ghi chép.
Kích hoạt thông qua hỗ trợ
Giải thích ứng dụng đằng sau yêu cầu, ước tính lưu lượng truy cập hàng tháng và các dịch vụ video mà nó sẽ sử dụng. DWYT xem xét các chi tiết đó, cấp các quyền API cần thiết và không lưu giữ giá trị khóa có thể khôi phục.
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.