API: پشتیبانی
تیکتها، پاسخها، پیوستها، فرم تماس عمومی و وضعیت سرویسها.
دستههای تیکت technical، finance، sales و abuse_security هستند. پیوستها ابتدا آپلود میشوند و با نشانیِ برگرداندهشده ارجاع داده میشوند.
ارسال پیام تماس
POST /contact
نقطهٔ پایانی عمومی پشت فرم تماس وبسایت. تعداد درخواست در دقیقه برای هر آدرس محدود است.
احراز هویت: ندارد، این نقطهٔ پایانی عمومی است.
بدنهٔ درخواست (application/json)
| فیلد | نوع | الزامی | مقادیر |
|---|---|---|---|
name |
string | بله | |
email |
string | بله | |
category |
string | بله | general, sales, technical, billing |
subject |
string | بله | |
message |
string | بله |
پاسخها
200موفق. برمیگرداند:message(string).422خطای اعتبارسنجی یا مجاز نبودن در وضعیت فعلی429درخواستهای بیش از حد
نمونه
curl -X POST https://veneshcloud.ir/api/contact \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name":"my-name","email":"you@example.com","category":"general","subject":"Short summary","message":"Describe the request."}'
فهرست تیکتهای شما
GET /tickets
تیکتهای شما را برمیگرداند، با امکان فیلتر بر اساس وضعیت.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای query
| فیلد | نوع | مقادیر |
|---|---|---|
per_page |
integer | |
page |
integer | |
status |
string |
پاسخها
200موفق
نمونه
curl -X GET https://veneshcloud.ir/api/tickets \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json"
ثبت تیکت
POST /tickets
یک تیکت را در یک دسته همراه با پیام اول میسازد.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
بدنهٔ درخواست (application/json)
| فیلد | نوع | الزامی | مقادیر |
|---|---|---|---|
category |
string | بله | technical, finance, sales, abuse_security |
sub_category |
string | خیر | |
subject |
string | بله | |
message |
string | بله | |
attachments |
فهرستی از string | خیر |
پاسخها
200موفق. برمیگرداندTicket.
نمونه
curl -X POST https://veneshcloud.ir/api/tickets \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"category":"technical","subject":"Short summary","message":"Describe the request."}'
آپلود پیوست
POST /tickets/attachments
تصویر یا PDF تا ۱۰ مگابایت را بهصورت multipart/form-data آپلود میکند و url را برای ارسال در attachments برمیگرداند.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
بدنهٔ درخواست (multipart/form-data)
| فیلد | نوع | الزامی | مقادیر |
|---|---|---|---|
file |
file | بله |
پاسخها
200موفق. برمیگرداند:id(string),ref(string),url(string).
نمونه
curl -X POST https://veneshcloud.ir/api/tickets/attachments \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json" \
-F "file=@screenshot.png"
دریافت پیوست تیکت
GET /tickets/attachments/{attachment}
فایل یک پیوست از تیکتهای شما را برمیگرداند. فقط صاحب تیکت میتواند آن را دریافت کند.
احراز هویت: ندارد، این نقطهٔ پایانی عمومی است.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
attachment |
string |
پارامترهای query
| فیلد | نوع | مقادیر |
|---|---|---|
expires |
integer | |
signature |
string |
پاسخها
200موفق404پیدا نشد
نمونه
curl -X GET https://veneshcloud.ir/api/tickets/attachments/ATTACHMENT_ID \
-H "Accept: application/json"
دریافت یک تیکت
GET /tickets/{ticket}
گفتگوی تیکت را برمیگرداند. یادداشتهای داخلی کارکنان هرگز شامل نمیشود.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
ticket |
integer |
پاسخها
200موفق. برمیگرداندTicket.
نمونه
curl -X GET https://veneshcloud.ir/api/tickets/TICKET_ID \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json"
پاسخ به تیکت
POST /tickets/{ticket}/messages
یک پیام به گفتگو اضافه میکند.
احراز هویت: کلید API یا توکن خود را بهصورت Bearer بفرستید.
پارامترهای مسیر
| فیلد | نوع |
|---|---|
ticket |
integer |
بدنهٔ درخواست (application/json)
| فیلد | نوع | الزامی | مقادیر |
|---|---|---|---|
body |
string | بله | |
attachments |
فهرستی از string | خیر |
پاسخها
200موفق
نمونه
curl -X POST https://veneshcloud.ir/api/tickets/TICKET_ID/messages \
-H "Authorization: Bearer $VENESH_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"body":"Your reply."}'
دریافت وضعیت سرویسها
GET /status
نقطهٔ پایانی عمومی پشت صفحهٔ وضعیت سرویسها: وضعیت کلی، هر سرویس با دسترسپذیری روزانهٔ ۹۰ روز اخیر و رخدادهای فعال، زمانبندیشده و گذشته. حدود ۳۰ ثانیه کش میشود و تعداد درخواست برای هر آدرس محدود است.
احراز هویت: ندارد، این نقطهٔ پایانی عمومی است.
پاسخها
200موفق. برمیگرداندStatusPage.429درخواستهای بیش از حد
نمونه
curl -X GET https://veneshcloud.ir/api/status \
-H "Accept: application/json"
اشیاء
فهرست فیلدهای اشیایی که در بالا برگردانده میشوند.
LocalizedText
| فیلد | نوع | مقادیر |
|---|---|---|
en |
string | |
fa |
string |
StatusIncident
| فیلد | نوع | مقادیر |
|---|---|---|
id |
integer | |
kind |
string | incident, maintenance |
impact |
string | none, minor, major, critical |
status |
string | investigating, identified, monitoring, resolved, scheduled, in_progress, completed |
title |
LocalizedText |
|
body |
object | |
components |
فهرستی از string | |
scheduled_start_at |
string | |
scheduled_end_at |
string | |
started_at |
string | |
resolved_at |
string | |
created_at |
string | |
updates |
فهرستی از object |
StatusPage
| فیلد | نوع | مقادیر |
|---|---|---|
status |
string | operational, maintenance, degraded, partial_outage, major_outage |
generated_at |
string | |
history_days |
integer | |
groups |
فهرستی از object | |
active_incidents |
فهرستی از StatusIncident |
|
scheduled_maintenance |
فهرستی از StatusIncident |
|
past_incidents |
فهرستی از StatusIncident |
Ticket
| فیلد | نوع | مقادیر |
|---|---|---|
id |
integer | |
category |
string | technical, finance, sales, abuse_security |
sub_category |
string | |
subject |
string | |
status |
string | open, pending_customer, pending_staff, resolved, closed |
sla_due_at |
string | |
resolved_at |
string | |
created_at |
string | |
messages |
فهرستی از object |