API Documentation

Общая информация



Авторизация


Запрос: (GET) https://api.webask.io/oauth/authorize

Параметры запроса:

{ "client_id": "{CLIENT_ID}", "state": "1650379667.97685997745", "redirect_uri": "", "response_type": "code", }

Результат ответа:

Если запрос прошел успешно, то будет отправка на указанный вами redirect_uri с параметрами state, code.

В целях большей безопасности state нужно сравнивать со значением хранящимся в сеансе пользователя, чтобы обеспечить авторизацию.

Использовать полученный code в запросе на получение токена.

Запрос: (POST) https://api.webask.io/oauth/token

Параметры запроса:

{
"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": ""
}

Полученный access_token хранить и использовать в заголовке Authorization для следующих запросов.

Список опросов

Получить список опросов.

Запрос: (GET) https://api.webask.io/api/service/quiz

Результат ответа:

{
"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
}
}

Данные опроса

Получить данные указанного опроса.

Запрос: (GET) https://api.webask.io/api/service/quiz/{id}

Результат ответа:

{
"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
}
}

Ответы опроса

Получить список ответов указанного опроса.

Запрос: (GET) https://api.webask.io/api/service/quiz/{id}/answers

Параметры запроса:

limit - type: integer; default: 20;
offset - type: integer; default: 20;
date - type: date_format: Y-m-d;

Результат ответа:

[
{
"id": 4813,
"visit_id": 46139,
"date": "2022-04-01T19:43:30.511756",
"date_start": "2022-04-01T16:43:12+06:00",
"date_end": "2022-04-01T19:43:30.511756",
"is_complete": true,
"extra_fields": null,
"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": "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": "2022-02-23T17:03:55.086727",
"date_start": "2022-02-23T14:03:39+06:00",
"date_end": "2022-02-23T17:03:55.086727",
"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": "2022-02-23T16:03:51.570695",
"date_start": "2022-02-23T13:03:44+06:00",
"date_end": "2022-02-23T16:03:51.570695",
"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
}
]

Скрытые переменные

Параметры опроса:

Получить, отправить, обновить или удалить скрытую переменную.

Получить скрытую переменную:
Запрос: (GET) https://api.webask.io/api/service/quiz/{id}/hidden/options

Отправить скрытую переменную:
Запрос: (POST) https://api.webask.io/api/service/quiz/{id}/hidden/options/create

Параметры запроса:

{
"name": "productType",
"value": "clientShop"
}

Обновить скрытую переменную:
Запрос: (POST) https://api.webask.io/api/service/quiz/{id}/hidden/options/update/{id}

Параметры запроса:

{
"name": "productType",
"value": "clientShop"
}

Удалить скрытую переменную:
Запрос: (POST) https://api.webask.io/api/service/quiz/{id}/hidden/options/delete/{id}

Параметры виджетов:

Получить, отправить, обновить или удалить скрытую переменную.

Получить скрытую переменную:
Запрос: (GET) https://api.webask.io/api/service/quiz/{id}/widgets/hidden/options

Отправить скрытую переменную:
Запрос: (POST) https://api.webask.io/api/service/quiz/{id}/widgets/hidden/options/create

Параметры запроса:

{
"name": "productType",
"value": "clientShop",
"widget_uuid": "c63b9a88-2f1b-4735-a7ab-0b5fd84c90c2"
}

Обновить скрытую переменную:
Запрос: (POST) https://api.webask.io/api/service/quiz/{id}/widgets/hidden/options/update/{opt_id}

Параметры запроса:

{
"name": "productType",
"value": "clientShop"
}

Удалить скрытую переменную:
Запрос: (POST) https://api.webask.io/api/service/quiz/{id}/widgets/hidden/delete/{opt_id}

Connect with Zapier

1. Send Responses (Triggers)

Settings:

Key: quiz_send
Name: Send Responses
Noun: Responses
Description: Send survey responses anywhere.
Visibility Options: Important (Displayed above the fold in the Zap Editor)

Input Designer:

Key: quiz_list
Label: Survey List
Type: string
Options: Required, Dropdown
Dropdown Type: Dynamic
Dropdown Source: Survey List
  • Field Name — id
  • Field Label — name

API Configuration:

Trigger Type: REST Hook


1) Subscribe

(POST) https://api.webask.io/api/zapier/hooks

HTTP Headers:
Content-Type application/json
Accept application/json
Authorization Bearer {{bundle.authData.access_token}}

Request Body
hook_url {{bundle.targetUrl}}
quiz_id {{bundle.inputData.quiz_list}}


2) Unsubscribe

(DELETE) https://api.webask.io/api/zapier/hooks/{{bundle.subscribeData.id}}

HTTP Headers:
Content-Type application/json
Accept application/json
Authorization Bearer {{bundle.authData.access_token}}

Request Body
quiz_id {{bundle.inputData.quiz_list}}


3) Perform List

(GET) https://api.webask.io/api/zapier/perform

URL Params:
quiz_id {{bundle.inputData.quiz_list}}

HTTP Headers:
Accept application/json
Authorization Bearer {{bundle.authData.access_token}}

2. Survey List (Triggers)

Settings:

Key: quiz_list
Name: Survey List
Noun: Survey
Description: Select the survey from which responses will be sent.
Visibility Options: Hidden (Not shown to users)

API Configuration:

Trigger Type:

Polling

API Endpoint:
(GET) https://api.webask.io/api/zapier/triggers/quiz

HTTP Headers:
Accept application/json
Authorization Bearer {{bundle.authData.access_token}}