راهنمای استفاده از وب سرویس سامانه
نسخه دوم وب سرویس سامانه سنجش روان هم اکنون آماده استفاده می باشد.
در این نسخه متدهای زیر قابل استفاده می باشند.
- دریافت موجودی حساب کاربری
- دریافت لیست دسته بندی ها و رده سنی
- دریافت لیست امون ها
- دریافت یک ازمون مشخص به همراه سوالها
- ارسال پاسخ نامه
- دریافت تفسیر پاسخ نامه
- دریافت لیست پاسخ نامه ها
- ثبت کاربر یا مراجع
- دریافت لیست کاربران یا مراجعین
آدرس وب سرویس برای ارسال ها و دریافت ها
می باشد. البته میتوانید به آدرس بدون https هم ارسال و دریافت کنید. و البته توصیه ما استفاده از https می باشد.
همه متدها با مقدار POST انجام خواهد شد.
در همه متدها مقدار 1 برای status به معنای موفق بودن درخواست و 0 به معنای ناموفق بودن درخواست می باشد
دریافت موجودی شارژ پنل کاربری
برای این متد آدرس ارسال account می باشد. مقدار userKey را به ادرس اعلام شده ارسال کرده و خروجی را به فرمت json دریافت می کنید.
{api_base}/api_v2/account
method : POST
body: {"userKey":"your key"}
نمونه برگشتی
"charge":"0"
,"type":1, // نوع بسته
"days":0, // تعداد روزهای مانده بسته
"count":0, // تعداد کل بسته
"start":0, // زمان شروع بسته
"title":"\u0639\u0627\u062f\u06cc", // عنوان بسته
"balance":"0", // تعداد پاسخ نامه مانده
"total":0, // تعداد کل پاسخ نامه ها
"expire":0, // تاریخ انقضای بسته
"status":1, // وضعیت بسته
"message":null
}
دریافت لیست دسته بندی ها و رده سنی
برای دریافت لیست دسته بندی ها و گروه های سنی آدرس ارسال metas می باشد.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/metas
method : POST
body: {"userKey":"your key"}
نمونه برگشتی
"category":{
"1":"دسته اول",
"2":"دسته دوم",
},
"groups":{
"2":"گروه سنی اول",
"3":"گروه سنی دوم",
},
"message":null
}
دریافت لیست آزمون ها
برای دریافت لیست آزمون ها آدرس ارسال questionsمی باشد.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/questions/page:{page num}
method : POST
body: {"userKey":"your key",
"limit":"", تعداد در هر صفحه . حداکثر 50
"orderby":"", ترتیب خروجی با title , price , category ,groups, qid
"order":"" // ASC کوچک به بزرگ DESC بزرگ به کوچک
"filter"{ // فیلتر مقدار درخواستی"title": "", // عنوان ازمون یا بخشی از عنوان
"price":"", // قیمت آزمون
"groups":"", // گروه سنی آزمون
"category":"", // دسته بندی ازمون
}
}
نمونه برگشتی
"status":1, // وضعیت درخواست
"paging":{
"current":10, // تعداد نتیجه در صفحه
"limit":10, // حداکثر تعداد هر صفحه
"pageCount":6, // تعداد صفحه
"page":1, // صفحه فعلی
"count":56, // تعداد کل
"prevPage":false, // وجود صفحه قبلی
"nextPage":true // وجود صفحه بعدی
},
"questions":{
"22":{
"qid":"22", // شماره پرسشنامه
"title":"عنوان پرسشنامه",
"price":"10000", // قیمت به ریال
"category":{ // دسته بندی
"id":"9",
"title":"",
"name":"Hoosh",
"type":"azmon"
},
"groups":{ // گروه سنی
"id":"3",
"title":"\u0628\u0632\u0631\u06af\u0633\u0627\u0644\u0627\u0646",
"name":"Age2",
"type":"group"
}
}
},
"pm":"", // پیام برگشتی
"filter":[], // فیلتر . مقدار فیلتر های درخواستی
"message":null // خطای برگشتی
}
دریافت لیست اطلاعات آزمون
برای دریافت اطلاعات یک ازمون از question/{qid} استفاده نمایید.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/question/{qid}
method : POST
body: {"userKey":"your key"}
نمونه برگشتی
"status":1, وضعیت برگشت
"question":{
"title":"عنوان آزمون",
"answers":{ ارایه پاسخ ها
"1":"مقدار اول",
"2":"مقدار دوم",
"3":"مقدار سوم",
},
"price":"10000", // قیمت به ریال
"start":"1", //
"description":"", توضیحات ازمون
"more":"", توضیحات لا به لای سوال ها. مثلا اگر مقدار کلید ارایه 11 بود قبل سوال 11 توضح نشان داده خواهد شد
"questions":[
ارایه سوالهای آزمون
},
}
"pm":"none",
"message":null
}
ارسال پاسخ نامه
برای دریافت اطلاعات یک ازمون از sendAnswer استفاده نمایید.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/sendAnswer
method : POST
body: {
"userKey":"کلید وب سرویس ",
"clientData":{ // اطلاعات کاربر
"clientName":"نام کاربر", // الزامی به ارسال نام واقعی کاربر وجود ندارد. میتوانید نام مستعار خود را ارسال کنید. مانند کاربر شماره یک یا مراجه اول ..
"bday":"1363", // سال تولد به شمسی
"gender":"1", جنسیت کاربر . 1 برای آقا و 2 برای خانم الزامی
"marital":"1", وضعیت تاهل کاربر. یک برای مجرد 2 برای متاهل الزامی
"edu":"سطح تحصلی کاربر. اختیاری",
"cid":"456778888" // کد یکتای کاربر
},
"answerData":{ مقدار پاسخ
"qid":"23", شماره آزمون
"answer":[ پاسخ های کاربر به صورت ارایه. برای بدون پاسخ ها '' یا null ارسال شود. ] //
}
}
نمونه برگشتی
"status":"1", // وضعیت درخواست
"cid":"شناسه یکتای کاربر",
"aid":"شناسه یکتای پایخ نامه",
"client":{ // اطلاعات کاربر یا مراجع
"cid":"شناسه یکتای کاربر",
"name":"نام کاربر",
"age":"35", // سن کاربر
"city":"شهر کاربر",
"phone":"شماره تماس کاربر",
"created":"1572001229", // زمان ایجاد به ثانیه
"modified":"1572001229", // زمان تغییرات به ثانیه
"gender":"1", // جنسیت
"marital":"2", // وضعیت تاهل
"edu":"رشته تحصیلی کاریر",
"bday":1363 // سال تولد کاربر
},
"answers":[ ارایه پایخ های ارسالی کاربر ],
"data":"", تفسیر پاسخ نامه کاربر
"chart":"", مقدار خروجی جاوا اسکریپت برای چاپ نمودار در صورت وجود نمودار
"message":null
}
دریافت تفسیر یک پاسخ نامه مشخص
برای دریافت اطلاعات یک ازمون از getAnswer/{aid} استفاده نمایید.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/getAnswer/{aid}
method : POST
body: {
"userKey":"کلید وب سرویس ",
}
نمونه برگشتی
"status":"1", // وضعیت درخواست
"cid":"شناسه یکتای کاربر",
"aid":"شناسه یکتای پایخ نامه",
"client":{ // اطلاعات کاربر یا مراجع
"cid":"شناسه یکتای کاربر",
"name":"نام کاربر",
"age":"35", // سن کاربر
"city":"شهر کاربر",
"phone":"شماره تماس کاربر",
"created":"1572001229", // زمان ایجاد به ثانیه
"modified":"1572001229", // زمان تغییرات به ثانیه
"gender":"1", // جنسیت
"marital":"2", // وضعیت تاهل
"edu":"رشته تحصیلی کاریر",
"bday":1363 // سال تولد کاربر
},
"answers":[ ارایه پایخ های ارسالی کاربر ],
"data":"", تفسیر پاسخ نامه کاربر
"chart":"", مقدار خروجی جاوا اسکریپت برای چاپ نمودار در صورت وجود نمودار
"message":null
}
دریافت لیست پاسخ نامه ها
برای دریافت لیست پاسخ نامه ها آدرس ارسال answers می باشد.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/answers/page:{page num}
method : POST
body: {"userKey":"your key",
"limit":"", تعداد در هر صفحه . حداکثر 50
"orderby":"", ترتیب خروجی با aid, status, gender,created, answerd, qid
"order":"" // ASC کوچک به بزرگ DESC بزرگ به کوچک
"filter"{ // فیلتر مقدار درخواستی"cid": "", // کد یکتای کاربر مشخص
"qid": "", // شماره ازمون
"gender":"", // جنیسیت
"marital":"", //وضعیت تاهل
"password":"", // رمز پاسخ نامه
"created":{ // فیلتر زمان ایجاد پاسخ نامه به صورت ارایه در یک بازه زمانی
"min": "", // شروع تاریخ به ثانیه
"max": "" // پایان تاریخ به ثانیه
},
"answerd":{ // فیلتر زمان ایجاد پاسخ نامه به صورت ارایه در یک بازه زمانی
"min": "", // شروع تاریخ به ثانیه
"max": "" // پایان تاریخ به ثانیه
}
}
}
}
نمونه برگشتی
"status":1, // وضعیت درخواست
"paging":{
"current":10, // تعداد نتیجه در صفحه
"limit":10, // حداکثر تعداد هر صفحه
"pageCount":6, // تعداد صفحه
"page":1, // صفحه فعلی
"count":56, // تعداد کل
"prevPage":false, // وجود صفحه قبلی
"nextPage":true // وجود صفحه بعدی
},
"answers":{
"566":{ // اطلاعات پاسخ نامه
"aid":"کد یکتای ازمون",
"qid":"22", // شماره ازمون
"created":"1571921135", // تاریخ ایجاد پاسخ نامه به ثانیه
"answerd":"1571921135", // تاریخ پاسخ به ثانیه در صورت وجود
"password":"", // رمز یکتای پاسخ نامه در صورت وجود رمز
"status":"2", // وضعیت پاسخ نامه - یک تکمیل نشده - 2 تککمیل شده
"cid":"شناسه یکتای کاربر",
"client":{
ارایه اطلاعات کاربر. به قسمت اطلاعات کاربر در پاسخ نامه مراجعه نمایید
},
"question":{
"title":"عنوان آزمون",
"id":"22", شماره ازمون
"price":"قیمت ازمون"
}
}
},
"pm":"", // پیام برگشتی
"filter":[], // فیلتر . مقدار فیلتر های درخواستی
"message":null // خطای برگشتی
}
ایجاد یک کاربر یا مراجع
برای ثبت یک کاربر یا مراجع از addClient استفاده نمایید.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/addClient
method : POST
body: {"userKey":"your key"
"clientData":{ // اطلاعات کاربر
"clientName":"نام کاربر", // الزامی به ارسال نام واقعی کاربر وجود ندارد. میتوانید نام مستعار خود را ارسال کنید. مانند کاربر شماره یک یا مراجه اول ..
"bday":"1363", // سال تولد به شمسی
"gender":"1", جنسیت کاربر . 1 برای آقا و 2 برای خانم الزامی
"marital":"1", وضعیت تاهل کاربر. یک برای مجرد 2 برای متاهل الزامی
"edu":"سطح تحصلی کاربر. اختیاری",
},
}
نمونه برگشتی
"status":1, وضعیت برگشت
"client":{ // اطلاعات کاربر یا مراجع
"cid":"شناسه یکتای کاربر",
"name":"نام کاربر",
"age":"35", // سن کاربر
"city":"شهر کاربر",
"phone":"شماره تماس کاربر",
"created":"1572001229", // زمان ایجاد به ثانیه
"modified":"1572001229", // زمان تغییرات به ثانیه
"gender":"1", // جنسیت
"marital":"2", // وضعیت تاهل
"edu":"رشته تحصیلی کاریر",
"bday":1363 // سال تولد کاربر
},
}
دریافت لیست کاربر ها
برای دریافت لیست کاربر ها آدرس وب سرویس clientsمی باشد.
ارسال مقدار userKey به همراه درخواست الزامی می باشد.
{api_base}/api_v2/clients/page:{page num}
method : POST
body: {"userKey":"your key",
"limit":"", تعداد در هر صفحه . حداکثر 50
"orderby":"", ترتیب خروجی با aid, status, gender,created, answerd, qid
"order":"" // ASC کوچک به بزرگ DESC بزرگ به کوچک
"filter"{ // فیلتر مقدار درخواستی"cid":""
"phone" : ""
"marital" : ""
"gender" : ""
"edu" : ""
"city" : ""
"name" : ""
"created":{ // فیلتر زمان ایجاد کاربر به صورت ارایه در یک بازه زمانی
"min": "", // شروع تاریخ به ثانیه
"max": "" // پایان تاریخ به ثانیه
},
"modified":{ // فیلتر زمان ایجاد تغییرات در کاربر به صورت ارایه در یک بازه زمانی
"min": "", // شروع تاریخ به ثانیه
"max": "" // پایان تاریخ به ثانیه
}
}
}
}
نمونه برگشتی
"status":1, // وضعیت درخواست
"paging":{
"current":10, // تعداد نتیجه در صفحه
"limit":10, // حداکثر تعداد هر صفحه
"pageCount":6, // تعداد صفحه
"page":1, // صفحه فعلی
"count":56, // تعداد کل
"prevPage":false, // وجود صفحه قبلی
"nextPage":true // وجود صفحه بعدی
},
"answers":{
"566":{ // اطلاعات کاربر
"cid":"شناسه یکتای کاربر",
"name":"نام کاربر",
"age":"35", // سن کاربر
"city":"شهر کاربر",
"phone":"شماره تماس کاربر",
"created":"1572001229", // زمان ایجاد به ثانیه
"modified":"1572001229", // زمان تغییرات به ثانیه
"gender":"1", // جنسیت
"marital":"2", // وضعیت تاهل
"edu":"رشته تحصیلی کاریر",
"bday":1363 // سال تولد کاربر
}
},
"pm":"", // پیام برگشتی
"filter":[], // فیلتر . مقدار فیلتر های درخواستی
"message":null // خطای برگشتی
}