Rick.ai

Rick.ai data API

Обзор

API предназначено для выгрузки первичных данных из Rick.ai

Документация

Спецификация API в формате OpenAPI (Swagger 2.0)

Интерфейс тестирования API

Начало работы

Для получения необходимых ключей авторизации (токена и идентификатора компании) обратитесь к команде заботы.

Общие положения

Работа с API осуществляется в зашифрованном виде по протоколу HTTPS, формат ответа JSON.

Авторизация осуществляется посредством передачи токена в заголовке HTTP запроса Rick-Auth-Token.

Предусмотрены механизмы ограничения активности работы с API:

  • не более 1 параллельно выполняющегося запроса,
  • не более 1 запроса в секунду.

Примеры

Получение детализации сессий посетителей

curl --request GET \
  --url 'https://api.rick.ai/v2/example-company/sessions?start=2018-09-08&end=2018-10-08' \
  --header 'Rick-Auth-Token: eyjhbglhcyi6imv4yw1wbcisimf1dghfyxbwx2lkijoxmjm0fq'

Информация о версии

Версия : 2.0.2

Схема URI

Узел : api.rick.ai
Схемы : HTTPS

Пути

Сессии посетителей

GET /v2/{company}/sessions

Описание

Возвращает данные сессий посетителей в заданном диапазоне дат

Параметры

Тип Имя Описание Схема По умолчанию
Path company
обязательно
Идентификатор компании string
Query start
обязательно
Начало диапазона дат для выгрузки, не ранее 90 дней назад (лимит временный, может измениться в сторону увеличения) string (date)
Query end
обязательно
Конец диапазона дат для выгрузки, не позднее 32 часов назад (лимит обусловлен особенностями обработки данных в GA) string (date)
Query limit
optional
Максимальное количество сессий в выгрузке, максимум 100000 integer 1000
Query offset
optional
Сколько сессий с начала выгрузки нужно пропустить (для постраничной выгрузки) integer 0
Query page
optional
Страница выгрузки. Внимание! Параметр устарел, не рекомендуется к использованию и в следующей версии будет удален. integer 0

Ответы

HTTP код Описание Схема
200 Список данных сессий посетителей Sessions
400 Неверный запрос Error
401 Отсутствует или неверный токен Error
429 Превышен лимит запросов Error
default Неожиданная ошибка Error

Возвращает

  • application/json

Пример HTTP запроса

Запрос path
/v2/example-company/sessions
Запрос query
json :
{
  "start" : "2018-10-01",
  "end" : "2018-10-31",
  "limit" : 10000,
  "offset" : 20000,
  "page" : 1
}

Пример HTTP запроса

Ответ 200
json :
{
  "items" : [ {
    "client_id" : "123456789.123456789",
    "session_count" : 29,
    "date" : "2018-10-03",
    "source_medium" : "google / cpc",
    "real_source_medium" : "google / cpc",
    "campaign" : "retargeting-display",
    "campaign_type" : "search brand",
    "keyword" : "+скачать +без +регистрации +и +смс",
    "channel_group" : "Google Adwords",
    "channel_type" : "paid",
    "country" : "Russia",
    "region" : "Voronezh Oblast",
    "city" : "Voronezh",
    "browser" : "Chrome",
    "browser_version" : "69.0.3497.100",
    "operating_system" : "Android",
    "device_category" : "tablet",
    "screen_resolution" : "601x962",
    "app_version" : "1.0.12",
    "mobile_device_info" : "Samsung SM-T285 Galaxy Tab A 7.0 LTE",
    "landing_page_path" : "/featured/",
    "initial_landing_page_path" : "/pricing/",
    "hostname" : "rick.ai",
    "ad_content" : "Ретаргетинг 10% скидка",
    "channel_grouping" : "Ретаргетинг кампании",
    "acq_cost" : 16.87,
    "revenue" : 600.0,
    "transactions" : [ {
      "transaction_id" : "HGJES-673",
      "status" : "Оплачено",
      "deal_source" : "jivosite",
      "revenue" : 600.0,
      "grossprofit" : 400.0,
      "products" : [ {
        "sku" : "SUB-MONTH",
        "name" : "Подписка (1 месяц)",
        "category" : "Подписка",
        "price" : 600.0,
        "quantity" : 1
      } ],
      "status_history" : [ {
        "status" : "Оплачено",
        "date" : "2018-10-03"
      } ]
    } ],
    "page_paths" : [ "/pricing" ],
    "actions" : [ "sign-in" ],
    "screen_names" : [ "main" ],
    "user_ids" : [ "63826" ]
  } ],
  "total" : 1298
}
Ответ 400
json :
{
  "error" : "limit cannot be lower than 0"
}
Ответ 401
json :
{
  "error" : "unauthenticated for invalid credentials"
}
Ответ 429
json :
{
  "error" : "request with this token already running"
}
Ответ default
json :
{
  "error" : "gateway timeout"
}

Определения

Session

Имя Описание Схема
client_id
обязательно
ga_clientID посетителя
Пример : "123456789.123456789"
string
session_count
обязательно
Порядковый номер сессии посетителя
Пример : 29
integer
date
обязательно
Дата сессии
Пример : "2018-10-03"
string (date)
source_medium
обязательно
Источник и канал, по которому пришел посетитель
Пример : "google / cpc"
string
real_source_medium
обязательно
Источник и канал, по которому пришел посетитель (это поле равно source_medium или содержит (direct) / (none) если текущая сессия на самом деле является продолжением предыдущей)
Пример : "google / cpc"
string
campaign
обязательно
Рекламная кампания, по которой пришел посетитель (в случае отсутствия — "")
Пример : "retargeting-display"
string
campaign_type
обязательно
Тип рекламной кампания, по которой пришел посетитель (в случае отсутствия — "(no campaigns)")
Пример : "search brand"
string
keyword
обязательно
Ключевое слово, по которому пришел посетитель (в случае отсутствия — "")
Пример : "+скачать +без +регистрации +и +смс"
string
channel_group
обязательно
Источники попадания посетителей на сайт, сгруппированные по настраиваемым правилам Rick.ai
Пример : "Google Adwords"
string
channel_type
обязательно
Группировка каналов в завимости от того, платили мы за размещение на нем или нет
Пример : "paid"
enum (free, paid, email)
country
обязательно
Страна посетителя
Пример : "Russia"
string
region
обязательно
Регион посетителя
Пример : "Voronezh Oblast"
string
city
обязательно
Город посетителя
Пример : "Voronezh"
string
browser
обязательно
Браузер посетителя
Пример : "Chrome"
string
browser_version
обязательно
Версия браузера посетителя
Пример : "69.0.3497.100"
string
operating_system
обязательно
Операционная система посетителя
Пример : "Android"
string
device_category
обязательно
Тип устройства, с которого осуществлялась сессия
Пример : "tablet"
string
screen_resolution
обязательно
Разрешение экрана устройства, с которого осуществлялась сессия
Пример : "601x962"
string
app_version
обязательно
Версия приложения (в случае веб аналитики значение равно "")
Пример : "1.0.12"
string
mobile_device_info
обязательно
Информация о мобильном устройстве, с которого осуществлялась сессия
Пример : "Samsung SM-T285 Galaxy Tab A 7.0 LTE"
string
landing_page_path
обязательно
Страница, с которой посетитель начал сессию
Пример : "/featured/"
string
initial_landing_page_path
обязательно
Страница, с которой посетитель начал сессию (содержит изначальную страницу сессии, если текущая сессия на самом деле является продолжением предыдущей)
Пример : "/pricing/"
string
hostname
обязательно
Домен, на котором счётчиком GA зарегистрирована сессия
Пример : "rick.ai"
string
ad_content
обязательно
Описание из рекламного объявления, по которому пришел посетитель (соответствует ga:adContent)
Пример : "Ретаргетинг 10% скидка"
string
channel_grouping
обязательно
Группировка канала, по которому пришел посетитель, в GA (соответствует ga:channelGrouping)
Пример : "Ретаргетинг кампании"
string
acq_cost
обязательно
Стоимость привлечения посетителя в сессию
Пример : 16.87
number (double)
revenue
обязательно
Суммарный доход всех транзакций (заказов или заявок) в сессии (на момент совершения запроса)
Пример : 600.0
number (double)
transactions
обязательно
Детализация транзакций (заказов или заявок), совершенных в сессию
Пример : [ "[transaction](#transaction)" ]
< Transaction > array
page_paths
обязательно
Список ga:pagePath сессии, по которым настроена какая-либо метрика
Пример : [ "/pricing" ]
< string > array
actions
обязательно
Список ga:eventAction сессии, по которым настроена какая-либо метрика
Пример : [ "sign-in" ]
< string > array
screen_names
обязательно
Список ga:screenName сессии, по которым настроена какая-либо метрика
Пример : [ "main" ]
< string > array
user_ids
обязательно
Список userID, которые были ассоциированы с сессией (через ga:dimensionXX в GA или поле user_id в транзакции)
Пример : [ "63826" ]
< string > array

Transaction

Имя Описание Схема
transaction_id
обязательно
Идентификатор транзакции
Пример : "HGJES-673"
string
status
обязательно
Статус транзакции (на момент совершения запроса)
Пример : "Оплачено"
string
deal_source
обязательно
Источник транзакции, если был указан
Пример : "jivosite"
string
revenue
обязательно
Фактический доход транзакции (на момент совершения запроса)
Пример : 600.0
number (double)
grossprofit
обязательно
Прибыль по транзакции, если была указана (на момент совершения запроса)
Пример : 400.0
number (double)
products
обязательно
Список продуктов в транзакции, если был указан (на момент совершения запроса)
Пример : [ "[product](#product)" ]
< Product > array
status_history
обязательно
История изменения статуса транзакции
Пример : [ "[transactionstatus](#transactionstatus)" ]
< TransactionStatus > array

Product

Имя Описание Схема
sku
обязательно
SKU товара (в случае отсутствия — "")
Пример : "SUB-MONTH"
string
name
обязательно
Наименование товара
Пример : "Подписка (1 месяц)"
string
category
обязательно
Категория товара (в случае отсутствия — "")
Пример : "Подписка"
string
price
обязательно
Цена товара
Пример : 600.0
number (double)
quantity
обязательно
Количество товаров данной позиции в транзакции
Пример : 1
integer

TransactionStatus

Имя Описание Схема
status
обязательно
Статус транзакции (на момент date)
Пример : "Оплачено"
string
date
обязательно
Дата изменения статуса транзакции (на status)
Пример : "2018-10-03"
string (date)

Sessions

Имя Описание Схема
items
обязательно
Данные сессий
Пример : [ "[session](#session)" ]
< Session > array
total
обязательно
Общее количество сессий за выбранный диапазон дат
Пример : 1298
integer

Error

Имя Описание Схема
error
обязательно
Подробности ошибки
Пример : "gateway timeout"
string

Безопасность

ApiToken

Тип : apiKey
Имя : Rick-Auth-Token
Содержится в : HEADER