Skip to content

Instantly share code, notes, and snippets.

@xanderblinov
Last active August 10, 2018 07:35
Show Gist options
  • Save xanderblinov/52217c5161b2c9ed06649fe4995e1e77 to your computer and use it in GitHub Desktop.
Save xanderblinov/52217c5161b2c9ed06649fe4995e1e77 to your computer and use it in GitHub Desktop.

Эксперименты

Информация, участвует ли текущий пользователь в конкретном эксперименте

Запрос

При запросе анонимом необходимо передавать access-token приложения.

 /experiments/{experiment_name}?
  app_version={app_version}&
  platform_version={platform_version}&
  uuid={uuid}

где:

Имя Обязательный Описание Пример
app_version да версия приложения 5.17
platform_version да версия системы 4.0.4
uuid да уникальный идентификатор устройства (параметр обязателен). То же значение, которое используется в User-Agent при запросах к API и при подписке на пуши 26da7b29-b1db-35a7-111a-97acc4d0843a

Дополнительно клиент может передавать query-параметры эксперимента. Требования к параметрам определяются отдельно для каждого эксперимента.

Ответ

В случае, если пользователь участвует в эксперименте, успешный ответ приходит с кодом 200 OK и содержит тело:

{
    "experiment_name": "short_builder_in_app",
    "user_is_affected": true,
    "parameters": [
        {
            "name": "backurl",
            "type": "string",
            "value": "/vacancies"
        },
        {
            "name": "source",
            "type": "integer",
            "value": 17
        }
    ]
}

Описание возвращаемых значений:

Имя Тип Описание
experiment_name string Имя эксперимента
user_is_affected boolean Попал ли пользователь в него.
parameters array Список параметров эксперимента
parameters.name string Имя параметра
parameters.value object Значение параметра
parameters.type string enum из значений

Ошибки

400 Bad Request – ошибка в переданных параметрах эксперимента или невалидная их комбинация. 404 Not Found – ошибка в переданных параметрах эксперимента или невалидная их комбинация.

Запросить список экспериментов, в которые попадает текущий пользователь

Запрос

При запросе анонимом необходимо передавать access-token приложения.

GET /experiments?
  app_version={app_version}&
  platform_version={platform_version}&
  uuid={uuid}

Параметры app_version, platform_version и uuid аналогичны параметрам, передаваемым при проверке участия в конкретном эксперименте

Ответ

Успешный ответ приходит с кодом 200 OK и содержит тело:

{
    "items": [
        {
            "experiment_name": "short_builder_in_app",
            "user_is_affected": true,
            "parameters": [
                {
                    "name": "backurl",
                    "type": "string",
                    "value": "/vacancies"
                },
                {
                    "name": "source",
                    "type" : "integer",
                    "value": 17
                }
            ]
        },
        {
            "experiment_name": "anonymous_resume",
            "user_is_affected": true,
            "parameters": []
        }
    ]
}

Каждый элемент возвращаемого списка items явлется объектом идентичным возвращаемому при проверке участия в конкретном эксперименте

Описание действующих экспериментов

Открытие резюме в короткой анкете xhh в приложениях

GET /experiments/short_builder_in_app?resume_id={resume_id}

Название эксперимента

short_builder_in_app

Принимаемые параметры

Имя Обязательный Описание
resume_id Нет id редактируемого резюме при редактировании

Возвращаемые параметры

Отсутствуют

Не показызывать контакты вакансии до регистрации пользователя

GET /experiments/hide_contacts_beyond_auth

Название эксперимента

hide_contacts_beyond_auth

Возвращаемые параметры

Отсутствуют

Показывать контакты на поисковой выдаче

GET /experiments/show_contacts_on_search

Название эксперимента

show_contacts_on_search

Возвращаемые параметры

Отсутствуют

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment