درخواست ها

کلیه درخواست های API Report HTTP باید مطابق پروتکل HTTPS (نه HTTP) با استفاده از روش GET  در  https انجام شود: / /content.mql5.com/v1/reports/  .

مسیرهای درخواست #

جدای از آدرس مشترک ، داده های درخواستی {WEBSITE_ID}  و شناسه {DATA_TYPE}  نوع در مسیر درخواست مشخص شده است:

https://content.mql5.com/v1/reports/website/{WEBSITE_ID}/{DATA_TYPE}

{WEBSITE_ID} را می توان در تنظیمات وب سایت (فیلد شناسه) پانل Finteza بدست آورد. مقادیر زیر برای {DATA_TYPE}  استفاده می شود:

اگر کلید توسعه دهنده مشخص نشده باشد ، Finteza درخواست ها را نمی پذیرد.

پارامترهای درخواست مورد نیاز است #

کلیه درخواست های HTTP Report API باید دارای پارامترهای زیر باشد:

پارامتر

نوع

توصیف

metrics

string

لیستی از > معیارها  (با کاما از هم جدا) ، به عنوان مثال ، metrics=visits،events .

date_from

unixtime

تاریخ اولیه درخواست داده. به عنوان مثال از سال 1970.01.01 در ثانیه مشخص شده است ، date_from=1549027860 .

date_to

unixtime

تاریخ پایان درخواست داده به عنوان مثال از سال 1970.01.01 در ثانیه مشخص شده است ، date_from=1549027860 .

درخواست نمونه شامل پارامترهای مورد نیاز:

https://content.mql5.com/v1/reports/website/dxnnhxrwpcwsgwowveipxmslrznjfhzarp/table
 ?metrics=webvisits,events
 &date_from=1549027860
 &date_to=1549632660

اعتبارسنجی درخواست #

API گزارش HTTP RESTful API می باشد. سرور Finteza وضعیت اتصال مشتری را ذخیره نمی کند. این بدان معنی است که مشتری باید هر بار ارسال درخواست داده های مجوز ارسال کند. داده های مجوز از کلید توسعه دهنده {API_KEY}  گذرده در مجوز    عنوان:

curl --header "اعتبارسنجی: پایه {API_KEY}" https://content.mql5.com/v1/reports/website/dxnnhxrwpcwsgwowveipxmslrznjfhzarp/table?metrics=webvisits,events&date_from=1549027860&date_to=1549632660

هر بار که درخواست داده ارسال می کنید از آن استفاده کنید.

پارامترهای شرطی #

هنگام درخواست هر نوع داده ، می توانید شرایط دیگری را برای مرتب سازی و ترتیب آنها ، به عنوان مثال ، بر اساس نوع دستگاه ، سیستم عامل یا زبان مشخص کنید.

پارامتر

نوع

توصیف

where

array

آرایه ای از شرایط به فرم ?where[key]=value, که کلید نام فیلدی هست که مرتب سازی باید بر اساس آن انجام شود. برای مقدار شرط می توان از عملگرهای زیر استفاده کرد:

  • = (IS) - مقدار دقیق همخوانی. به عنوان مثال, where[os]=windows به این معناست که فقط داده های مربوط به کاربران ویندوز برگردانده شوند.
  • * (LIKE) — همخوانی غیر دقیق. به عنوان مثال, where[device]=*mobile به این معناست که تنها داده های مربوط به دستگاه های موبایل برگردانده شوند.
  • ! (NOT) — مقدار مخالف. به عنوان مثال, where[country]=*!ru به این معناست که تنها داده های مربوط به کاربران غیر روسی برگردانده شوند.

group

string

لیست زمینه های برای تنظیم داده ها (جدا شده با کاما).

نمونه درخواست داده همراه با مرتب سازی:

GET https:///content.mql5.com/v1/reports/website/dxnnhxrwpcwsgwowveipxmslrznjfhzarp/table
 ?metrics=webvisits,events
 &date_from=1549027860
 &date_to=1549632660
 &where[os]=windows              // exact match
 &where[device]=*mobile          // somewhat similar
 &where[country]=!ru             // no match

علاوه بر این می توانید داده های ورودی را با هر فیلد با استفاده از پارامتر ؟group  ترتیب دهید.

پاسخ به درخواستها #

پاسخ با داده های درخواست شده با فرمت JSON (  ContentType: Application / json  ) با استفاده از رمزگذاری UTF-8 ارسال می شود.

پارامترهای درخواست اولیه (تاریخ ها ، شرایط و گروه بندی ها) علاوه بر داده های درخواستی علاوه بر داده های اصلی در کانتینر اصلی data  کپی می شوند:

{
    "data": {
        "date_from": 1549027860,
        "date_to": 1549632660,
        "where": {
            "os""windows",
            "device""*mobile",
            "country""!ru",
        },
        ...
    }
}

کد پاسخ #

کدهای زیر را می توان در پاسخ به درخواست Finteza برگرداند:

کد پاسخ

توصیف

200 OK

درخواست پذیرفته شده و پردازش شده است.

400 Bad Request

درخواست رد ، پارامترهای نامعتبر ، خطا.

403 Forbidden

درخواست رد شد ، دسترسی به داده ها وجود ندارد.

404 Not Found

درخواست رد شد ، درخواست URL ناشناخته است.