برای این منظور بعد از ورود کاربر، 2 خروجی access_token و refresh_token دریافتی از وب سرویس را باید ذخیره نمایید تا دسترسی به متدهای وب سرویس امکان پذیر باشد. access_token در بخش هدر درخواست برای متدها ارسال خواهد شد و refresh_token برای گرفتن توکن جدید و غیرفعال کردن همه ورودهای قبلی استفاده خواهد شد.

Authorization: Bearer USER_TOKEN_VALUE

اطلاعات ورودی و خروجی وب سرویس توسط الگوریتم رمزنگاری AES کد می شوند و بدون داشتن کلید خصوصی امکان استفاده از وب سرویس وجود نخواهد داشت. جهت دریافت کلید رمزنگاری با پشتیبانی سایت تماس بگیرید.

برای مثال، در متد ورود به حساب، 2 ورودی username و password داریم که با فرمت json برای وب سرویس ارسال خواهند شد.

{
   "username":"test",
   "password":"123456"
}

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

OTRhZGEzYmQ1OTYyNTVjY4zUMJTkuSZUzXlK7otr+JY5D6iXY7WHS7RE2ExQUhTJmH85u8gPUPmvzj1K5N6K1A==

در مرحله آخر، ورودی های کد شده به این صورت POST می شود.

{
   "crypt_data":"OTRhZGEzYmQ1OTYyNTVjY4zUMJTkuSZUzXlK7otr+JY5D6iXY7WHS7RE2ExQUhTJmH85u8gPUPmvzj1K5N6K1A=="
}

خروجی وب سرویس نیز با فرمت json می باشد. در صورت موفقیت آمیز بودن درخواست، اطلاعات خروجی به صورت کدشده دریافت می شود و در غیر این صورت کد و پیام خطا را مشاهده می کنید.

برای مثال خروجی وب سرویس برای خطای ورود به این صورت می باشد.

{
   "code":"hark_api_auth_invalid_login_password",
   "message":"\u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc \u06cc\u0627 \u0631\u0645\u0632 \u0639\u0628\u0648\u0631 \u0646\u0627\u062f\u0631\u0633\u062a \u0627\u0633\u062a.",
   "data":{
      "status":401
   }
}

در صورت موفقیت آمیز بودن ورود، مقدار crypt_data را در خروجی دریافت می کنید و مقدار status برابر 13 خواهد بود.

{
   "status":13,
   "crypt_data":"YTg4MzdmNjMwOTRkYTYyZJLxSifWPoynhz945HKvlEEd6pIczMGm77J1sg9MRQja3w4NCamFBVAQU79gkZl+gLAY2DLdjCs8vj3QoewGd5uSPbIs3STW0dpQTvX85yAmrVJevvf\/Hpvv+OTdZbJv2Mcr337hs2kCHpugROeta14spUa7Xo3Ki3RsC0WgHo2duOlthIEYsLyni9P0DD1ks2nJ5LEZMxnzO8GPnH69\/qkZeUme7SekXva9dZwBiLdvUYFOO3a+CV1\/IT\/0sxaTDTfi\/IXVJ90wOpcx3HiXA7jXRA\/+KAJYPRvozCR7T5BDNafnuJRJqvEUjTis+qxv9Qc7ripKZafWF3BCzFkRC+mJzML71LrndfNZAmRemLtK"
}

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

{
   "submited":true,
   "user_id":11,
   "access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NTAzNDE3NjgsInN1YiI6MTF9.mCzeV3cZ7gAVSliDAom_UaFhBAVSU5beiaJHyc23YO8",
   "expires_in":604800,
   "refresh_token":"db1f8e0f23d8d417f67c4210003a1a0876366220acccf5e4c8cf662c31bf8b9c"
}