Получение списка кампаний проекта

Получение списка кампаний проекта

Метод

GET https://api.uxfeedback.ru/{version}/private/campaigns

где

  • {version} - это версия метода, которая предполагает какое-то поведение метода. Рекомендуется использовать “последнюю” или “более высокую” версию метода, как самую актуальную

Версии метода

v1

GET https://api.uxfeedback.ru/v1/private/campaigns

версия включает работу с доп.параметрами:

  • show_inactive - включать в список “неактивные” кампании (true / false),
    по умолчанию: true

  • show_archived - включать в список “архивные” кампании (true / false),
    по умолчанию: false

  • view - объекты для отображения в списке:

    • widget - виджеты, т.е. кампании пассивного фидбека

    • campaign - кампании активного фидбека

    • all - все, т.е. кампании пассивного фидбека и активного фидбека
      по умолчанию: all

  • group_ids - список id групп через запятую, в одну из которых должны входить кампании, например: group_ids=10,11

v2

GET https://api.uxfeedback.ru/v2/private/campaigns

Внесены изменения в версию v1:

  • добавлена возможность выгружать информацию по “опросам по ссылке”

  • добавлено описание “как работают фильтры в запросе”

версия включает работу с доп.параметрами:

  • show_inactive - включать в список “неактивные” кампании (true / false),
    по умолчанию: true

    1. если в запросе указано: show_inactive=false (показывать неактивные = нет),
      то в ответе НЕ должны показываться “неактивные” кампании,
      т.е. в ответе видим ТОЛЬКО кампании, у которых: "active": true

    2. если в запросе указано: show_inactive=true (показывать неактивные = да),
      то в ответе должны показываться и “активные”, и “неактивные”,
      т.е. в ответе видим кампании, у которых: "active": true И "active": false

    3. если в запросе никак не указано: show_inactive,
      то работает “условие по умолчанию”: show_inactive=true (см. пункт “b”)

  • show_archived - включать в список “архивные” кампании (true / false),
    по умолчанию: false

    1. если в запросе указано: show_archived=false (показывать архивные = нет),
      то в ответе НЕ должны показываться “архивные кампании”,
      т.е. в ответе видим ТОЛЬКО кампании, у которых: "archived": false

    2. если в запросе указано: show_archived=true (показывать архивные = да),
      то в ответе должны показываться и “архивные”, и “неархивные”,
      т.е. в ответе видим кампании, у которых: "archived": true И "archived": false

    3. если в запросе никак не указано: show_archived,
      то работает “условие по умолчанию”: show_archived=false (см. пункт “а”)

  • kind - объекты для отображения в списке:

    • widget - виджеты, т.е. кампании пассивного фидбека

    • campaign - кампании активного фидбека

    • survey - опросы по ссылке

    • all - все, т.е. кампании пассивного фидбека, активного фидбека и опросы по ссылке, по умолчанию: all

  • group_ids - список id групп через запятую, в одну из которых должны входить кампании, например: group_ids=1,256

Пример метода

Пример максимально полного запроса: https://api.uxfeedback.ru/v2/private/campaigns?show_inactive=true&show_archived=true&kind=all&group_ids=1

Структура ответа

{ "data": [], "errors": [] }

где

  • "data": [] - содержит массив записей кампаний:

  • "errors": [] - содержит информацию о ошибках.

Коды ответов и ошибок

Код ответа

Пример JSON'а

Код ответа

Пример JSON'а

401 Unauthorized

Запрос:
https://api.uxfeedback.ru/v2/private/campaigns?show_inactive=true&show_archived=true&kind=all

Ответ:

{ "errors": [ { "code": "error.unauthorized.access-denied", "comment": "access-denied" } ] }

Пояснения:
Ошибка возникает, когда сам запрос корректный, но в ключе-токене допущена ошибка: используется токен авторизации от другого проекта или допустили опечатку в символах валидного токена => авторизация Клиента не проходит.

404 Not Found

Запрос:
https://api.uxfeedback.ru/v2/private/campaign

Ответ:

{ "errors": [ { "code": "error.not-found.resource-not-found", "comment": "resource-not-found" } ] }

Пояснения:
Ошибка возникает, когда ресурс не найден, например: ошиблись с наименованием и написали …/campaign (или что-то другое) вместо …/campaigns.

400 Bad request

Запрос:
https://api.uxfeedback.ru/v2/private/campaigns?show_inactive=true&show_archived=true&kind=wrongValueForParameter

Ответ:

{ "errors": [ { "in": [ "kind" ], "value": "wrongValueForParameter", "code": "error.input.should-be-either-\"widget\",-\"campaign\",-\"survey\"-or-\"all\"" } ] }

Пояснения:
Ошибка возникает в случаях, когда доп.параметры в строке запроса указаны неверно или вовсе не указаны, а запрос их ожидает (в частности, в параметре kind указано неверное значение, по которому не может быть обработан запрос)

В описании ошибки сообщается: каких значений не хватает или на что обратить внимание.

200 Ok

Запрос:
https://api.uxfeedback.ru/v2/private/campaigns?show_inactive=true&show_archived=true&kind=all

Ответ:

{ "data": [ { "id": 343, "name": "Десктопный виджет", "active": true, "archived": false, "created_at": "2018-08-08T00:00:00.000Z", "groups": [], "kind": "widget" }, { "id": 517, "name": "тест вопроса", "active": false, "archived": false, "created_at": "2019-06-17T17:26:58.067Z", "groups": [ 1 ], "kind": "campaign" }, { "id": 12555, "name": "Опрос ", "active": false, "archived": false, "created_at": "2023-06-08T05:46:22.056Z", "groups": [], "kind": "survey" } ... ], "errors": [] }

Пояснения:
Успешный ответ,
возможен даже без указания доп.параметров после …/campaigns