API
Содержание
Общая информация
- Домен API: https://api.webask.io/service
- Формат возвращаемых данных: JSON
- Авторизация: oauth2, ко всем запросам в заголовке обязательный Authorization с ключом доступа
- Для доступа к API иметь: Client ID и Client Secret. Выдается по запросу в службе поддержки на тарифе «Премиум»
- Предоставить: работающий redirect_uri в службу поддержки
Авторизация
https://api.webask.io/oauth/authorize get
Параметры запроса
{
"client_id": "{CLIENT_ID}",
"state": "1650379667.97685997745",
"redirect_uri": "",
"response_type": "code",
}
"client_id": "{CLIENT_ID}",
"state": "1650379667.97685997745",
"redirect_uri": "",
"response_type": "code",
}
Если запрос прошел успешно, то будет отправка на указанный вами redirect_uri с параметрами state, code.
В целях большей безопасности state нужно сравнивать со значением хранящимся в сеансе пользователя, чтобы обеспечить авторизацию.
Использовать полученный code в запросе на получение токена.
https://api.webask.io/oauth/token post
Параметры запроса
{
"code": "{CODE}",
"client_id": "{CLIENT_ID}",
"client_secret": "{CLIENT_SECRET}",
"grant_type": "authorization_code",
"redirect_uri": "{REDIRECT_URI}"
}
Результат ответа
"code": "{CODE}",
"client_id": "{CLIENT_ID}",
"client_secret": "{CLIENT_SECRET}",
"grant_type": "authorization_code",
"redirect_uri": "{REDIRECT_URI}"
}
{
"token_type": "Bearer",
"expires_in": 31536000,
"access_token": "",
"refresh_token": ""
}
"token_type": "Bearer",
"expires_in": 31536000,
"access_token": "",
"refresh_token": ""
}
Полученный access_token хранить и использовать в заголовке Authorization для следующих запросов.
Получить список опросов
https://api.webask.io/api/service/quiz get
Результат ответа
{
"id": "ID опроса",
"name": "название",
"url_shared": "адрес опроса",
"is_published": true,
"folder": {
"id": 384,
"workspace_id": 384,
"user_id": 12,
"name": "Мои опросы",
"pos": 1,
"is_default": true,
"created_at": "2022-04-01T08:37:14.000000Z",
"updated_at": "2022-04-27T15:46:27.000000Z",
"deleted_at": null
}
}
"id": "ID опроса",
"name": "название",
"url_shared": "адрес опроса",
"is_published": true,
"folder": {
"id": 384,
"workspace_id": 384,
"user_id": 12,
"name": "Мои опросы",
"pos": 1,
"is_default": true,
"created_at": "2022-04-01T08:37:14.000000Z",
"updated_at": "2022-04-27T15:46:27.000000Z",
"deleted_at": null
}
}
Получить данные определенного опроса
https://api.webask.io/api/service/quiz/{id} get
Результат ответа
{
"id": "ID опроса",
"answer_count": "количество ответов",
"name": "название",
"url_shared": "адрес опроса",
"widgets": "виджет",
"hidden_options": "скрытая переменная",
"folder": {
"id": 384,
"workspace_id": 384,
"user_id": 12,
"name": "Мои опросы",
"pos": 1,
"is_default": true,
"created_at": "2022-04-01T08:37:14.000000Z",
"updated_at": "2022-04-27T15:46:27.000000Z",
"deleted_at": null
}
}
"id": "ID опроса",
"answer_count": "количество ответов",
"name": "название",
"url_shared": "адрес опроса",
"widgets": "виджет",
"hidden_options": "скрытая переменная",
"folder": {
"id": 384,
"workspace_id": 384,
"user_id": 12,
"name": "Мои опросы",
"pos": 1,
"is_default": true,
"created_at": "2022-04-01T08:37:14.000000Z",
"updated_at": "2022-04-27T15:46:27.000000Z",
"deleted_at": null
}
}
Получить список ответов указанного опроса
https://api.webask.io/api/service/quiz/{id}/answers get
Параметры запроса
limit - type: integer; default: 20;
offset - type: integer; default: 20;
date - type: date_format: Y-m-d;
Результат ответа
offset - type: integer; default: 20;
date - type: date_format: Y-m-d;
[
{
"id": 4813,
"visit_id": 46139,
"date": "2023-08-24T12:51:33.466162",
"date_start": "2023-08-24T12:51:33.466162",
"date_end": "2023-08-24T12:51:28.275591",
"is_complete": true,
"extra_fields": null,
"answers": [
{
"type": "yesno",
"rowId": "3ec8521a-3af8-4fec-b11e-7409d38eab33",
"title": "yes nо",
"result": [
{
"uuid": "adbe1d5f-29e2-468c-863b-5b136a519ad1",
"label": "Да"
}
],
"max_val": null,
"hidden_options": []
},
{
"type": "slider",
"rowId": "87a748c3-43e5-4ecc-bba2-413deb908864",
"title": "ползунок",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "file",
"rowId": "0753c3d8-3898-458c-9de1-32f7a6efc89b",
"title": "укеукеуке",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "userInfo",
"title": null,
"result": {
"ip": "5.76.136.157",
"browser": "Chrome",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36",
"password_number": null
}
}
],
"over_upload_limit": false
},
{
"id": 4812,
"visit_id": 46137,
"date": "2023-08-24T16:43:20.07436",
"date_start": "2023-08-24T16:43:20.07436",
"date_end": "2023-08-24T16:43:15.686992",
"extra_fields": null,
"is_complete": false,
"answers": [
{
"type": "yesno",
"rowId": "3ec8521a-3af8-4fec-b11e-7409d38eab33",
"title": "yes но",
"result": [
{
"uuid": "adbe1d5f-29e2-468c-863b-5b136a519ad1",
"label": "Да"
}
],
"max_val": null,
"hidden_options": []
},
{
"type": "slider",
"rowId": "87a748c3-43e5-4ecc-bba2-413deb908864",
"title": "ползунок",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "file",
"rowId": "0753c3d8-3898-458c-9de1-32f7a6efc89b",
"title": "укеукеуке",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "userInfo",
"title": null,
"result": {
"ip": "178.90.32.141",
"browser": "Chrome",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36",
"password_number": null
}
}
],
"over_upload_limit": false
},
{
"id": 4811,
"visit_id": 46136,
"date": "2023-08-24T16:47:05.660563",
"date_start": "2023-08-24T16:47:05.660563",
"date_end": "2023-08-24T16:46:59.852849",
"extra_fields": null,
"is_complete": true,
"answers": [
{
"type": "slider",
"rowId": "87a748c3-43e5-4ecc-bba2-413deb908864",
"title": "ползунок",
"result": 57,
"max_val": null,
"hidden_options": []
},
{
"type": "userInfo",
"title": null,
"result": {
"ip": "178.90.32.141",
"browser": "Chrome",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36",
"password_number": null
}
}
],
"over_upload_limit": false
}
]
{
"id": 4813,
"visit_id": 46139,
"date": "2023-08-24T12:51:33.466162",
"date_start": "2023-08-24T12:51:33.466162",
"date_end": "2023-08-24T12:51:28.275591",
"is_complete": true,
"extra_fields": null,
"answers": [
{
"type": "yesno",
"rowId": "3ec8521a-3af8-4fec-b11e-7409d38eab33",
"title": "yes nо",
"result": [
{
"uuid": "adbe1d5f-29e2-468c-863b-5b136a519ad1",
"label": "Да"
}
],
"max_val": null,
"hidden_options": []
},
{
"type": "slider",
"rowId": "87a748c3-43e5-4ecc-bba2-413deb908864",
"title": "ползунок",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "file",
"rowId": "0753c3d8-3898-458c-9de1-32f7a6efc89b",
"title": "укеукеуке",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "userInfo",
"title": null,
"result": {
"ip": "5.76.136.157",
"browser": "Chrome",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36",
"password_number": null
}
}
],
"over_upload_limit": false
},
{
"id": 4812,
"visit_id": 46137,
"date": "2023-08-24T16:43:20.07436",
"date_start": "2023-08-24T16:43:20.07436",
"date_end": "2023-08-24T16:43:15.686992",
"extra_fields": null,
"is_complete": false,
"answers": [
{
"type": "yesno",
"rowId": "3ec8521a-3af8-4fec-b11e-7409d38eab33",
"title": "yes но",
"result": [
{
"uuid": "adbe1d5f-29e2-468c-863b-5b136a519ad1",
"label": "Да"
}
],
"max_val": null,
"hidden_options": []
},
{
"type": "slider",
"rowId": "87a748c3-43e5-4ecc-bba2-413deb908864",
"title": "ползунок",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "file",
"rowId": "0753c3d8-3898-458c-9de1-32f7a6efc89b",
"title": "укеукеуке",
"result": null,
"max_val": null,
"hidden_options": []
},
{
"type": "userInfo",
"title": null,
"result": {
"ip": "178.90.32.141",
"browser": "Chrome",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36",
"password_number": null
}
}
],
"over_upload_limit": false
},
{
"id": 4811,
"visit_id": 46136,
"date": "2023-08-24T16:47:05.660563",
"date_start": "2023-08-24T16:47:05.660563",
"date_end": "2023-08-24T16:46:59.852849",
"extra_fields": null,
"is_complete": true,
"answers": [
{
"type": "slider",
"rowId": "87a748c3-43e5-4ecc-bba2-413deb908864",
"title": "ползунок",
"result": 57,
"max_val": null,
"hidden_options": []
},
{
"type": "userInfo",
"title": null,
"result": {
"ip": "178.90.32.141",
"browser": "Chrome",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36",
"password_number": null
}
}
],
"over_upload_limit": false
}
]
Скрытые переменные
Получить скрытую переменнуюhttps://api.webask.io/api/ service/quiz/{id}/hidden/options get
Отправить скрытую переменную
https://api.webask.io/api/service/quiz/{id}/hidden/options/create post
Параметры запроса
{
"name": "productType",
"value": "clientShop"
}
Обновить скрытую переменную
"name": "productType",
"value": "clientShop"
}
https://api.webask.io/api/ service/quiz/{id}/hidden/options/update/{id} post
Параметры запроса
{
"name": "productType",
"value": "clientShop"
}
Удалить скрытую переменную
"name": "productType",
"value": "clientShop"
}
https://api.webask.io/api/ service/quiz/{id}/hidden/options/delete/{id} post
Параметры скрытых переменных в вопросах
Получить скрытую переменную в вопросе
https://api.webask.io/api/ service/quiz/{id}/widgets/hidden/options get
Отправить скрытую переменную в вопросе
https://api.webask.io/api/ service/quiz/{id}/widgets/hidden/options/create post
Параметры запроса:
{
"name": "productType",
"value": "clientShop",
"widget_uuid": "c63b9a88-2f1b-4735-a7ab-0b5fd84c90c2"
}
Обновить скрытую переменную в вопросе
"name": "productType",
"value": "clientShop",
"widget_uuid": "c63b9a88-2f1b-4735-a7ab-0b5fd84c90c2"
}
https://api.webask.io/api/ service/quiz/{id}/widgets/hidden/options/update/{opt_id} post
Параметры запроса:
{
"name": "productType",
"value": "clientShop"
}
Удалить скрытую переменную в вопросе
"name": "productType",
"value": "clientShop"
}
https://api.webask.io/api/ service/quiz/{id}/widgets/hidden/delete/{opt_id} post
Мы принимаем предложения по доработке API, свяжитесь с нами