ایجاد دانلود جدید
https://api.parsget.com/api/v1/downloadsبرای پیگیری درخواست در لاگها، یک شناسه بین ۱ تا ۱۰۰ کاراکتر بفرستید. اگر این هدر را نفرستید، سرور شناسه میسازد.
هدرهای استانداردیک URL با HTTP/HTTPS یا لینک مگنت بفرستید تا پارسگت دانلود را ثبت کند. هاست یا سرویس مرتبط با لینک بهصورت خودکار تشخیص داده میشود. برای ارسال فایل .torrent، .nzb یا .xml از POST /downloads/upload استفاده کنید.
ابتدا data.kind را بررسی کنید. پاسخ 201 با kind برابر download یعنی دانلود ایجاد شده و مشخصات آن در data.download است؛ این پاسخ به معنی تکمیل دانلود نیست. وضعیت را با شناسه دانلود پیگیری کنید.
ایجاد دانلود برای بعضی از لینکها به انتخاب کاربر نیاز دارد. برای مثال، پس از ارسال لینک یوتیوب، ابتدا کیفیتهای موجود نمایش داده میشوند و دانلود تا زمان انتخاب کیفیت آغاز نمیشود. در این حالت، پاسخ شامل data.kind=selection است و گزینههای قابل انتخاب را در data.selection.items برمیگرداند. کد وضعیت این پاسخ 200 است. یک item_id قابل انتخاب را به POST /download-selections/{selection}/choices بفرستید. ممکن است پیش از ایجاد دانلود، بیش از یک مرحله انتخاب وجود داشته باشد.
OAuth Scope: downloads:write
گزینهها در data.selection.items داخل یک آرایه قرار دارند. هر گزینه با parent_id مشخص میکند زیرمجموعه کدام گزینه است. در هر درخواست، فقط یک گزینه با selectable=true انتخاب کنید و شناسه آن را در item_id بفرستید.
برای دریافت نتیجه دانلود، شامل تکمیل، خطا یا لغو آن، آدرس وبهوک برنامه خود را در webhook_url بفرستید.
با client_reference میتوانید دانلود را به دادههای برنامه خود، مانند شناسه یک قسمت، مرتبط کنید.
Request body
| Field | Type | Description |
|---|---|---|
url | stringrequired | آدرس اینترنتی معتبر (HTTP/HTTPS) یا لینک مگنت (Magnet) |
directory | stringoptional | مسیر پوشه مقصد، مانند Movies. نام یا مسیر پوشه را بفرستید؛ این فیلد شناسه پوشه را نمیپذیرد. |
client_reference | stringoptional | برچسب دلخواه برای ارتباط دانلود با دادههای برنامه شما. چند دانلود میتوانند برچسب یکسان داشته باشند. |
webhook_url | stringoptionaluri | آدرس عمومی HTTPS برنامه شما برای دریافت نتیجه دانلود، شامل تکمیل، خطا یا لغو آن. پیش از استفاده، برای Personal API Key یا برنامه OAuth خود webhook secret بسازید. |
Response schema
object| Field | Type | Description |
|---|---|---|
kind | stringselection | — |
selection | object | |
id | string | — |
prompt | string | عنوان یا راهنمای مرحله انتخاب برای نمایش به کاربر |
expires_at | stringdate-time | مهلت انتخاب کاربر. پس از این زمان، شناسه مرحله و گزینههای آن معتبر نیستند. |
items | object[] | |
id | string | شناسه گزینه در مرحله انتخاب فعلی. |
parent_id | string | شناسه گزینهای که این مورد زیرمجموعه آن است. برای گزینههای سطح اول، null است. |
name | string | — |
size_bytes | integerint64min 0 | — |
kind | stringdirectoryvideoaudioimagedocumentnull | — |
status | stringnonesubmittedreadynull | — |
tags | Record<string, string> | — |
thumbnail_url | stringuri | — |
selectable | boolean | اگر true باشد، کاربر میتواند این گزینه را انتخاب کند. |
object| Field | Type | Description |
|---|---|---|
kind | stringdownload | — |
download | object | |
id | string | — |
client_reference | string | برچسب دلخواه برای ارتباط دانلود با دادههای برنامه شما، مثلاً شناسه قسمت یک مجموعه. چند دانلود میتوانند برچسب یکسان داشته باشند. |
name | string | — |
status | stringqueuedprocessingdownloadingfinalizingcompletedblockedfailedcanceled | وضعیت دانلود. queued یعنی در صف، processing یعنی در حال بررسی و آمادهسازی دانلود، downloading یعنی دریافت فایل و finalizing یعنی آمادهسازی نهایی. completed یعنی تکمیل شده، blocked یعنی نیازمند پرداخت، failed یعنی ناموفق و canceled یعنی لغوشده. |
activity | stringseedingnull | پس از تکمیل تورنت، ممکن است ارسال فایل به دیگر کاربران تورنت ادامه داشته باشد. در این حالت، activity برابر seeding و status برابر completed است. |
source | object | |
type | stringurltorrentusenet | — |
hash | string | هش تورنت (فقط برای دانلودهای تورنت مقدار دارد) |
host | string | کد سرویس دانلود؛ برای اطلاعات سرویس آن را با code در GET /services تطبیق دهید. |
file_id | string | شناسه فایل ایجادشده پس از تکمیل موفق دانلود |
mime_type | string | — |
size_bytes | integerint64 | — |
progress | object | |
percent | numberfloatmin 0max 100 | درصد پیشرفت دانلود از ۰ تا ۱۰۰. |
bytes_completed | integerint64min 0 | حجم دریافتشده بر حسب بایت. |
speed_bytes_per_second | numbermin 0 | سرعت دریافت بر حسب بایت بر ثانیه؛ اگر مشخص نباشد null است. |
eta_seconds | numbermin 0 | زمان تخمینی باقیمانده بر حسب ثانیه؛ اگر مشخص نباشد null است. |
can_cancel | boolean | اگر true باشد، میتوانید دانلود را لغو کنید. دکمه لغو را بر اساس این مقدار نمایش دهید. |
can_retry | boolean | اگر true باشد، میتوانید دانلود را دوباره شروع کنید. دکمه تلاش مجدد را بر اساس این مقدار نمایش دهید. |
error | object | null | |
code | stringsource_unavailabledownload_expiredquota_exceededdownload_failed | — |
message | string | — |
created_at | stringdate-time | — |
updated_at | stringdate-time | — |
completed_at | stringdate-time | — |
attempt | integermin 1 | شماره تلاش دانلود، از ۱. با شروع موفق یک تلاش جدید از طریق endpoint retry افزایش مییابد. |
error