سرشمار | روی سوال خود تمرکز کنید؛ دغدغه چطور پرسیدن و تحلیل کردن نداشته باشید. سرشمار

شروع به کار

API سرشمار نمایانگر تمامی زیرساخت سرشمار از طریق یک رابط کاربری برنامه‌نویسی شده استاندارد است. با استفاده از API سرشمار، می‌توانید تمامی کارهایی که از طریق سایت سرشمار صورت می‌گیرد را انجام دهید.

REST API سرشمار بر پایه درخواست‌های HTTPS و پاسخ‌های JSON است. اگر در سرشمار ثبت‌نام کرده‌اید، می‌توانید کلید API خود را از صفحه کاربری خود، از اینجا بگیرید: برو به حساب کاربری من.

نقاط اتصال

دسترسی به API از طریق درخواست‌های HTTPS یک نسخه خاص آدرس نقطه اتصال است، که در آن متدهای GET، POST،PUT و DELETE بیان می‌کنند که چگونه با اطلاعات موجود تعامل داشته باشید. هر نقطه اتصال تنها از طریق پروتکل HTTPS (پورت 443) قابل دسترسی است.

هرچیزی (متد‌ها، پارامترها و...) دارای یک نسخه خاص است، و در هر اتصال باید موجود باشد. آخرین نسخه، نسخه 1 است.

آخرین نسخه پایدار نقطه اتصال HTTPS:

https://sarshomar.com/fa/api/v1/

کدهای پاسخ HTTP

وضعیت یک پاسخ را می‌توان از طریق کد وضعیت HTTP تشخیص داد.

کد وضعیت توضیح
200 OK درخواست موفقیت‌آمیز
304 Not Modified
400 Bad Request درخواست نامعتبر
401 Unauthorized کاربر اجازه دسترسی ندارد
403 Forbidden درخواست اعتبارسنجی نشده است
429 Too many requests کاربر محدود شده است
405 Method Not Allowed متد HTTP ناصحیحی فراهم شده است
415 Unsupported Media Type پاسخ JSON معتبری نیست

دریافت کلید ورود موقت

کلید موقت ورود به سرشمار را دریافت کنید


get/token/login

شناسه
متغیر
توضیح
اولویت
مثال
guest توکن مهمان
اختیاری
 

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "guest": "null|[guest token]" }

cURL

curl

درخواست توکن مهمان

درخواست توکن مهمان از سرشمار


post/token/guest

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

cURL

curl

پاسخ

{ "status": 1, "title": null, "msg": { "callback": { "token": "$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry" } } }

افزودن نظرسنجی

از طریق API سرشمار نطرسنجی اضافه کنید


post/poll

شناسه
متغیر
توضیح
اولویت
مثال
title
string
عنوان نظرسنجی را تعیین کنید
اجباری
"How is the weather like?"
survey
code
کد پرسشنامه
اختیاری
"3r"
language
fa
زبان مورد نظر خود را انتخاب کنید
اختیاری
"en"
summary
string
خلاصه نظرسنجی خود را بنویسید
اختیاری
"The weather is an important factor for travelers of your city."
description
string
نظرسنجی خود را توصیف کنید
اختیاری
"please selectan option that describes the weather in your city."
file
code
فایلی که نشان دهنده تصویر آب و هوا شهر شما باشد را آپلود کنید.
اختیاری
"3tf59"
tree
object
درختواره سوال مشخص کننده والد و پاسخ‌های مرتبط با نظرسنجی است
اختیاری
برو به جدول
branding
object
اگر نظرسنجی توسط شرکت یا برندی ایجاد می‌شود، میتوانند اطلاعات مورد نیاز را برای نمایش هویت برند خود پر کنند.
اختیاری
برو به جدول
answers
array of objects
پاسخ به سوال یا نظرسنجی توسط این متغیر تعیین می‌شود
اجباری
برو به جدول
options
object
گزینه‌های مختلف را برای نظرسنجی تعیین کنید
اختیاری
برو به جدول
hide_result
BOOL
مخفی کردن یا نکردن نتایج از عموم توسط این متغیر تعیین می‌شود
اختیاری
true
schedule
object
نظرسنجی را برای انتشار در زمان و تاریخ مشخصی در آینده تنظیم کنید
اختیاری
برو به جدول
articles
array
مقاله‌ای برای ارتباط با نظرسنجی یا سوال انتخاب کنید
اجباری
["3rx","cv54"]
tags
array
برچسب‌های سوال را انتخاب کنید
اجباری
["sample tag","sample tag"]
cat
code
دسته‌بندی سوال یا نظرسنجی را تعیین کنید.
اجباری
"x46"
from
object
مخاطب هدف نظرسنجی را تعیین کنید
اختیاری
برو به جدول

درختواره نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
parent
code
والدی برای نظرسنجی تعیین کنید.
اجباری
"246js"
answers
BOOL
پاسخ‌های نظرسنجی والد را انتخاب کنید.
اجباری
true

برندسازی نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
title
string
نام برند
اجباری
"Sarshomar, Ask and Answer anywhere"
url
string
آدرس لینک برند کمپانی
اختیاری
"https://sarshomar.com"

پاسخ نظرسنجی ها

شناسه
متغیر
توضیح
اولویت
مثال
title
string
عنوان پاسخ را تعیین کنید
اختیاری
"Weather conditions"
type
select
انتخاب نوع پاسخ
اجباری
"select"
file
url
اگر پاسخ شما به صورت فایلی می‌باشد، از اینجا آن را تعیین کنید
اجباری
"https://sarshomar.com/static/images/svg/general/logo.svg"
select
object
تعیین گزینه‌های پاسخ
اجباری
برو به جدول

انتخاب نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
is_true
BOOL
اگر نظرسنجی پاسخی دارد از اینجا تعیین کنید.
اختیاری
true
score
object
اگه پاسخ ها دارای امتیاز هستند از طریق این متغیر آنها را تعیین کنید.
اجباری
برو به جدول

امتیاز نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
group
string
گروهی که نظرسنجی شما به آن متعلق است را تعیین کنید.
اختیاری
"Math and Physics"
value
int
مقداری که نشان دهنده امتیاز باشد.
اختیاری
12

گزینه‌های نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
time
int
زمان را برای نظرسنجی تعیین کنید
اختیاری
12
multi
object
حداقل و حداکثر زمان را برای نظرسنجی تعیین کنید
اجباری
برو به جدول
random_sort
BOOL
برای چینیش تصادفی متغیرها این گزینه‌ را تعیین کنید
اختیاری
true
ordering
BOOL
بوسیله این متغیر چینش گزینه‌ها را تعیین کنید
اختیاری
true

نظرسنجی چندگزینه‌ای

شناسه
متغیر
توضیح
اولویت
مثال
min
int
حداقل زمان برای نظرسنجی
اجباری
10
max
int
حداکثر زمان برای نظرسنجی
اجباری
25

زمان بندی نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
start
date_time
زمان و تاریخی که نظرسنجی باید شروع شود را تعیین کنید.
اختیاری
2017-10-03 10:53:14
end
date_time
زمان و تاریخ پایان نظرسنجی را تعیین کنید.
اختیاری
2018-11-11 09:13:26

نظرسنجی کن از

شناسه
متغیر
توضیح
اولویت
مثال
count
int
از چه تعداد افرادی باید نظرسنجی پرسیده شود.
اختیاری
3500
gender
array
جنسیتی که می‌تواند به نظرسنجی پاسخ دهد را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["male", "female"]
اختیاری
["male"]
marrital
array
وضعیت تاهل افرادی که میتوانند به نظرسنجی پاسخ دهند را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["single", "married"]
اختیاری
["single"]
graduation
array
وضعیت تحصیلی افرادی که میتوانند به نظرسنجی پاسخ دهند را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["illiterate", "undergraduate", "graduate"]
اختیاری
["graduate"]
degree
array
وضعیت مدرک تحصیلی افرادی که میتوانند به سوال پاسخ دهند را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["under_diploma", "diploma", "2_year_college", "bachelor", "master", "phd"]
اختیاری
["master"]
range
array
محدوده سنی کسانی که میتوانند به سوالات پاسخ دهند را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["-13", "diploma", "14-17", "18-24", "25-30", "31-44", "45-59", "60+"]
اختیاری
["18-24"]
employmentstatus
array
وضعیت شغلی کسانی که میتوانند به سوالات پاسخ دهند را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["employee", "unemployed", "retired"]
اختیاری
["unemployed"]
housestatus
array
وضعیت منزل کسانی که می‌توانند به سوالات پاسخ دهند را انتخاب کنید. میتوانید یک مورد یا بیشتر را انتخاب کنید یا آن را null قرار دهید.
["owner", "tenant", "homeless"]
اختیاری
["tenant"]

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "title": "string", "survey": "null|code", "language": "fa|en|ar|null for set as default", "summary": "string|null", "description": "string|null", "file": "code", "tree": { "parent": "code", "answers": "skipped|true|[1,5,7]" }, "branding": { "title": "string", "url": "string|null" }, "answers": [{ "title": "null|string", "type": "select", "file": "code", "select": { "is_true": "true|false", "score": { "group": "null|string", "value": "null|int" } } }], "options": { "time": "int|null", "multi" : { "min" : 3, "max" : 10, }, "random_sort": "true|false", "hide_result": "true|false", "ordering": "true|false" }, "schedule": { "start": "null|date_time", "end": "null|date_time" }, "articles": ["code", "code"], "tags": ["movie","film","sample tag"], "cat": "code", "from": { "count": "ultimate|int|null", "gender": [ "male", "female", "null" ], "marrital": [ "single", "married", "null" ], "graduation": [ "illiterate", "undergraduate", "graduate" ], "degree": [ "under_diploma", "diploma", "2_year_college", "bachelor", "master", "phd" ], "range": [ "-13", "14-17", "18-24", "25-30", "31-44", "45-59", "60+" ], "employmentstatus": [ "employee", "unemployed", "retired" ], "housestatus": [ "owner", "tenant", "homeless" ] } }

cURL

curl - X POST - H "Accept: application/json" - H "Authorization: $2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry" - H "Content-Type: application/json" - H "Cache-Control: no-cache" - H "Postman-Token: 3290ba65-4654-7450-219e-ae67b95cc82d"

پاسخ

{ "status": 1, "title": "Poll Successfully added", "msg": { "callback": { "id": "3y" } }, "result": { "id": "3y" } }

دریافت نظرسنجی

دریافت نظرسنجی از طریق API سرشمار


get/poll

شناسه
متغیر
توضیح
اولویت
مثال
id
int
شناسه نظرسنجی
اجباری
"3rs15"
type
string
نوع نظرسنجی میتواند یک از این موارد باشد
["ask"] دریافت سوالات از نوع پرسش
["random"] دریافت سوالات تصادفی
["ask", "random"] دریافت سوالات تصادفی از نوع پرسش
null دریافت هر نوع سوالی
اختیاری
["ask"]

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "id": "[poll id]", "type" : "ask|random|null" }

cURL

curl - X GET - H "Accept: application/json" - H "Authorization: $2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry" - H "Cache-Control: no-cache" - H "Postman-Token: b518c969-a4df-b3b4-14a7-a07a3d29dc02" "http://sarshomar.dev/fa/api/v1/poll?id=3r"

پاسخ

{ "status": 1, "title": null, "msg": { "callback": { "id": "3y", "language": "fa", "title": "روز معلم مصادف با چه روزی است؟", "slug": "roz-maalm-msadf-ba-che-rozy-ast", "url": "$/3y/روز_معلم_مصادف_با_چه_روزی_است؟", "type": "poll", "comment": "open", "meta": { "desc": "", "opt": [ { "key": "opt_1", "txt": "شهادت شهید مطهری", "type": "text" }, { "key": "opt_2", "txt": "شهادت شهید بهشتی", "type": "text" }, { "key": "opt_3", "txt": "شهادت شهید رجایی", "type": "text" } ], "comment": true }, "status": "deleted", "user_id": "H", "sarshomar": true, "privacy": "public", "result": { "count_answered": { "valid": 39, "invalid": 0, "sum": 39 }, "result": { "1": { "text": "fff", "key": "1", "type": null, "valid": 0, "invalid": 0, "sum": 0 }, "2": { "text": "exded", "key": "2", "type": null, "valid": 14, "invalid": 0, "sum": 14 } } } } } }

جستجوی نظرسنجی از طریق API سرشمار


get/poll/search

شناسه
متغیر
توضیح
اولویت
مثال
search
string
جستجو
اختیاری
"وضعیت آب و هوا"
my_poll
BOOL
...
اختیاری
true
language
fa
تعیین زبان نظرسنجی
اختیاری
"en"
from
int
از...
اجباری
0
to
int
به...
اجباری
10

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "search": "sdghl|null to get last", "in": "sarshomar|me|other", "in": ["sarshomar","me","other"], "in": "all", "status" : "publish|draft|trash", "status" : ["publish","draft","trash"], "language": "fa|en|ar|null", "language": ["fa","en","ar"], "language": "fa", "from" : 0, "to" : 10, }

cURL

curl

پاسخ

{ "status": 1, "title": null, "msg": { "callback": [ { "is_answered": true, "my_fav": true, "id": "3y", "title": "sf", "slug": "sf", "url": "$/3y", "type": "poll", "status": "publish", "user_id": "6", "sarshomar": true, "privacy": "public" }, { "my_like": true, "my_fav": true, "id": "3x", "title": "sf", "slug": "sf", "url": "$/3x", "type": "poll", "status": "publish", "user_id": "6", "sarshomar": true, "privacy": "public" } ] } }

ثبت پاسخ نظرسنجی

ثبت پاسخ از طریق API سرشمار


post/poll/answer

شناسه
متغیر
توضیح
اولویت
مثال
id
string
شناسه نظرسنجی
اجباری
"434sf"
skipped
BOOL
آیا نظرسنجی نادیده گرفته شده است
اختیاری
true
answer
array of objects
پاسخ‌های نظرسنجی
["True", "False", "int", "string", "url"]
اختیاری
true

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "id": "[poll id]", "skip": true, "answer": { "1": true, "2": true } }

cURL

curl

پاسخ

{ }

ثبت علاقه‌مندی یک سوال

افزودن سوال به علاقه‌مندی‌ها از طریق API سرشمار


post/poll/fav

شناسه
متغیر
توضیح
اولویت
مثال
id
string
شناسه نظرسنجی
اجباری
"54fa8"
fav
BOOL
آیا نظرسنجی به علاقه‌مندی‌ها اضافه شود یا خیر
اختیاری
true

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "id": "[poll id]", "fav": "true|false|[leave it null to toggle favorites]" }

cURL

curl

پاسخ

{ "status": 1, "title": null, "msg": [ "callback" ], "messages": { "true": [ { "title": "Favourites set", "element": false, "group": "public" } ] } }

پسندیدن سوال

پسندیدن یک سوال از طریق API سرشمار


post/poll/like

شناسه
متغیر
توضیح
اولویت
مثال
id
int
شناسه نظرسنجی
اجباری
"3fxr45"
like
BOOL
آیا نظرسنجی مورد پسند است یا خیر
اختیاری
true

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "id": "[poll id]", "like": "true|false|[leave it null to toggle like]" }

cURL

curl

پاسخ

{ "status": 1, "title": null, "msg": [ "callback" ], "messages": { "true": [ { "title": "Like set", "element": false, "group": "public" } ] } }

محاسبه قیمت یک سوال

محاسبه هزینه یک سوال از طریق API سرشمار


post/poll/price

شناسه
متغیر
توضیح
اولویت
مثال
id
int
شناسه نظرسنجی
اختیاری
"3rf"
poll
object
نظرسنجی...
اختیاری
برو به جدول
survey
object
گزینه‌های پرسشنامه
اختیاری
برو به جدول
member
int
عضو...
اجباری
5488
branding
BOOL
آیا برای یک برند است یا خیر
اجباری
true
Filters
object
گزینه‌های فیلتر
اختیاری
برو به جدول

محسابه قیمت نظرسنجی

شناسه
متغیر
توضیح
اولویت
مثال
nofity
BOOL
اطلاع رسانی...
اختیاری
true

محسابه قیمت پرسشنامه

شناسه
متغیر
توضیح
اولویت
مثال
child
int
فرزند...
اجباری
5489
nofity
int
اطلاع رسانی...
اجباری
244

محاسه قیمت فیلترها

شناسه
متغیر
توضیح
اولویت
مثال
gender
BOOL
دارای فیلتر جنسیت
اجباری
true
marrital
BOOL
دارای فیلتر وضعیت تاهل
اجباری
true
internetusage
BOOL
دارای فیلتر میزان استفاده از اینترنت
اجباری
true
graduation
BOOL
دارای فیلتر تحصیلات
اجباری
true
degree
BOOL
دارای فیلتر مدرک
اجباری
true
range
BOOL
دارای فیلتر محدوده
اجباری
true
employmentstatus
BOOL
دارای فیلتر اشتغال
اجباری
true
housestatus
BOOL
دارای فیلتر خانه
اجباری
true

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "id": "[poll or survey id]|null", "poll": { "nofity": true }, "survey": { "child": 20, "nofity": 1 }, "member": "int", "branding": true, "filters": { "gender": true, "marrital": true, "internetusage": true, "graduation": true, "degree": true, "range": true, "employmentstatus": true, "housestatus": true } }

cURL

curl

پاسخ

{ "status": 1, "title": null, "msg": [ "callback" ], "messages": { "true": [ { "title": "Like set", "element": false, "group": "public" } ] } }

افزودن پروفایل

افزودن پروفایل با استفاده از رابط برنامه‌نویسی سرشمار


post/profile

شناسه
متغیر
توضیح
اولویت
مثال
language
string
زبان کاربر
اختیاری
"fa"
unit
string
واحد کاربر
اختیاری
"toman"
gender
string
جنسیت کاربر
اختیاری
"male"
marrital
string
وضعیت تاهل کاربر
اختیاری
"married"
graduation
string
وضعیت فارغ‌التحصیلی کاربر
اختیاری
"illiterate"
degree
string
مدرک تحصیلی کاربر
اختیاری
"under diploma"
range
string
محدوده‌ی سنی کاربر
اختیاری
"25-30"
employmentstatus
string
وضعیت شغلی کاربر
اختیاری
"employee"
housestatus
string
وضعیت مسکن کاربر
اختیاری
"owner"

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{ "language": "fa", "unit": "toman", "gender": "male", "marrital": "married", "graduation": "illiterate", "degree": "under diploma", "range": "25-30", "employmentstatus": "employee", "housestatus": "owner" }

cURL

curl - X PATCH - H "Accept: application/json" - H "Authorization: $2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry" - H "Content-Type: application/json" - H "Cache-Control: no-cache" - H "Postman-Token: 3290ba65-4654-7450-219e-ae67b95cc82d"

پاسخ

{ "status": 1, "title": "The profile data was change", "msg": [ "callback" ], "messages": { "true": [ { "title": "User language changed", "element": "language", "group": "arguments" }, { "title": "User unit changed", "element": "unit", "group": "arguments" }, { "title": "Sarshomar's gift belongs to you for completing your profile", "element": false, "group": "public" } ] } }

مالی

پرداخت از طریق API سرشمار


post/billing/balance

شناسه
متغیر
توضیح
اولویت
مثال

سربرگ

Accept:application/json Authorization:$2y$07$fRI1wcT6B6JxCaowePUliuNgkNbswDCbmKcnnDWynfEpxUjfRzVry

درخواست

{}

cURL

cURL

پاسخ

{ "status": 1, "title": null, "msg": { "callback": { "gift": 200, "real": 100, "prize": 300, "transfer": 400, "sum": 1000 } } }
برو بالا
ما تخمین‌ناپذیریم

بررسی کنید و پاسخ دهید

سپس اگر ما را برترین یافتید، ثبت‌نام کنید!

قبل از ثبت‌نام امتحان کنید