API: دیسکهای داده
فهرست، افزودن، بزرگکردن و حذف دیسکهای دادهی اضافهی یک ماشین و دریافت قیمت پیش از انجام.
دیسک داده فقط روی ماشینهای OVHcloud و فقط وقتی این قابلیت روشن است در دسترس است (GET /catalog/features آن را میگوید). دیسک بخشی از اشتراک ماشین است: افزودن یا بزرگکردن آن، باقیماندهٔ دورهٔ صورتحساب فعلی را کسر میکند و همراه ماشین تمدید میشود. دیسک فقط بزرگ میشود. افزودن، بزرگکردن و حذف با 202 پاسخ میدهند؛ GET /orders/{order}/volumes را تا ثابت شدن وضعیت بپرسید. حذف دیسک دادههای آن را از بین میبرد. دیسکهای داده را ببینید.
فهرست دیسکهای دادهی یک ماشین
GET /orders/{order}/volumes
دیسکهای دادهی ماشین را با حجم، وضعیت و قیمت، اندازهی دیسک اصلی (بخشی از پلن)، حدود و اینکه سهمیهی ارائهدهنده دیسک دیگری را مجاز میداند یا نه برمیگرداند. تا وقتی تغییری در جریان است وضعیت pending، attaching، extending یا deleting است؛ تا ثابت شدن بپرسید.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
order |
integer |
پاسخها
200موفق. برمیگرداند:data(DataVolumeList).403مجاز نیست، این منبع متعلق به شما نیست422خطای اعتبارسنجی یا مجاز نبودن در وضعیت فعلی
نمونه
curl -X GET https://veneshcloud.ir/api/orders/ORDER_ID/volumes \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json"
افزودن دیسک داده
POST /orders/{order}/volumes
یک دیسک خالی به ماشین در حال اجرا یا متوقف اضافه میکند. مبلغ باقیماندهٔ دورهٔ فعلی ابتدا از کیف پول کسر میشود و اگر ارائهدهنده نتواند دیسک را بسازد خودکار بازگردانده میشود. هر ماشین در هر زمان فقط یک تغییر دیسک دارد. دیسک خام است: آن را داخل ماشین فرمت و mount کنید.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
order |
integer |
بدنهٔ درخواست (application/json)
| فیلد | نوع | الزامی | مقادیر |
|---|---|---|---|
size_gb |
integer | بله |
پاسخها
202پذیرفته شد، کار در پسزمینه ادامه دارد. برمیگرداند:data(DataVolume).403مجاز نیست، این منبع متعلق به شما نیست422خطای اعتبارسنجی یا مجاز نبودن در وضعیت فعلی
نمونه
curl -X POST https://veneshcloud.ir/api/orders/ORDER_ID/volumes \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"size_gb":1}'
دریافت قیمت دیسک
GET /orders/{order}/volumes/pricing
نشان میدهد دیسک جدیدی به حجم size_gb چقدر هزینه دارد: قیمت هر دورهٔ صورتحساب و مبلغی که همین حالا برای باقیماندهٔ دورهٔ فعلی کسر میشود، به معادل دلار و به ریال با نرخ امروز، و اینکه کیف پول شما آن را پوشش میدهد یا نه. با volume_id قیمت بزرگکردن همان دیسک تا size_gb (اندازهٔ کل جدید) را میگیرید.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
order |
integer |
پارامترهای query
| فیلد | نوع | مقادیر |
|---|---|---|
size_gb |
integer | |
volume_id |
integer |
پاسخها
200موفق. برمیگرداند:data(DataVolumePricing).403مجاز نیست، این منبع متعلق به شما نیست422خطای اعتبارسنجی یا مجاز نبودن در وضعیت فعلی
نمونه
curl -X GET https://veneshcloud.ir/api/orders/ORDER_ID/volumes/pricing \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json"
بزرگتر کردن دیسک
POST /orders/{order}/volumes/{volume}/extend
یک دیسک داده را تا new_size_gb بزرگ میکند. دیسک فقط بزرگ میشود و کوچک نمیشود. فقط گیگابایتهای اضافه برای باقیماندهٔ دورهٔ فعلی کسر میشود. سپس فایلسیستم را داخل ماشین بزرگ کنید.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
order |
integer |
volume |
integer |
بدنهٔ درخواست (application/json)
| فیلد | نوع | الزامی | مقادیر |
|---|---|---|---|
new_size_gb |
integer | بله |
پاسخها
202پذیرفته شد، کار در پسزمینه ادامه دارد. برمیگرداند:data(DataVolume).403مجاز نیست، این منبع متعلق به شما نیست404پیدا نشد422خطای اعتبارسنجی یا مجاز نبودن در وضعیت فعلی
نمونه
curl -X POST https://veneshcloud.ir/api/orders/ORDER_ID/volumes/VOLUME_ID/extend \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"new_size_gb":1}'
حذف دیسک داده
DELETE /orders/{order}/volumes/{volume}
یک دیسک داده و همهٔ دادههای آن را حذف میکند. قابل بازگشت نیست. پس از حذف، بخش استفادهنشدهٔ دورهٔ پرداختشده به کیف پول شما برمیگردد. حذف ماشین، دیسکهای دادهاش را هم حذف میکند.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
order |
integer |
volume |
integer |
پاسخها
200موفق202پذیرفته شد، کار در پسزمینه ادامه دارد. برمیگرداند:data(DataVolume).403مجاز نیست، این منبع متعلق به شما نیست404پیدا نشد422خطای اعتبارسنجی یا مجاز نبودن در وضعیت فعلی
نمونه
curl -X DELETE https://veneshcloud.ir/api/orders/ORDER_ID/volumes/VOLUME_ID \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json"
اشیاء
فهرست فیلدهای اشیایی که در بالا برگردانده میشوند.
DataVolume
| فیلد | نوع | مقادیر |
|---|---|---|
id |
integer | |
order_id |
integer | |
size_gb |
integer | |
device |
string | |
by_id_path |
string | |
status |
string | pending, attaching, active, extending, deleting, failed, kept |
is_initial |
boolean | |
pending_action |
string | create, extend, delete, null |
pending_size_gb |
integer | |
manageable |
boolean | |
failure_reason |
string | |
price_usd |
string | |
price_rial |
integer | |
period_days |
integer | |
next_renewal_at |
string | |
created_at |
string |
DataVolumeList
| فیلد | نوع | مقادیر |
|---|---|---|
root_disk_gb |
integer | |
volumes |
فهرستی از DataVolume |
|
limits |
object | |
unit |
object | |
capability |
object | |
can_modify |
boolean | |
blocked_reason |
string | |
paid_until |
string |
DataVolumePricing
| فیلد | نوع | مقادیر |
|---|---|---|
size_gb |
integer | |
delta_gb |
integer | |
unit_usd_per_gb |
string | |
unit_rial_per_gb |
integer | |
period_days |
integer | |
monthly_usd |
string | |
monthly_rial |
integer | |
charge_usd |
string | |
charge_rial |
integer | |
prorated_fraction |
number | |
paid_until |
string | |
renewal_total_usd_after |
string | |
renewal_total_rial_after |
integer | |
wallet_balance_usd |
string | |
wallet_balance_rial |
integer | |
sufficient_balance |
boolean | |
blocked_reason |
string |