گزارش رویدادها
توضیح API: مطابق با انواع مختلف رویدادها، محتویات مربوطه را گزارش میدهد.
دادههای از انواع رویدادهای گزارش شده در دادههای آماری سیستم منعکس خواهد شد.
📮 اطلاعات درخواست
URL درخواست
POST https://api.upgrade.toolsetlink.com/v1/app/report
هدرهای درخواست
| نام پارامتر | الزامی | نوع | مقدار نمونه | توضیح |
|---|---|---|---|---|
| X-Timestamp | بله | string | 2025-02-17T10:34:55+08:00 | زمان درخواست به فرمت RFC3339 |
| X-Nonce | بله | string | fc812cc0b9b51e8c | رشته تصادفی منحصر به فرد (حداقل 16 کاراکتر) |
| X-AccessKey | بله | string | mui2W50H1j-OC4xD6PgQag | کلید مخفی AccessKey |
| X-Signature | بله | string | 3603437250c2df51fc46426ac79d8995 | امضای درخواست قوانین امضا |
| Content-Type | بله | string | application/json |
🔐 مکانیسم پیشگیری از حملات تکراری
- سرور تأیید میکند که فاصله timestamp با زمان سرور بیش از ±5 دقیقه نباشد
- سرور بررسی میکند که آیا مقدار Nonce قبلاً وجود دارد (برای جلوگیری از درخواستهای تکراری)
پارامترهای بدنه درخواست
| نام پارامتر | الزامی | نوع | مقدار نمونه | توضیح | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| eventType | بله | string | app_start | نوع رویداد: app_start رویداد راهاندازی اپلیکیشن app_upgrade_download رویداد دانلود بهروزرسانی اپلیکیشن app_upgrade_upgrade رویداد بهروزرسانی اپلیکیشن | ||||||||||||
| appKey | بله | LOYlLXNy7wV3ySuh0XgtSg | LOYlLXNy7wV3ySuh0XgtSg | شناسه منحصر به فرد اپلیکیشن، همان مقدار urlKey و fileKey | ||||||||||||
| timestamp | بله | string | 2025-02-17T10:34:55+08:00 | زمان وقوع رویداد | ||||||||||||
| eventData | بله | فیلد توسعهیافته (نوع رویداد app_start رویداد راهاندازی اپلیکیشن) | ||||||||||||||
| - launchTime | بله | string | 2025-02-17T10:34:55+08:00 | زمان راهاندازی اپلیکیشن به فرمت RFC3339 | ||||||||||||
| - versionCode | بله | int | 10 | کد نسخه فعلی اپلیکیشن | ||||||||||||
| - devModelKey | خیر | string | stv1 | شناسه منحصر به فرد مدل دستگاه | ||||||||||||
| - devKey | خیر | string | 89c8b3d5f2a74e1b | شناسه منحصر به فرد دستگاه (میتوان از آدرس MAC به عنوان شناسه منحصر به فرد استفاده کرد) | ||||||||||||
| - target | خیر | string | darwin | سیستم دستگاه | ||||||||||||
| - arch | خیر | string | x86_64 | архیتکتور دستگاه | ||||||||||||
| eventData | بله | فیلد توسعهیافته (نوع رویداد app_upgrade_download رویداد دانلود بهروزرسانی اپلیکیشن) | ||||||||||||||
| - downloadVersionCode | بله | int | 11 | نسخه بهروزرسانی برگشتی از استراتژی بهروزرسانی | ||||||||||||
| - code | بله | int | 0 |
| ||||||||||||
| - versionCode | بله | int | 10 | کد نسخه فعلی اپلیکیشن | ||||||||||||
| - devModelKey | خیر | string | stv1 | شناسه منحصر به فرد مدل دستگاه | ||||||||||||
| - devKey | خیر | string | 89c8b3d5f2a74e1b | شناسه منحصر به فرد دستگاه (میتوان از آدرس MAC به عنوان شناسه منحصر به فرد استفاده کرد) | ||||||||||||
| - target | خیر | string | darwin | سیستم دستگاه | ||||||||||||
| - arch | خیر | string | x86_64 | архیتکتور دستگاه | ||||||||||||
| eventData | بله | فیلد توسعهیافته (نوع رویداد app_upgrade_upgrade رویداد بهروزرسانی اپلیکیشن) | ||||||||||||||
| - upgradeVersionCode | بله | int | 11 | نسخه بهروزرسانی برگشتی از استراتژی بهروزرسانی | ||||||||||||
| - code | بله | int | 0 |
| ||||||||||||
| - versionCode | بله | int | 10 | کد نسخه فعلی اپلیکیشن | ||||||||||||
| - devModelKey | خیر | string | stv1 | شناسه منحصر به فرد مدل دستگاه | ||||||||||||
| - devKey | خیر | string | 89c8b3d5f2a74e1b | شناسه منحصر به فرد دستگاه (میتوان از آدرس MAC به عنوان شناسه منحصر به فرد استفاده کرد) | ||||||||||||
| - target | خیر | string | darwin | سیستم دستگاه | ||||||||||||
| - arch | خیر | string | x86_64 | архیتکتور دستگاه | ||||||||||||
نمونههای بدنه درخواست
app_download رویداد دانلود اپلیکیشن (این رویداد بهطور خودکار هنگام فراخوانی API دانلود اول ثبت میشود، نیاز به درخواست دستی ندارد)
json
{
"eventType": "app_download",
"timestamp": "2025-02-17T10:34:55+08:00",
"appKey": "SkEgKQ4SyLmzazl31fJnAw"
}app_start رویداد راهاندازی اپلیکیشن
json
{
"eventType": "app_start",
"timestamp": "2025-02-17T10:34:55+08:00",
"appKey": "SkEgKQ4SyLmzazl31fJnAw",
"eventData": {
"launchTime": "2025-02-17T10:34:55+08:00",
"versionCode": 1,
"target": "darwin",
"arch": "x86_64",
"devModelKey": "stv1",
"devKey": "LOYlLXNy7w"
}
}app_upgrade_get_strategy رویداد بهروزرسانی اپلیکیشن - دریافت استراتژی بهروزرسانی (این رویداد بهطور خودکار هنگام فراخوانی API دریافت آخرین نسخه ثبت میشود، نیاز به درخواست دستی ندارد)
json
{
"eventType": "app_upgrade_get_strategy",
"timestamp": "2025-02-17T10:34:55+08:00",
"appKey": "SkEgKQ4SyLmzazl31fJnAw",
"eventData": {
"versionCode": 1,
"target": "darwin",
"arch": "x86_64",
"devModelKey": "stv1",
"devKey": "LOYlLXNy7w"
}
}app_upgrade_download رویداد دانلود بهروزرسانی اپلیکیشن
json
{
"eventType": "app_upgrade_download",
"timestamp": "2025-02-17T10:34:55+08:00",
"appKey": "SkEgKQ4SyLmzazl31fJnAw",
"eventData": {
"downloadVersionCode": 2,
"code": 0,
"versionCode": 1,
"target": "darwin",
"arch": "x86_64",
"devModelKey": "stv1",
"devKey": "LOYlLXNy7w"
}
}app_upgrade_upgrade رویداد بهروزرسانی اپلیکیشن
json
{
"eventType": "app_upgrade_upgrade",
"timestamp": "2025-02-17T10:34:55+08:00",
"appKey": "SkEgKQ4SyLmzazl31fJnAw",
"eventData": {
"upgradeVersionCode": 2,
"code": 0,
"versionCode": 1,
"target": "darwin",
"arch": "x86_64",
"devModelKey": "stv1",
"devKey": "LOYlLXNy7w"
}
}📮 اطلاعات پاسخ
بدنه پاسخ موفق
json
{
"code": 200,
"msg": "Report successful"
}نمونهای از بدنه پاسخ خطا
json
{
"code": 400002,
"msg": "Parameter missing"
}📊 کدهای وضعیت
| کد وضعیت HTTP | کد | توضیح سناریو | راهحل |
|---|---|---|---|
| 200 | 0 | درخواست موفق | |
| 400 | 400001 | درخواست نامعتبر | |
| 400 | 400002 | پارامتر ناقص | |
| 400 | 400003 | پارامتر نامعتبر | |
| 400 | 400004 | هدر نامعتبر | |
| 400 | 400005 | بدنه نامعتبر | |
| 401 | 401001 | احراز هویت ناموفق | |
| 401 | 401002 | تأیید امضا ناموفق | |
| 404 | 404001 | منبع پیدا نشد | |
| 404 | 404002 | رکورد پیدا نشد | |
| 404 | 404003 | روش پردازش پیدا نشد | |
| 404 | 404004 | درخواست پیدا نشد | |
| 500 | 500001 | خطای داخلی سرور | لطفاً با ما تماس بگیرید تماس با ما |
| 500 | 500002 | تأیید داده داخلی سرور ناموفق | لطفاً با ما تماس بگیرید تماس با ما |