دانلودها

ثبت انتخاب کاربر و ادامه دانلود

POSThttps://api.parsget.com/api/v1/download-selections/{selection}/choices
OAuth یا Personal API Key

شناسه گزینه انتخاب‌شده را در item_id بفرستید. این گزینه باید متعلق به همین مرحله باشد و selectable=true داشته باشد. شناسه مرحله را در مسیر درخواست قرار دهید و انتخاب را پیش از expires_at ثبت کنید.

پاسخ 201 با data.kind=download یعنی دانلود ایجاد شده و مشخصات آن در data.download است. پاسخ 200 با data.kind=selection یعنی کاربر باید گزینه دیگری انتخاب کند؛ این بار از شناسه و گزینه‌های مرحله جدید استفاده کنید. client_reference و تنظیمات وب‌هوک در طول مراحل حفظ می‌شوند.

اگر item_id نامعتبر باشد یا گزینه قابل انتخاب نباشد، پاسخ 422 با کد invalid_download_selection_item می‌گیرید.

OAuth Scope: downloads:write

انتخاب را با همان Personal API Key یا برنامه OAuth ثبت کنید که مرحله انتخاب را ایجاد کرده است.

Parameters

selection
string · pathrequired
شناسه مرحله انتخاب از data.selection.id پاسخ ایجاد دانلود یا انتخاب قبلی.

Request body

application/jsonrequired
item_id
stringrequired
شناسه گزینه انتخاب‌شده از همین مرحله. مقدار selectable آن باید true باشد.

Response schema

200مرحله انتخاب بعدی
Payloadobject
kind
string
selection
—
selection
object
id
string
—
prompt
string
عنوان یا راهنمای مرحله انتخاب برای نمایش به کاربر
expires_at
stringdate-time
مهلت انتخاب کاربر. پس از این زمان، شناسه مرحله و گزینه‌های آن معتبر نیستند.
items
object[]
id
string
شناسه گزینه در مرحله انتخاب فعلی.
parent_id
string
شناسه گزینه‌ای که این مورد زیرمجموعه آن است. برای گزینه‌های سطح اول، null است.
name
string
—
size_bytes
integerint64
min 0
—
kind
string
directoryvideoaudioimagedocumentnull
—
status
string
nonesubmittedreadynull
—
tags
Record<string, string>
—
thumbnail_url
stringuri
—
selectable
boolean
اگر true باشد، کاربر می‌تواند این گزینه را انتخاب کند.
201دانلود با موفقیت ایجاد شد
Payloadobject
kind
string
download
—
download
object
id
string
—
client_reference
string
برچسب دلخواه برای ارتباط دانلود با داده‌های برنامه شما، مثلاً شناسه قسمت یک مجموعه. چند دانلود می‌توانند برچسب یکسان داشته باشند.
name
string
—
status
string
queuedprocessingdownloadingfinalizingcompletedblockedfailedcanceled
وضعیت دانلود. queued یعنی در صف، processing یعنی در حال بررسی و آماده‌سازی دانلود، downloading یعنی دریافت فایل و finalizing یعنی آماده‌سازی نهایی. completed یعنی تکمیل شده، blocked یعنی نیازمند پرداخت، failed یعنی ناموفق و canceled یعنی لغوشده.
activity
string
seedingwaiting_for_capacitynull
پس از تکمیل تورنت، ممکن است ارسال فایل به دیگر کاربران تورنت ادامه داشته باشد. در این حالت، activity برابر seeding و status برابر completed است. وقتی همه اکانت‌های سرویس موقتاً مشغول یا در محدودیت هستند، دانلود با status برابر queued و activity برابر waiting_for_capacity منتظر می‌ماند و با آزاد شدن ظرفیت خودکار ادامه پیدا می‌کند؛ اگر در مهلت تلاش مجدد ظرفیتی آزاد نشود، failed می‌شود.
source
object
type
string
urltorrentusenet
—
hash
string
هش تورنت (فقط برای دانلودهای تورنت مقدار دارد)
host
string
کد سرویس دانلود؛ برای اطلاعات سرویس آن را با code در GET /services تطبیق دهید.
file_id
string
شناسه فایل ایجادشده پس از تکمیل موفق دانلود
mime_type
string
—
size_bytes
integerint64
—
progress
object
percent
numberfloat
min 0max 100
درصد پیشرفت دانلود از ۰ تا ۱۰۰.
bytes_completed
integerint64
min 0
حجم دریافت‌شده بر حسب بایت.
speed_bytes_per_second
number
min 0
سرعت دریافت بر حسب بایت بر ثانیه؛ اگر مشخص نباشد null است.
eta_seconds
number
min 0
زمان تخمینی باقی‌مانده بر حسب ثانیه؛ اگر مشخص نباشد null است.
can_cancel
boolean
اگر true باشد، می‌توانید دانلود را لغو کنید. دکمه لغو را بر اساس این مقدار نمایش دهید.
can_retry
boolean
اگر true باشد، می‌توانید دانلود را دوباره شروع کنید. دکمه تلاش مجدد را بر اساس این مقدار نمایش دهید.
error
object | null
code
string
source_unavailabledownload_expiredquota_exceededdownload_failed
—
message
string
—
created_at
stringdate-time
—
updated_at
stringdate-time
—
completed_at
stringdate-time
—
attempt
integer
min 1
شماره تلاش دانلود، از ۱. با شروع موفق یک تلاش جدید از طریق endpoint retry افزایش می‌یابد.