Protocol Documentation

Table of Contents

training/access.proto

Top

FieldTypeLabelDescription
id string

идентификатор ссылки

promo_code string

исходный промокод

profile_id string

идентификатор профиля

BonusReply

FieldTypeLabelDescription
message string

тексовый результат опреации

BonusRequest

Объект запроса изменения возраста

FieldTypeLabelDescription
bonus_id string

идентификатор игры (он же будет идентификатором транзакции)

instance_id string

идентификатор бэка (api url)

client_id ClientId

Вариант идентификации клиента

rejuvenation_days int32

на сколько поменять возраст

skllzz_delta double

на сколько поменять баланс skllzz

description string

описание

ChartData

набор строк для конкретного графика view

FieldTypeLabelDescription
rows ChartRow repeated

ChartLayoutData

описание раскладки графиков

FieldTypeLabelDescription
id string

id раскладки

columns int32

колонок в раскладке

rows int32

строк в раскладке

views ChartLayoutData.ViewsEntry repeated

Вьюхи внутри раскладки

ChartLayoutData.ViewsEntry

FieldTypeLabelDescription
key string

value ChartView

ChartLayoutRequest

FieldTypeLabelDescription
id string

id раскладки

namespace string

неймспейс раскладки

ChartRow

FieldTypeLabelDescription
name string

участник

rank int32

позиция

skllzz double

заработано skllzz

ChartView

описание конкретного графика

FieldTypeLabelDescription
id string

id чарта (он же id группы)

layout_id string

id чарта

namespace string

неймспейс вьюхи

column int32

колонока внутри раскладки

row int32

строка внутри раскладки

width int32

ширина вьюхи в ячейках (0 - авто)

height int32

высота вьюхи в ячейках (0 - авто)

title string

заголовок чарта

ClientId

FieldTypeLabelDescription
phone string

номеру телефона

uid string

firebase uid

optional_info ClientOptionalInfo

опциональные данные чтобы при необходимости обновить профиль на стороне приложения

ClientOptionalInfo

FieldTypeLabelDescription
name string

nickname string

phone string

FieldTypeLabelDescription
prefix string

long_url string

short_url string

ImOkResult

FieldTypeLabelDescription
current IamOk

last IamOk

StepResult

FieldTypeLabelDescription
steps int32

Сколько шагов за этот интервал

start_millis int64

начало интервала

duration int64

продолжительность интервала в милисекундах на котором есть шаги

day_steps int32

Сколько шагов за этот день

step_source string repeated

список устройств с которых получены шаги

TrainingRequest

Объект запроса тренировки

FieldTypeLabelDescription
id ClientId

Вариант идентификации клиента

start_millis int64

начало запрашиваемого интервала

stop_millis int64

окончание запрашиваемого интервала

max_millis int64

максимальное время тренировочного окна

step_day int32

запрос шагов за день

TrainingResult

FieldTypeLabelDescription
skllzz double

Сколько заработано SKLLZZ

start_millis int64

начало найденой тренировки

stop_millis int64

окончание найденой тренировки

TrainingAccess

доступ к данным о результатах тренировок

Method NameRequest TypeResponse TypeDescription
GetMinedSkllzz TrainingRequest TrainingResult

Запрашивает обобщенные данные о тренировке в интервале времени по пользователю

GetImOkStatus ClientId ImOkResult

Запрашивает данные о текущем и предыдущем интервалах imok

GetStepsTotal TrainingRequest StepResult

Запрашивает обобщенные данные о количестве шагов в интервале времени

GetStepDetail TrainingRequest StepResult stream

Запрашивает детализированные данные о количестве шагов в интервале времени

GetTrainingSessions TrainingRequest TrainingSession stream

Запрашивает список тренировок в заданном интервале

GetProfileData ClientId Profile

Запрашивает данные по профилю

ApplyBonus BonusRequest BonusReply

Применяет бонус к игроку

GetAdoptedBotLinkData AdoptedBotLink AdoptedBotLink

Запрашивает данные по адаптивной ссылке перехода в бот

GetDeepLink DeepLink DeepLink

Создает диплинк

GetChartLayout ChartLayoutRequest ChartLayoutData stream

Запрашивает данные раскладки для построения чарта

GetChartData ChartView ChartData stream

Запрашивает данные раскладки для построения чарта

training/sync.proto

Top

AvatarId

FieldTypeLabelDescription
url string

адрес картинки

AvatarImage

FieldTypeLabelDescription
data bytes

данные картинки (png,jpg)

Connection

FieldTypeLabelDescription
timout_millis int32

время ожидания возврата, если 0 то по умолчанию

can_upgrade bool

возможность обновиться

GadgetLinkRequest

FieldTypeLabelDescription
unlink bool

в случае запроса удаления связи

vendor GadgetVendor

производитель гаджета

GadgetLinkResponse

FieldTypeLabelDescription
url string

адрес ссылки для перехода

GarminAuthResponse

FieldTypeLabelDescription
url string

адрес ссылки для перехода

GarminLinkRequest

FieldTypeLabelDescription
unlink bool

в случае запроса удаления связи

LinkRequest

FieldTypeLabelDescription
token string

токен связывания номера

code string

код подтверждения введенный пользователем (требуется в ConfirmRequest)

LogEntry

FieldTypeLabelDescription
id string

staml_millis int64

tag string

dump string

Number

FieldTypeLabelDescription
phone string

номер телефона

use_tg bool

использовать телеграм для подтверждения номера

use_callerid bool

использовать звонок на номер для подтверждения номера

PolarAuthResponse

FieldTypeLabelDescription
url string

адрес ссылки для перехода

PolarLinkRequest

FieldTypeLabelDescription
unlink bool

в случае запроса удаления связи

PushId

FieldTypeLabelDescription
token string

Token

FieldTypeLabelDescription
value string

GadgetVendor

NameNumberDescription
unknown 0

garmin 1

polar 2

suunto 3

fitbit 4

elari 5

PreAuth

Method NameRequest TypeResponse TypeDescription
MapAccount Token Token

Возвращает фактический токен для входа на основании текущей авторизации

VkAccount Token Token

TrainingProfile

Method NameRequest TypeResponse TypeDescription
Update Profile Profile

Обновляет данные профиля (принимаются поля name,nick_name,email,birth_date)

MonitorProfile Profile Profile stream

Возвращает данные профиля и продолжает отдавать их в случае изменения (на входе можно передать пустую структуру)

LinkNumber Number LinkRequest

Создание запроса на связь с номером

UnlinkNumber Number Number

Удаление номера из профиля

ConfirmRequest LinkRequest LinkRequest

Подтверждение номера поле LinkRequest.code обязательно. В случае успеха из любых других профилей этот номер удаляется.

LinkPushId PushId PushId

Связка с PushId

UploadAvatar AvatarImage AvatarId

Загрузка аватарки

AddPurchase Purchase Purchase

Добавление покупки в профиль

DeleteProfile Profile Profile

Удаление профиля

TrainingProvider

Method NameRequest TypeResponse TypeDescription
LinkGarmin GarminLinkRequest GarminAuthResponse

Запрос на создание (удаления) связки с garmin !!! DEPRECATED use LinkGadget

LinkPolar PolarLinkRequest PolarAuthResponse

Запрос на создание (удаления) связки с polar !!! DEPRECATED use LinkGadget

LinkGadget GadgetLinkRequest GadgetLinkResponse

Запрос на создание (удаления) связки с API гаджетов (garmin,polar и т.д)

TrainingSync

Method NameRequest TypeResponse TypeDescription
UpdateSession TrainingSession TrainingSession

Обновляет данные о тренировочной сессии и возвращает в ответе только TrainingSession.sync_millis как время синхронизации этой сессии

UpdateSessionDesign TrainingDesign TrainingDesign

Обновляет не тренировочные данные

UpdateSessionWithDetails TrainingSession TrainingSession

Обновляет данные о тренировочной сессии (включая детализацию hr) и возвращает в ответе только TrainingSession.sync_millis как время синхронизации этой сессии

UpdateSteps StepsData stream StepsData

Отправляет данные о шагах и возвращает в ответе только StepsData.sync_millis как время синхронизации этих точек

MonitorSession TrainingSession TrainingSession stream

Возвращает сессии с отметкой синхронизации позже чем TrainingSession.sync_millis, и ждет их появления новых если в заголовке отсутствует NOWAIT

MonitorSessionWithDetails TrainingSession TrainingSession stream

Возвращает сессии с деталями по шагам или hr с отметкой синхронизации позже чем TrainingSession.sync_millis, и ждет их появления новых если в заголовке отсутствует NOWAIT

FetchData TrainingData TrainingData stream

Получает поток данными в сессии TrainingData.session_id и отметкой синхронизации позже чем TrainingData.sync_millis

MonitorSteps StepsData StepsData stream

Получает поток данными c шагами чья отметка синхронизации позже чем StepsData.sync_millis

Online Connection Connection

Метод используется для активного мониторинга подключения

OnlineStream Connection Connection stream

Метод используется для активного мониторинга подключения к API и по сути возвращает одно значение в потоке и впадает в бесконечное ожидание

SendLog LogEntry Empty

Метод для отправки логов

sync/journal.proto

Top

JournalItem

FieldTypeLabelDescription
type string

тип изменяемых данных

seq_no int64

порядковый номер изменения

stamp_millis int64

epoch millis с отметкой о моменте этих изменений

id string

уникальный идентификатор элемента

data bytes

сериализованные данные изменения с типом type, nil если запись сообщает об удалении объекта

ttl_seconds int64

время жизни объекта в секундах, 0 если время жизни не ограничено

game/league.proto

Top

LeagueGroup

группа предложений для вступления в лигу

FieldTypeLabelDescription
id string

уникальный идентификатор группы

parent_id string

идентификатор родительской группы

name LeagueGroup.NameEntry repeated

название группы с учетом локализации

LeagueGroup.NameEntry

FieldTypeLabelDescription
key string

value string

LeagueOffer

предложение для вступления в лигу

FieldTypeLabelDescription
id string

идентификатор предложения

group_id string

группа предложений

locale string

ограничение по локали (если пусто то для всех)

name string

название лиги с учетом локализации

url string

диплинк для вступления тоже с учетом локализации

description string

описание лиги с учетом локализации

private bool

вступить в лигу можно только по пригласительной ссылке, не по кнопке

image_url string

картинка для лиги

LeaguesOffer

FieldTypeLabelDescription
groups LeagueGroup repeated

leagues LeagueOffer repeated

version int64

LeagueShelf

Сервис получения данных о доступных соревнованиях и лигах

Method NameRequest TypeResponse TypeDescription
MonitorOffer LeaguesOffer LeaguesOffer stream

Получает поток данными c блоком всех соревнований с версией старше LeaguesOffer.version и ждет изменений если в заголовке отсутствует NOWAIT

game/shelf.proto

Top

ArtifactShelf

Сервис управления личными артефактами

Method NameRequest TypeResponse TypeDescription
MonitorShelf Shelf Shelf stream

Получает поток данными c доступными артефактами с моментом синхронизации позже чем Shelf.sync_millis и ждет изменений если в заголовке отсутствует NOWAIT

AddToShelf Application Application

Добавляем на полку артефакт (проводим транзакцию покупки)

UseFromShelf Application Application

Используем артефакта

game/tasks.proto

Top

Game

Блок метаинформации по конкретному состоянию игры

FieldTypeLabelDescription
id string

уникальный идентификатор конкретной игры

game_id string

идентификатор исходной игры (код скрипта)

client_id string

идентификатор клиента с которым связана игра

created int64

UTC в секундах момента создания игры

active bool

признак активной игры

runner_id string

идентификатор инстанса выполняющего игру

GameVM

Информация инстансу выполняющему игру

FieldTypeLabelDescription
id string

уникальный идентификатор инстанса

heartbeat int64

UTC в секундах последнего времени жизни инстанса

Task

FieldTypeLabelDescription
id string

идентификатор задачи

schedule int64

UTC в секундах на начало запланированого выполнения

duration int64

длительность в секундах времени на выполнение (0 если без ограниччения)

TaskHolder

FieldTypeLabelDescription
t Task

идентификатор задания

management/client.proto

Top

ClientTransaction

FieldTypeLabelDescription
profile_id string

идентификатор клиента

transaction TransactionDetails

данные по транзакции

ProfileTestMode

FieldTypeLabelDescription
profile_id string

идентификатор клиента

test_mode bool

значение признака тестировщика

TrainingHistoryRequest

FieldTypeLabelDescription
id string

Вариант идентификации клиента

from_stamp int64

время крайней первой тренировки (двигаемся от новых к старым)

to_stamp int64

время крайней последней тренировки (двигаемся от новых к старым)

count int32

число запрашиваемых операций для отображения

TransactionHistoryRequest

Запрос информации по операциям пополнения/списания skllzz

FieldTypeLabelDescription
profile_id string

идентификатор клиента

from_stamp int64

время крайней транзакции (двигаемся от новых к старым)

count int32

число запрашиваемых операций для отображения

ClientManagement

Сервис управления пространством. Вызовы в методы данного сервиса должны авторизоваться токеном полученым из SpaceAccess.Auth

Method NameRequest TypeResponse TypeDescription
Monitor Profile Profile stream

запрос данных по клиенту в режиме стриминга (только для роли CLIENT_VIEW)

List QueryFilter Profile stream

запрос списка клиентов по фильтру (только для роли CLIENT_VIEW)

Transactions TransactionHistoryRequest TransactionDetails stream

запрос истории транзакйи по клиенту

ApplyTransaction ClientTransaction TransactionDetails

применить транзакцию к клиенту

TrainingList TrainingHistoryRequest TrainingSession stream

запрос тренировок по фильтрам

MonitorSession TrainingSession TrainingSession stream

Отслеживание отдельно взятой сессии активности (на входе важно только id и profile_id)

Training TrainingSession TrainingData stream

данные конкретной тренировки

ReevaluateTraining TrainingSession TrainingSession

запрос на пересчет конкретной тренировки

Steps TrainingSession StepsData stream

данные о шагах внутри сессии (по сути выгрузка шагов в нитервал начала и конца сессии)

SetProfileTestMode ProfileTestMode Profile

управление флагом тестового аккаунта у профиля

management/script.proto

Top

DataBlock

FieldTypeLabelDescription
data bytes

данные скрипта

Script

FieldTypeLabelDescription
name string

идентификатор (имя) скрипта

description string

Описание скрипта

created_millis int64

время создания скрипта в милисекундах

modified_millis int64

время последней модификации скрипта в милисекундах

deleted bool

признак удаления

ScriptManagement

Сервис управления skllzz скриптами. Вызовы в методы данного сервиса должны авторизоваться токеном полученым из SpaceAccess.Auth

Method NameRequest TypeResponse TypeDescription
MonitorScripts QueryFilter Script stream

получает список скриптов из библиотеки и мониторит их

DeleteScript Script Script

Удаляет скрипт из библиотеки скриптов

UpdateScript Script Script

Создает или обновляет данные по скрипту

WriteScript DataBlock stream Script

name передается в соответсвующем поле metadata через metadata.AppendToOutgoingContext(context.Background(), "script-name", script.Name)

ReadScript Script DataBlock stream

читает содержимое скрипта

management/space.proto

Top

InviteTicket

FieldTypeLabelDescription
id string

идентификатор тикета

space_id string

идентификатор пространства

template Manager

Шаблон прав пользователя (используется только role и name)

Manager

Менеджер/Сотрудника который работает с админкой

FieldTypeLabelDescription
id string

Идентификатор сотрудника (или билета)

name string

Имя сотрудника

role SpaceRole repeated

Роли сотрудника

template bool

Шаблон сотрудника (фактически билет)

deleted bool

признак удаления

Space

Идентификатор и свойства пространства к которому могут быть приписаны клиенты, скрипты и т.д. (например клуб)

FieldTypeLabelDescription
id string

идентификатор пространства

name string

название пространства

deleted bool

признак удаления

SpaceAuthorization

Токен авторизации для текущего клиента с набором всех прав которые у него есть в запрашиваемом спейсе

FieldTypeLabelDescription
token string

JWT custom auth

relogin bool

Признак того что нужно полностью перелогинить юзера так как у него поменялсись права

roles SpaceRole repeated

список доступных ролей для пространства

space_id string

SpaceRole

NameNumberDescription
ACCESS 0

доступ к пространству как таковому

CLIENT_VIEW 1

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

CLIENT_EDIT 2

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

MANAGER_VIEW 3

Просмотр сотрудников в пространстве

MANAGER_ROLES 4

Управление ролями сотрудников в пространстве, возможность пригласить новых участников

SPACE_MANAGE 5

Управление пространствами (просмотр, создание, удаление редактирование)

SPACE_INVITE 6

Возможность пригласить в пространство (создать билет)

POS_VIEW 7

Возможность смотреть POS ID в пространстве

POS_MANAGE 8

Возможность управлять POS ID в пространстве

TRANSACTIONS_VIEW 9

Возможность смотреть операции клиентов в пространстве

TRANSACTIONS_APPLY 10

Возможность создавать и изменять транзакции клиентов в пространстве

SCRIPT_VIEW 11

Возможность получить список скриптов

SCRIPT_READ 12

Возможность получить содержимое скрипта

SCRIPT_EDIT 13

Возможность править существующие и создавать новые скрипты

CLIENT_IMPERSONATE 14

Возможность получать токены авторизации от имени клиента

SpaceAccess

Сервис доступа к пространствами

Method NameRequest TypeResponse TypeDescription
Auth Space SpaceAuthorization stream

запрос токена авторизации в указанном пространстве и правами в нем (изменится в потоке если текущие права поменяются) данный токен требуется для доступа к Management server

Enumerate QueryFilter Space stream

Возвращает список сайтов доступных пользователю

Monitor QueryFilter Space stream

Мониторит список сайтов доступных пользователю и присылает обновления в режиме подписки

Join InviteTicket InviteTicket

Присоединяется к пространству на основании предоставленого билета. На входе важно только InviteTicket.id. Возвращает тикет с данными по менеджеру. После чего тикет становится более не действиетельным

SpaceManagement

Сервис управления пространством. Вызовы в методы данного сервиса должны авторизоваться токеном полученым из SpaceAccess.Auth

Method NameRequest TypeResponse TypeDescription
ListSpace QueryFilter Space stream

запрос списка пространств в режиме подписки (только для роли SPACE_MANAGE)

UpdateSpace Space Space

обновление данных о пространстве (только для роли SPACE_MANAGE)

ListManager QueryFilter Manager stream

запрос списка сотрудников и билетов в пространстве (только для роли SPACE_MANAGE)

UpdateManager Manager Manager

изменение данных по сотруднику, включая список ролей в пространстве

DeleteManager Manager Manager

удаляет данных о сотруднике или билете

Invite Manager InviteTicket

Создает билет для приглашания в пространство нового сотрудника с заданными в Manager.role правами

management/search.proto

Top

AllItems

Пустой объект показывающий что запрос идет без фильрации

QueryFilter

Запрос на поиск

FieldTypeLabelDescription
search string

строка поиска

limit int32

максимально число результатов в ответе, если 0 то по умолчанию

management/integration.proto

Top

TelegramBot

Идентификатор и свойства телеграм бота

FieldTypeLabelDescription
id string

идентификатор бота

name string

название бота

description string

Описание бота

key string

ключ бота

space_id string

идентификатор простаранства для работы скриптов

script_name string

имя скрипта в пространстве для запуска для каждого нового клиента

last_modified int64

время последней можификации

deleted bool

признак удаления

management/retail.proto

Top

Coverage

Зона покрытия

FieldTypeLabelDescription
id string

идентификатор зоны покрытия

name string

название зоны

notes string

заметки по зоне

last_modified int64

время последнего изменения (для синхронизации)

club_id string

принадлежность к клубу

deleted bool

признак удаления

GeoJson

FieldTypeLabelDescription
id string

идентификатор геометрии покрытия

data bytes

содержимое GeoJSON в кординатах EPSG:4326 - WGS 84

club_id string

принадлежность к клубу

MarketOp

Данные об операции в маркете на уровне клуба

FieldTypeLabelDescription
id string

уникальный идентификатор транзакции

stamp google.protobuf.Timestamp

Дата и время операции

profile Profile

полные данные данные о профиле покупателя

pos Pos

полные данные данные о точки продаж

promo_code string

промокод

description string

описание операции

skllzz_charge float

списано скилз

Pos

Идентификатор и свойства точки продаж

FieldTypeLabelDescription
id string

идентификатор точки продаж

name string

название точки (Будет видна в выписке приложения)

notes string

заметки для администратора

valid_from int64

epoch seconds с которого разрешены операции по точке (0 если без ограничений)

valid_until int64

epoch seconds до которого разрешены операции по точке (0 если без ограничений)

last_access int64

время последней операции с точкой продаж (0 если операций пока небыло)

last_modified int64

время последнего изменения (для синхронизации)

location LatLng

Deprecated. положение на карте

address string

Deprecated. фактический адрес точки продаж

show_map bool

Deprecated. показывать ли на карте

show bool

показывать ли на карте или в списке online предложений

created int64

время создания epoch millis

site string

адрес сайта компании для допинформации

max_limit float

максимальная сумма операции в skllzz за раз

active bool

разрешен к использованию

pro_only bool

доступен только для pro

category PosCategory

категория точки

online OnlineDetails

offline OfflineDetails

absolute_offer AbsoluteOffer

абсолютная (в рублях)

relative_offer RelativeOffer

относительная (в процентах)

logo string

url для jpg/png картинки с логотипом

branding Branding

настройки брендинга точки

is_group bool

признак что это группа объектов

parent_pos_id string

принадлежность к группе (ссылка на родительский pos)

priority int32

приоритет на витрине

club_id string

принадлежность к клубу

visibility_restriction VisibilityRestriction

ограничения видимости объекта

is_empty bool

признак что товар на точке временно закончился

in_cities_id string

id списка городов присутствия (если пусто то без ограничений)

deleted bool

признак удаления

Fields with deprecated option

Name Option
location

true

address

true

show_map

true

PosHistoryRequest

Запрос информации по операциям пополнения/списания skllzz

FieldTypeLabelDescription
id string

идентификатор точки (не путать с токеном posid)

from_stamp int64

время крайней операции (двигаемся от новых к старым)

count int32

число запрашиваемых операций для отображения

PosManagement

Сервис управления точками продаж. Вызовы в методы данного сервиса должны авторизоваться токеном полученым из SpaceAccess.Auth

Method NameRequest TypeResponse TypeDescription
List QueryFilter Pos stream

получает список точек продаж

MonitorSingle Pos Pos stream

Мониторит конкретную точку по ее Pos.id

Delete Pos Pos

Удаляет точку продаж

Update Pos Pos

Создает или обновляет данные по точке продаж

ResetLicense Pos Pos

Сброс привязки лицензии на клиентской стороне

Transactions PosHistoryRequest ClientTransaction stream

запрос истории операций по точке продаж

UploadPromoCodes PromoCodes UploadResult

Загрузка промокодов

RoiManagement

Сервис управления ROI (region of interest)

Method NameRequest TypeResponse TypeDescription
Upload GeoJson GeoJson

Загружает GeoJson как ROI для покрытия

Update Coverage Coverage

Создает или обновляет данные по покрытию

Monitor AllItems Coverage stream

мониторит список покрытия

List QueryFilter Coverage stream

получает список покрытия

MonitorCoverage Coverage RoiDetails stream

Мониторит области инетеса в заданно м покрытии

tgaccount/chats.proto

Top

AuthState

FieldTypeLabelDescription
state AuthState.State

Состояние авторизации телеграм аккаунта

ChatConfig

FieldTypeLabelDescription
title string

заголовок чата

description string

описание чата

members string repeated

@id участников которрых пригласить в чат (пока не реализовано)

CredentialData

FieldTypeLabelDescription
data string

данные jpg/png

None

AuthState.State

Состояние авторизации телеграм аккаунта

NameNumberDescription
unknown 0

состояние не определено

wait_phone 1

ожидание номера телефона

wait_password 2

ожидание пароля

wait_code 3

ожидание кода подтверждения

ready 4

Chats

Сервис для работы с чатами

Method NameRequest TypeResponse TypeDescription
Create ChatConfig CredentialData

Login

Сервис для авторизации телеграм аккаунта

Method NameRequest TypeResponse TypeDescription
SetPhone CredentialData None

передать номер телефона для авторизации

SetPassword CredentialData None

передать пароль для авторизации

SetCode CredentialData None

передать код подтверждения для авторизации

GetState None AuthState stream

получить состояние авторизации

common/purchase.proto

Top

Purchase

FieldTypeLabelDescription
purchase_id string

product_id string

source string

app_id string

data string

common/fundraising.proto

Top

Fund

FieldTypeLabelDescription
id string

идентификатор фонда

club_id string

идентификатор клуба владельца

rules Fund.Rules

правила и метаданные фонда

media Fund.Media

элементы оформления

public bool

показывать на витрине клуба

priority int32

приоритет при отображении в списке (чем выше число тем ближе к началу списка)

sub_fund_id string repeated

связанные фонды

parent_fund_id string

родительский фонд

show_child_if_has_parent bool

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

in_cities_id string

опциональный идентификатор списка городов

share_link_url string

ссылка чтобы поделиться фондом

timezone string

временная зона по которой считать полные дни (требуется в ряде рейтингов)

project AgreementProject

проект согласий

deleted bool

признак удаления

Fund.Goal

FieldTypeLabelDescription
value double

значение цели

description string

Fund.Media

FieldTypeLabelDescription
photo_url string

картинка к элементу

logo_url string

логотип к элементу

chat_url string

связанный чат

promo_url string

внешний ресурс посвященный фонду

photo_align ImageAlign

выравнивание картинки к элементу

Fund.Rules

FieldTypeLabelDescription
name string

название фонда название фонда

description string

детальное описание цели сбора средств, поддержка markdown

start_seconds int64

точное время начала сбора средств в epoch seconds

stop_seconds int64

точное время окончания сбора средств в epoch seconds (исключительно)

pay_range IntRange

допустимый диапазон взносов (включительно). (0 - означает отсутствие огранияения)

predefined_pay_amount float repeated

опционально предопределенный перечень размера взносов

max_pay_per_person float

максимальная сумма взноса от одного человека (0 - нет ограничения)

goal Fund.Goal repeated

цели (если есть)

promo_only bool

признак что является только промо блоком (рекламой) и не принимает взносы

mode Fund.Mode

режим пополнения

rate double

множитель результата пересчета взносов для турнирных таблиц (0 - по умолчанию без пересчета)

FundBank

данные о текущих финансовых показателях фонда

FieldTypeLabelDescription
id string

идентификатор фонда

raised_total double

общая сумма собранных средств

ops_count int64

общее количество операций

participant_count int64

общее количество участников

rated_total double

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

stamp_seconds int64

отметка времени в unix epoch seconds

history FundBank repeated

исторические данные

deleted bool

признак удаления

FundChangesRequest

история озменения в фонде с точки зрения профиля

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

fund_id string

идентификатор сбора средств

FundRank

данные о позиции фонда в турнирной таблице

FieldTypeLabelDescription
id string

идентификатор фонда

rank int32

позиция в рейтинге

raised_total double

общая сумма собранных средств

rated_total double

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

ops_count int64

общее количество операций

participant_count int64

общее количество участников

name string

название фонда (для быстрого доступа)

description string

описание фонда (для быстрого доступа)

media Fund.Media

элементы оформления (для быстрого доступа)

FundScope

FieldTypeLabelDescription
club_id string

код клуба

fund_id string

идентификатор фонда

FundSubscription

FieldTypeLabelDescription
fund_id string

идентификатор фонда

stamp_millis int64

out: время с которого оформлена подписка

mode FundSubscription.Mode

режим участияд в фонде

use_millis int64

out: время последнего использования фонда (пополнения)

FundSyncRequest

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

fund_id string

идентификатор сбора средств

ReplenishFundRecord

запись об операция пополнения фонда

FieldTypeLabelDescription
id string

идентификатор операции (назначается автоматичекси)

fund_id string

идентификатор фонда

profile_id string

идентификатор пользователя (выставляется из авторизации)

amount float

сумма взноса

comments string

произвольный комментарий/пожелание

stamp_seconds int64

отметка времени операции epoch seconds

mode Fund.Mode

режим пополнения

rated_amount double

сумма пополнения с учетом взвешивающего коэффициента в фонде

group_id string

out: идентификатор группы транзакций

is_primary bool

out: признак первичной транзакции

ReplenishOpsRange

FieldTypeLabelDescription
fund_id string

код фонда

epoch_second_from int64

начало диапазона (включительно, если 0 то с самого начала)

epoch_second_until int64

конец диапазона (исключительно, если 0 то без ограничений )

SubFundsRank

данные о текущих ретинге дочерних фондов

FieldTypeLabelDescription
id string

идентификатор родительского фонда

subfunds FundRank repeated

данные по дочерним фондам

raised_total double

общая сумма собранных средств на этом уровне

rated_total double

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

ops_count int64

общее количество операций

participant_count int64

общее количество участников

state_id string

уникальный ключ состояния

stamp_millis int64

время обновления

fund Fund

данные по самому фонду

deleted bool

признак удаления

Fund.Mode

NameNumberDescription
manual 0

ручное пополнение

auto 1

автоматическое пополнене

FundChangesRequest.Type

NameNumberDescription
unknown 0

replenish_info 1

информация о пополнении фонда ReplenishFundRecord

FundSubscription.Mode

NameNumberDescription
contributor 0

участник фонда

viewer 1

наблюдатель за фондом

nonparticipant 2

не участник фонда (отключение любой другой роли, отписка от фонда)

FundSyncRequest.Type

NameNumberDescription
unknown 0

fund_info 1

информация о сборе средств Fund

bank_info 2

информация о результатах сбора FundBank

rank_info 3

информация о рейтинге дочерних фондов SubFundsRank

common/annotations.proto

Top

TokenPermission

NameNumberDescription
unspecified 0

lk_view 1

разрешение на доступ к данным в лк

lk_edit 2

разрешение на изменение данных в лк

activity_view 3

разрешение на доступ к данным личной активности

activity_edit 4

разрешение на изменение данных личной активности

access_grant_apps 5

разрешение на предоставление доступа сторонним приложениям

payment_aprove 6

разрешение на подтверждение платежей от имени пользователя

File-level Extensions

ExtensionTypeBaseNumberDescription
scope_name string .google.protobuf.EnumValueOptions 51000

связанное имя скопа

searchable bool .google.protobuf.FieldOptions 50001

признак индексируемого поля в algolia

transient bool .google.protobuf.FieldOptions 50002

игнорировать поле при сохранении в слое бд

method_no_auth_required bool .google.protobuf.MethodOptions 50105

method_permissions TokenPermission .google.protobuf.MethodOptions 50106

требуемые права на уровне сервиса

service_no_auth_required bool .google.protobuf.ServiceOptions 50005

отключает проверку прав доступа на уровне всего сервиса

service_permissions TokenPermission .google.protobuf.ServiceOptions 50006

требуемые права на уровне сервиса

common/extauth.proto

Top

ExtAuthState

структура запроса внешней авторизации

FieldTypeLabelDescription
id string

uid запроса (его можно передавать в state)

vendor RequireExtAuth.Type

тип вендора

name string

Название вендора

logo_url string

Лого вендора

auth_url string

ссылка для перехода на авторизацию

profile_id string

идентификатор связываемого профиля

ExternalAccountAttrs

FieldTypeLabelDescription
id string

id аккаунта

name string

Имя

nick_name string

Никнейм

email string

email

phone string

телефон

confirmed_emails string repeated

подтвержденные email

Данные о связи профиля с внешними учетными данными

FieldTypeLabelDescription
id string

id связи

vendor RequireExtAuth.Type

тип вендора

profile_id string

id профиля

stamp int64

время создания связи в epoch seconds

external_account ExternalAccountAttrs

данные во внешнем аккаунте

RequireExtAuth

FieldTypeLabelDescription
vendor RequireExtAuth.Type repeated

max_age_seconds RequireExtAuth.MaxAgeSecondsEntry repeated

время устаревания связи в секундах по типу (0 - не устаревает)

RequireExtAuth.MaxAgeSecondsEntry

FieldTypeLabelDescription
key string

value int64

RequireExtAuth.Type

NameNumberDescription
Unknown 0

не известный тип (не давать к выбору в UI)

Gosuslugi 1

Госуслуги

Yandex 2

Яндекс

VK 3

ВК

OK 4

Одноклассники

Tinkoff 5

Тинькофф

Sber 6

Сбербанк

Mts 7

МТС

Beeline 8

Билайн

Megafon 9

Мегафон

Telegram 10

Телеграм

RSV 11

Россия Страна Возможностей https://s3-cms.rsv.ru/logo/rsv_app.svg

GPID 12

Газпром ID https://docs.auth.gid.ru/docs/gid/registration/

common/common.proto

Top

AbsoluteOffer

FieldTypeLabelDescription
min float

минимальная сумма скидки

max float

максимальная сумма скидки

currency string

валюта, если пусто то по умолчанию

min_order_amount float

минимальная сумма заказа для скидки

Achievements

FieldTypeLabelDescription
total_skllzz int32

доступно скилз

game_age_days int32

Игровой возраст

iamok_skllzz_earned int32

Набрано скилз в отчетном периоде i am ok

iamok_skllzz_required int32

Требуемый уровень skllzz для нормы i am ok

iamok_start int64

время начала периода i am ok UTC seconds

iamok_duration int64

продолжительность периода i am ok seconds

skllzz_day_limit double

дневной лимит skllzz

iamok_uuid string

идентификатор текущего цикла i am ok (используется в транзакциях)

total_skllzz_earned int32

всего заработано sz на счет за все време

level Level

статусный уровень

artifacts Achievements.ArtifactsEntry repeated

примененные артефакты

Achievements.ArtifactsEntry

FieldTypeLabelDescription
key string

value ActiveArtifact

Branding

FieldTypeLabelDescription
background_color string

primary_color string

secondary_color string

text_color string

DictionaryItem

значение поля из справочника

FieldTypeLabelDescription
id string

идентификатор объекта в справочнике (пусто если значение введено не из справочника)

value string

содержимое объекта

DictionaryValues

Произвольные словари

FieldTypeLabelDescription
id string

Идентификатор словаря

name string

Название словаря

item DictionaryItem repeated

Значения словаря

deleted bool

признак удаленного справочника

Empty

HrDetails

FieldTypeLabelDescription
min_hr sint32

минимальный пульс

avg_hr sint32

средний пульс

max_hr sint32

максимальный пульс

min_hardness double

минимальная нагрузка

avg_hardness double

средняя нагрузка

max_hardness double

максимальная нагрузка

profile Profile

данные профиля на момент тренировки

device string repeated

список устройств с которых была получена тренировка

samples TrainingData repeated

детализация пульса (опционально)

IamOk

Интервал i am ok

FieldTypeLabelDescription
id string

идентификатор интервала

total_skllzz double

доступно скилз на счету на момент закрытия интервала

game_age_days int32

Игровой возраст на момент закрытия интервала

skllzz_earned double

Набрано скилз в отчетном периоде i am ok

skllzz_required double

Требуемый уровень skllzz для нормы i am ok

start_seconds int64

время начала периода i am ok UTC seconds

stop_seconds int64

время завершения периода i am ok UTC seconds

ImageAlign

FieldTypeLabelDescription
vertical float

вертикальное выравнивание (-1 ... +1)

horizontal float

горизонтальное выравнивание (-1 ... +1)

InputDataset

FieldTypeLabelDescription
profile Profile

профиль пользователя

sessions TrainingSession repeated

последовательность активностей в произвольном количестве от 1 до 14 включительно

Int64Range

Интервал 64 битного целого числа

FieldTypeLabelDescription
min int64

минимальное значение

max int64

максимальное значение

IntRange

Интервал целого числа

FieldTypeLabelDescription
min int32

минимальное значение

max int32

максимальное значение

Level

FieldTypeLabelDescription
stage int32

этап

experience int32

опыт на этапе

FieldTypeLabelDescription
url string

ссылка

OfflineDetails

FieldTypeLabelDescription
address string

фактический адрес точки продаж

location LatLng

координаты на карте

qr_link string

адрес ссылки для qr кода на точке

pos_id string

posid для модуля интеграции

license_id string

привязка к клиентской лицензии (id 1C и т.д)

offer string

описание предложения (% скидки и тд)

without_integration bool

не используется интеграция (не выводить текст про сканирование QR и в лк не показывать ничего про qr, table stand и pos id)

OnlineDetails

FieldTypeLabelDescription
price double

стоимость предложения в sz

offer string

описание предложения (% скидки и тд)

coverage_id string

идентификатор зоны покрытия

coverage_name string

закешированое название зоны покрытия

redirect_uri string

опциональный адрес для перехода с заданным промо кодом (в адресе можно использовать подстановку {{.Code}} )

reusable bool

возможность тратить промокод более одного раза

hidden_code bool

скрывать от клиента сам промокод (не показывать и не копировать в буффер)

PathPoint

FieldTypeLabelDescription
timestamp_millis int64

отметка времени epoch millis

latitude double

широта в градусах

longitude double

долгота в градусах

altitude double

высота над уровнем моря в метрах

speed double

скорость м/с

distance double

пройденное расстояние в метрах

Privacy

FieldTypeLabelDescription
hide_step_time bool

сокрытие времени о шагах

hide_workout_time bool

сокрытие времени о тренировках

hide_fittage bool

не публиковать фитвозраст

training_element TrainingSession.Element

что выводить в графике тренировки по умолчанию

training_track_privacy TrainingTrackPrivacy

кому показывать треки в тренировке

Profile

FieldTypeLabelDescription
id string

единый идентификатор

name string

имя

nick_name string

никнейм (для отображения на различных досках)

email string

почта

phone string

телефон (из авторизации)

birth_date int32

epoch day (день с полуночи (00:00:00 UTC) 1 января 1970 года)

hr_rest int32

пульс в состоянии покоя

hr_max int32

максимальный пульс

avatar_url string

идентификатор аватарки загруженый в наше хранилище

sex Sex

пол человека

weight float

вес в кг

height float

рост в метрах

join_stamp int64

Время создания профиля epoch seconds

tester bool

Признак аккаунта тестера (расширеные опции)

version uint32

версия набора полей данных

achievements Achievements

Достижения пользователя

timezone string

часовой пояс пользователя

garmin_access_token string

пользовательский токен доступа к garmin

polar_access_token string

пользовательский токен доступа к polar

suunto_access_token string

пользовательский токен доступа к suunto

fitbit_access_token string

пользовательский токен доступа к fitbit

invite_link string

ссылка для прилгаси друга

lang string

язык в приложении

subscriptions Profile.SubscriptionsEntry repeated

активные подписки клиента

sync_millis int64

время последнего изменения в профиле

require_onboarding bool

новый пользователь, которому можно запустить процесс онбординга в приложении

training_privacy Privacy

режим приватности по умолчанию для тренировок

push_settings PushSettings

настройки уведомлений

personal_goals PersonalGoal repeated

goals_last_update_seconds int64

elari_connected bool

признак подключения источника данных elari

debug_activity bool

признак для записи всех поступающих данных об активности

city string

город интереса

Profile.SubscriptionsEntry

FieldTypeLabelDescription
key string

value bool

ProfileExtension

данные профиля в контексте клуба

FieldTypeLabelDescription
department DictionaryItem

подразделение, отдел и т.д.

address DictionaryItem

произвольный адрес

team DictionaryItem

более мелкое подразделение в компании, можно использовать вместе с department

ProfileExtensionRequirements

FieldTypeLabelDescription
field ProfileExtensionRequirements.Field

ограничиваемое поле

dictionary_id string

значение используемого словаря если поле не допускает произвольного заполнения

label_override string

переопределение стандартного описания поля

optional bool

опциональное поле (не обязательно к заполнению)

order int32

изменение порядка следования полей на форме

hint_override string

подсказка по заполнению поля

field_name string

название поля для отчетов

PromoCode

FieldTypeLabelDescription
code string

промокод

valid_until_epoch int64

время в секундах до которого промокод валиден (0 если без огранияений)

valid_from_epoch int64

время в секундах с которого промокод валиден (0 если без огранияений)

PromoCodes

FieldTypeLabelDescription
pos_id string

идентификатор точки продаж

codes string

промокоды разделенные пробелом табуляцией и прочими разделителями

valid_until_epoch int64

время в секундах до которого промокод валиден (0 если без огранияений)

valid_from_epoch int64

время в секундах с которого промокод валиден (0 если без огранияений)

club_id string

идентификатор клуба точки продаж

Property

FieldTypeLabelDescription
known Property.Known

общеизвестные свойства

custom string

произвольные свойства

string string

int int64

bool bool

float float

PushSettings

FieldTypeLabelDescription
disable_club_notifications bool

запрет сообщения от клуба

disable_feed_notifications bool

запрет уведомлений из ленты

disable_artifacts_notifications bool

запрет уведомлений об артефактах

disable_praise_me_notifications bool

запрет уведомлений с похвалой

disable_blame_me_notifications bool

запрет уведомлений с укором

disable_social_events bool

запрет уведомлений социального характера (приглашения в друзья, соревнования и т.д)

RelativeOffer

FieldTypeLabelDescription
min float

минимальный процент скидки

max float

макимальный процент скидки

currency string

валюта, если пусто то по умолчанию

min_order_amount float

минимальная сумма заказа для скидки

StepDetails

FieldTypeLabelDescription
steps uint32

суммарное количество шагов в этот день

day uint32

эпоходень за который считаются шаги

meters uint32

пройденное расстояние в метрах

movement_factor uint32

показатель подвижности в процентах

samples StepsData repeated

детализация шагов (опционально)

device string repeated

список устройств с которых были получены данные

StepsData

FieldTypeLabelDescription
version uint32

версия набора полей данных

sync_millis int64

время синхронизации

stamp_millis int64

время начала замера шагов

duration int32

длительность интервала замера в миллисекундах

steps int32

Шагов на интервале

source_id string

идентификатор источника (уникален для мобильного телефона)

step_source string repeated

идентификатор источников шагов (названия сенсоров)

TaskDetails

FieldTypeLabelDescription
skllzz double

размер бонуса за задание

description string

описание задания

logo_url string

картинка к заданию

challenge_id string

идентификатор соревнования (если не указан то во все)

TrainingData

FieldTypeLabelDescription
session_id string

уникальный идентификатор сессии

sync_millis int64

время синхронизации

stamp_millis int64

время отсчета этой порции данных

device_id string

идентификатор источника данных

device_name string

название источника данных

hrAvg double

среднее значение пульса на интервале

duration int32

длительность интервала в миллисекундах

skllzz double

баллов за этот интервал

hardness double

уровень нагрузки от 0 до 1 внутри пульсовой зоны клиента

version uint32

версия набора полей данных

profile_id string

идентификатор профиля которому принадлежит тренировка

TrainingDesign

FieldTypeLabelDescription
id string

уникальный идентификатор сессии

description string

Сопроводительный текст (если пусто то не менять)

photo_url string

Фотка к занятию (если пусто то не менять)

kind TrainingSession.Kind

Тип активности

training_track_privacy TrainingTrackPrivacy

тип отображения трека

TrainingPath

FieldTypeLabelDescription
id string

идентификатор трека

points PathPoint repeated

bounding_box BBox

область включающая трек

TrainingSession

FieldTypeLabelDescription
id string

уникальный идентификатор сессии

sync_millis int64

время синхронизации

start_millis int64

начало

stop_millis int64

окончание

skllzz double

начисленно баллов за тренировку

deleted bool

признак удаленной сессии

source_id string

идентификатор источника (уникален для мобильного телефона)

version uint32

версия набора полей данных

steps StepDetails

Отчет по шагам

hr HrDetails

Отчет по пульсу

task TaskDetails

Отчет по пульсу

timezone string

часовой пояс сессии

kkal double

созжено калорий за тренировку

profile_id string

идентификатор профиля которому принадлежит тренировка

activity_day int64

номер дня активности в часовом поясе клиента

skllzz_without_artifacts double

начислено баллов за тренировку без учета действия артефактов

skllzz_with_artifacts double

начислено баллов за тренировку с учетом артефактов

active_artifacts ActiveArtifact repeated

Действующие артефакты на момент тренировки

description string

Сопроводительный текст

photo_url string

Фотка к занятию

privacy Privacy

режим приватности для тренировки

seq_no int64

порядковый номер синхронизации (для новых методов)

summary TrainingSummary

обобщенные данные о тренировке по данным источника (garmin,suunto и пр)

paths TrainingPath repeated

участки маршрута

kind TrainingSession.Kind

вид активности

arbitrary_kind string

вид активности в форме произвольного названия от источника данных (если поддерживается)

track_hint TrackHint

подсказка относительно данных о треке

TrainingSummary

обобщенные данные о тренировке по данным источника

FieldTypeLabelDescription
distance double

дистанция в метрах

duration double

время в секундах

max_speed double

максимальная скорость (м/с)

min_altitude double

минимальная высота в метрах

max_altitude double

максимальная высота в метрах

track_bounding_box BBox

область включающая все треки

track_preview_url string

картинка предпросмотра трека без карты

track_map_preview_url string

картинка предпросмотра трека на карте

TrainingTrackPrivacy

FieldTypeLabelDescription
delete bool

удалять все данне по трекам (остальные настройки не имеют смысла)

for_me TrackMode

режим отображения для меня

for_friends TrackMode

режим отображения для друзей

for_others TrackMode

режим отображения для всех остальных

UploadResult

FieldTypeLabelDescription
count int32

количество загруженных промокодов

UserDeviceId

FieldTypeLabelDescription
id string

идентификатор устройства

brand_name string

имя производителя

model_name string

модель устройства

push_id string

идентификатор push

app_package_name string

имя пакета приложения

app_build_no string

номер сборки

is_physical bool

признак физического устройства

stamp_unix_seconds int64

время последнего использования

fingerprint string

идентификатор вендора

ip_address string

ip адрес

deleted bool

признак удаленных данных

VisibilityRestriction

FieldTypeLabelDescription
hide_for_corp bool

hide_for_fitness bool

PersonalGoal

цели клиента

NameNumberDescription
unknown_goal 0

неизвестно

lose_weight 1

похудеть

childrens_training 2

тренировки для детей

relief 3

рельеф

strength 4

сила и выносливость

antistress 5

снять стресс

learn_swim 6

научиться плавать

flexibility 7

гибкость и мобильность

body_balance 8

гармоничное развитие тела

fun 9

весело провести время

rehabilitation 10

реабилитация и восстановление

PosCategory

NameNumberDescription
other 0

категория не определена

fitness 1

фитнес

food 3

кафе, фастфуд

beauty 7

красота

clothes 5

одежда

hardware 10

техника

grocery 4

продукты

medicine 2

медицина

entertainment 6

развлечения

travel 8

путешествия

pets 14

домашние питомцы

education 9

образование

furniture 11

мебель

fuel 12

топливо

pharmacy 13

аптеки

ProfileExtensionRequirements.Field

NameNumberDescription
unknown 0

department 1

address 2

team 3

Property.Known

NameNumberDescription
age 0

возраст

skllzz 1

суммарные баллы за все время

ReceiptMode

NameNumberDescription
create 0

создавать чек

skip 1

создавать чек

Sex

пол

NameNumberDescription
undefined 0

не определен

male 1

мужской

female 2

женский

TrackHint

NameNumberDescription
NO_TRACK 0

нет данных о треке (не предлагать менять прайваси)

NORMAL_TRACK 1

есть данные о треке (можно предлагать менять прайваси)

HIDDEN_TRACK 2

есть данные о треке но они скрыты или удалены (можно предлагать включить их и менять прайваси)

TrackMode

NameNumberDescription
hidden 0

line 1

только линия маршрута (отсутствуют детали маршрута, провалиться в карту нельзя)

map 2

маршрут и карта (провалиться в карту нельзя)

route 3

маршрут и карта (можно провалиться в детальный маршрут на яндекс карты)

TrainingSession.Element

NameNumberDescription
undefined 0

не выбрано

chart 1

график

medals 2

медали

TrainingSession.Kind

все что выше 900 это служебные значения, их не давать выбирать клиенту в UI

NameNumberDescription
fitness 0

общая категория - кардио, силовая тренировка, йога, гребля боевые искусства, растяжка гольф

walk 1

ходьба

run 2

бег

swim 3

плавание

cycle 4

велосипед

ski 5

лыжи, горные лыжи

rowing 6

гребля

games 7

игровые/командные (футбол, волейбол, хоккей, баскетбол и т.п.)

set_fitness 900

дополнительное значение варианта fitness (чтобы избежать игнорирования обновления)

test 996

тест

visit 997

визит

other 998

прочее

TrainingSession.Type

NameNumberDescription
unknown 0

step 1

шаги

pulse 2

пульсовые тренировки

common/qr.proto

Top

QrBlock

FieldTypeLabelDescription
audience QrBlock.Audience

источник аудитории

key_hash QrBlock.KeyHash

алгоритм подписи

issued int64

epoch seconds когда токен выдан (опционально)

expire int64

epoch seconds когда токен уже не действителен

device_id string

идентификатор устройства (опционально)

issuer string

идентификатор кода клуба

client_id string

идентификатор клиента

signature bytes

подпись (вычисляется как хеш от конкатенации всех полей через "_" в строковом представлении в порядке следования их индексов)

QrBlock.Audience

NameNumberDescription
myfitt 0

QrBlock.ErrorCorrectionLevel

NameNumberDescription
LOW 0

MEDIUM 1

QUARTILE 2

HIGH 3

QrBlock.KeyHash

NameNumberDescription
hs1 0

HMAC SHA1

common/analytics.proto

Top

AnalyticsEvent

FieldTypeLabelDescription
stamp_millis uint64

время события в epoch_millis

action AnalyticsEvent.Action

category AnalyticsEvent.Category

club_id string

если есть принадлежность к клубу

object_id string

идентификатор объекта из указанной катекории

object_name string

опциональное название объекта

attributes AnalyticsEvent.Attributes

опциональные аттрибуты

origin string

опциональнвй url, диплинк или любой другой идентификатор источника (конкретного места где произошло событие)

properties AnalyticsEvent.PropertiesEntry repeated

пользовательские параметры ключ значение

AnalyticsEvent.Attributes

FieldTypeLabelDescription
payload_type string

формат аттрибутов (json, protobuf)

payload bytes

значение аттрибутов

AnalyticsEvent.PropertiesEntry

FieldTypeLabelDescription
key string

value string

AnalyticsEvent.Action

NameNumberDescription
undefined 0

не определено

view_start 1

начало просмотра объекта из указанной категории

view_stop 2

окончание просмотра

click 3

клик на объект

AnalyticsEvent.Category

NameNumberDescription
unknown 0

fitnorm 1

market 2

fitness 3

feed 4

challenge 5

fund 6

artifact 7

application 8

common/artifact.proto

Top

ActiveArtifact

FieldTypeLabelDescription
type Artifact.Type

тип артефакта длительного действия

first_activity_day int64

первый порядковый день активности с которого начинает действовать артефакт

last_activity_day int64

последний порядковый день активности с которого начинает действовать артефакт

applicator_profile_id string

идентификатор профиля который активировал артефакт

Application

Применение или покупка артефакта

FieldTypeLabelDescription
type Artifact.Type

тип покупаемого или применяемого артефакта

target_profile_id string

идентификатор профиля для кого покупается или применяется артефакт

attrs bytes

дополнительные атрибуты применения или покупки артифакта (например для телепорта это сериализация TeleportAttrs)

owner_profile_id string

идентификатор владельца артефакт (актуально в транзакциях)

anonymous bool

применять анонимно

Artifact

FieldTypeLabelDescription
id Artifact.Type

тип артефакта, он же его id

last_bought int64

epoch milllis когда артефакт был куплен последний раз

last_use int64

epoch milllis когда артефакт был использован последний раз

produce_duration int64

время регенерации артефакта в миллисекундах

pro_produce_duration int64

время регенерации артефакта в миллисекундах для PRO аккаунта

use_amount int32

доступное для использования количество артефакта данного типа

price double

стоимость артефакта в sz

available bool

признак доступности для покупки

apply_duration int64

время действия артефакта (0 если применяется мгновенно)

pro_only bool

только для pro

invisible bool

не показывать на витрине

present bool

признак поведения подарка

Shelf

состояние полки с артефактами

FieldTypeLabelDescription
sync_millis int64

последнее время ее синхронизации

artifacts Shelf.ArtifactsEntry repeated

Мап с артефактами (ключ имя артефакта из его типа)

version int32

версия полки

Shelf.ArtifactsEntry

FieldTypeLabelDescription
key string

value Artifact

TeleportAttrs

атрибуты телепорта для применения (перемещение вперед или назад)

FieldTypeLabelDescription
days int32

количество дней телепорта (положительное вперед, отрицательное назад). Сейчас поддерживается только три дня

Artifact.Type

NameNumberDescription
unknown 0

booster 1

chains 2

energy_drink 3

i_am_ok_virus 4

pay_freeze 5

sneakers 6

teleport 7

vaccine 8

vitamins 9

aging_virus 10

christmas_mood 11

новогоднее\рождественское настроение

aeg_virus 12

вирус Автономного Генератора Энергии (AEG) уменьшает эффективность результата тренировок на 25%

anti_gravity_shield 13

защита от вреда связанного с утяжелением (тяжелая обувь например)

pizza_present 14

подарочный артефакт пицца/пирог (молодец возьми с полки пирожок)

yummy_present 15

подарочный артефакт вкусняшки (конфетка)

train_swap 16

поменяться тренировками (все тренировки уходят в другой профиль)

block_train_swap 18

блокировка потренируйся за меня

second_breath 19

второе дыхание

common/stat.proto

Top

PeriodStat

FieldTypeLabelDescription
skllzz SkllzzValue

заработанные скилз

kkal double

потраченные килокалорий

steps int64

пройдено шагов

meters int64

пройдено метров

first_day int64

первый номер дня периода статистики

last_day int64

последний номер дня периода статистики (включительно)

hr_duration_seconds int64

суммарное время пульсовых тренировок

active_meters double

преодолено метры на тренировках

typed_active_meters PeriodStat.TypedActiveMetersEntry repeated

преодоленные метры на конкретных типах тренировок

typed_active_duration PeriodStat.TypedActiveDurationEntry repeated

проведенное время в секундах на конкретных типах тренировок

PeriodStat.TypedActiveDurationEntry

FieldTypeLabelDescription
key int32

value double

PeriodStat.TypedActiveMetersEntry

FieldTypeLabelDescription
key int32

value double

ProfileStats

FieldTypeLabelDescription
id string

идентификатор профиля

stamp_epoch_seconds int64

время формирования статистики в epoch seconds

total PeriodStat

за все время (не всегда доступно)

today PeriodStat

статистика за сегодня

yesterday PeriodStat

статистика за вчера

this_week PeriodStat

на этой неделе

past_week PeriodStat

на прошлой неделе

this_month PeriodStat

в этом месяце

past_month PeriodStat

в прошлом месяце

this_year PeriodStat

в этом году

past_year PeriodStat

в прошлом году

this_fitnorm PeriodStat

в этой фотнорме

past_fitnorm PeriodStat

в прошлой фитнорме

daily_progress ProgressValues

дневной прогресс (today/yesterday)

weekly_progress ProgressValues

недельный прогресс (this_week/past_week)

monthly_progress ProgressValues

помесячный прогресс (this_month,past_month)

yearly_progress ProgressValues

годовой прогресс (this_year,past_year)

fitnorm_progress ProgressValues

прогресс фотнормы (this_fitnorm,past_fitnorm)

ProgressValues

Прогресс в процентах по соответствующей метрике

FieldTypeLabelDescription
skllzz float

meters float

steps float

kkal float

hr_duration float

active_meters float

SkllzzValue

FieldTypeLabelDescription
regular TypedSkllzz

обычные скилз

gamified TypedSkllzz

скилз с учетом артефактов

TypedSkllzz

FieldTypeLabelDescription
steps double

скилз заработанные на шагах

hr double

скилз заработанные на тренировках

tasks double

скилз заработанные на заданиях

common/geo.proto

Top

BBox

Bounding box

FieldTypeLabelDescription
lo LatLng

hi LatLng

center LatLng

LatLng

FieldTypeLabelDescription
latitude double

The latitude in degrees. It must be in the range [-90.0, +90.0].

longitude double

The longitude in degrees. It must be in the range [-180.0, +180.0].

Polygon

FieldTypeLabelDescription
box BBox

vertex LatLng repeated

Roi

FieldTypeLabelDescription
area Polygon repeated

common/agreement.proto

Top

AgreementDocument

документ для ознакомления или получения согласия от пользователя

FieldTypeLabelDescription
id string

идентификатор документа

label string

метка

url string

url адрес для перехода

required_agreement bool

выводить документ как обязательный для соглашения иначе просто для ознакомления

stamp_day int64

дата документа (epoch day), она же и версия документа, в случае увеличения может потребоваться повторное согласие

AgreementList

FieldTypeLabelDescription
agreements ProfileAgreement repeated

AgreementProject

проект (группа документов для согласия)

FieldTypeLabelDescription
id string

идентификатор проекта

club_id string

идентификатор клуба

name string

Название проекта

description string

Описание проекта

documents AgreementDocument repeated

документы связанные с проектом

deleted bool

признак удаления проекта

ProfileAgreement

факт согласия от пользователя

FieldTypeLabelDescription
id string

идентификатор документа

label string

метка

url string

url адрес для перехода

stamp_day int64

дата документа (epoch day), она же и версия документа

stamp_seconds int64

время ознакомления или получения согласия (если 0 то согласие не получено и требуется его получение)

is_revoke bool

признак отзыва документа

ProjectList

FieldTypeLabelDescription
projects AgreementProject repeated

common/errors.proto

Top

PaymentOffer

FieldTypeLabelDescription
id string

uid идентификатор платежа

url string

url для перехода

ServiceOffer

FieldTypeLabelDescription
id string

uid идентификатор услуги

title string

название услуги

description string

описание услуги

photo_url string

картинка для услуги

price float

стоимость услуги

count double

предлагаемое количество услуги к покупке (0 - по умолчанию)

SkllzzError

FieldTypeLabelDescription
code SkllzzError.Code

offer_pro bool

details string

дополнительное текстовое сообщение (не требующее локализации)

offer_payment PaymentOffer

предложения на оплату для CLUB_INSUFFICIENT_FUNDS

offer_service ServiceOffer repeated

предложения на покупку услуги для CLUB_REQUIRE_PAYED_SERVICE

int_arg1 int64

произвольный числовой параметр ошибки

int_arg2 int64

произвольный числовой параметр ошибки

str_arg1 string

произвольный строковый аргумент

bytes_arg1 bytes

произвольный аргумент массива байт (для еще одного уровня сериализации)

double_arg1 double

произвольный аргумент double

agreement AgreementDocument repeated

Данные по требуемому согласию в случае ошибки AGREEMENT_REQUIRED

SkllzzError.Code

NameNumberDescription
UNKNOWN 0

нет специального кода ошибки

DELETED_LEADERBOARD 1

запрошен отсутствующий лидерборд

LEADERBOARD_LIMIT_EXCEEDED 2

превышено число лидерборда для пользователя

LEADERBOARD_MEMBER_LIMIT_EXCEEDED 3

превышено число участников лидерборда

LEADERBOARD_INVALID_PARTICIPANTS_CONFIG 4

недопустимая настройка числа участников

LEADERBOARD_INVALID_DURATION 5

недопустимая настройка длительности соревнования (не менее 3 и не более 30 дней)

LEADERBOARD_INVALID_SKLLZZ_STOP 6

недопустимая настройка стоп числа SKLLZZ в соревновании (не менее 300 и не более 30000 sz)

LEADERBOARD_INVALID_HISTORICAL_DAYS 7

недопустимая настройка выявления лидера в ретроспективе дней

LEADERBOARD_UNABLE_TO_JOIN_COMPLETED 8

Невозможно подключиться к завершенному соревнованию

PROFILE_UNABLE_TO_CHANGE_AVATAR 9

Невозможно поменять аватарку по причине недостаточного омоложения

LEADERBOARD_ALREADY_JOINED 10

Уже участник соревнования

MARKET_PRODUCT_UNAVAILABLE 11

Товар не доступен (возможно по причине требования pro статуса, см флаг offer_pro)

MARKET_PRODUCT_EXHAUSTED 12

Товар закончился

MARKET_INSUFFICIENT_SKLLZZ 13

Не достаточно sz для покупки товара

IAMOK_INSUFFICIENT_SKLLZZ_TO_BOOST 14

Не достаточно sz для бустера

IAMOK_ALREADY_BOOSTED 15

Уже есть активное ускорение

IAMOK_ALREADY_FREEZED 16

Уже есть активное замедление

IAMOK_TOO_EARLY_FOR_TELEPORT_BACK 17

Слишком рано для перемещения назад

IAMOK_INSUFFICIENT_ENERGY_TO_TELEPORT_FORWARD 18

Не достаточно накопленной энергии для перемещения вперед

GAME_ARTIFACT_SHELF_IS_EMPTY 19

Нет необходимого артефакта на полке

GAME_ARTIFACT_IS_NOT_READY 20

Артефакт еще не готов (слишком мало прошло времени с последней покупки)

GAME_ARTIFACT_IS_ALREADY_ACTIVE 21

Артефакт еще активен и применение нового не требуется

GAME_ARTIFACT_IS_FREEZED_BY_VIRUS 22

Артефакты заморожены вирусом

GAME_ARTIFACT_INCOMPATIBLE 26

Артефакт не совместим с текущим набором

LEADERBOARD_NOT_AN_AUTHOR 23

изменения может сделать только автор соревнования

LEADERBOARD_NOT_VALID_AUTHOR 24

указанный id автора не может стать приемником (дисквалифицирован или удален)

LEADERBOARD_INACTIVE 25

соревнование не активно

MARKET_PRODUCT_PURCHASED_EARLIER 27

продукт уже куплен ранее

LEADERBOARD_LEVEL_RESTRICTION 30

не соответствие требуемому уровню int_arg1 - min , int_arg2 - max

REG_INVALID_PHONE_NUMBER 100

Коды ошибок при регистрации номер телефона задан неверно

REG_INVALID_PHONE_TOKEN 101

не верный токен подтверждения телефона (возможно устарел)

REG_INVALID_PHONE_CODE 102

не верный код подтверждения

REG_INVALID_EMAIL 103

невозможно отправить письмо с авторизацией

REG_INVALID_INPUT 104

не верные данные подтверждения

REG_CREATION_LIMIT 105

ограничение в создании нового аккаунта

CLUB_NOT_FOUND 500

Коды ошибок внутри SKLLZZ CLUB Клуб не найден

CLUB_CLIENT_NOT_FOUND 501

Клиент с указанными номером телефона не найден в клубе

CLUB_INSUFFICIENT_FUNDS 502

не достаточно средств на лицевых счетах клиента

CLUB_REQUIRE_PAYED_SERVICE 503

требуется покупка необходимой услуги

CLUB_INSUFFICIENT_SLOTS 504

нет свободных мест

CLUB_CLASS_IS_OVER 505

занятие уже проведено

CLUB_UNABLE_TO_PROCESS_REQUEST 506

клубное по не может выполнить запрашиваемую операцию (обратитесь на ресепшн)

CLUB_UNABLE_TO_FREEZE 507

клубное по не может выполнить заморозку контракта (обратитесь на ресепшн)

CLUB_UNABLE_TO_UNFREEZE 508

клубное по не может выполнить разморозку контракта (обратитесь на ресепшн)

CLUB_CLIENT_LIMIT 509

превышено допустимое количество клиентов клуба

CLUB_UNDER_CONSTRUCTION 510

функция в разработке

CLUB_APPROVE_PENDING 511

подключение к клубу на рассмотрении

CLUB_UNABLE_TO_LEAVE_DUE_TO_INCOMPLETE_CHALLENGE 512

в клубе есть не завершенные соревнования

REQUIRE_JOIN_CLUB 513

требуется подключение к клубу

REQUIRE_OAUTH2 514

требуется внешняя аутентификация ( bytes_arg1 - сериализация ExtAuthState)

CLUB_OVERLAPPED_APPOINTMENTS 515

ента есть записи которые конфликтуют по времени

CLUB_RENT_REQUIRE_RESOURCES 516

требуется указать ресурсы для аренды

CLUB_REQUIRE_EMAIL 517

требуется указать email в карточке регистрации

CLUB_PAYMENT_METHOD_UNAVAILABLE 518

не разрешенный способ оплаты

CLUB_APPOINTMENT_NOT_FOUND 519

занятие не найдено

CLUB_BUSY_TIMESLOT 520

таймслот занят

CLUB_APPOINTMENT_CANCELED 521

занятие отменено

CLUB_APPOINTMENT_RESERVATION_NOT_FOUND 522

бронь на занятие не найдено

FUND_NOT_FOUND 600

фонд не найден

FUND_REPLENISH_LIMITS 601

ошибка при пополнении взноса связанная с лимитами фонда

DAYLY_REPLENISH_LIMITS 602

ошибка при пополнении взноса связанная с лимитами пополнения за 24 часа

FUND_REPLENISH_RULES 603

ошибка при пополнении взноса связанная с правилами на размер взноса

FUND_SUBSCRIPTION_EXISTS 604

нельзя подписаться на фонд так как уже есть подписка на фонд в данной группе

AGREEMENT_REQUIRED 605

требуется согласие пользователя

EMAIL_DOMAIN_RESTRICTED 606

требуется вход через почту с доменом (домены перечислены в str_arg1 через разделитель)

APP_UPGRADE_REQUIRED 1000

требуется обновление приложения

challenge/challenge.proto

Top

AbsoluteLeaderRule

Режим соревнования с абсолютным лидером

FieldTypeLabelDescription
stop_value double

набранное участником значение которые завершат соревнования досрочно при достижении его любым участником (0 если без такого ограничения)

ActivityDetails

данные по пульсу или шагам конкретной тренировки

FieldTypeLabelDescription
steps StepsData repeated

hr TrainingData repeated

Challenge

FieldTypeLabelDescription
id string

идентификатор соревнования

parent_id string

идентификатор родительского соревнования если часть командного

club_id string

принадлежность к клубу

leaderboard Leaderboard

правила и метаданные соревнования

public bool

показывать на витрине клуба

private bool

приватный лидерборд (не предлагать присоединиться к нему, а только показывать ранк из панели предложений)

ext_auth RequireExtAuth

требования по наличию внешней авторизации

in_cities_id string

id списка городов присутствия (если пусто то без ограничений)

ChallengeMemberSyncRequest

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

challenge_id string

идентификатор соревнования

member_id string

идентификатор участника

ChallengeSyncRequest

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

challenge_id string

идентификатор соревнования

ChallengeTemplate

шаблон соревнования

FieldTypeLabelDescription
id string

идентификатор шаблона

club_id string

принадлежность к клубу

rules Rules

шаблон правил

rules_constraints ChallengeTemplate.Constraints

ограничения по полям правил

deleted bool

признак удаления

ChallengeTemplate.Constraints

FieldTypeLabelDescription
first_activity_day ChallengeTemplate.Constraints.Mode

ClaimLimits

FieldTypeLabelDescription
percent float

превышение процента жалоб

absolute int32

превышение числа жалоб

DisqualifyRecord

запись о дисквалификации

FieldTypeLabelDescription
stamp int64

epoch seconds время дисквалификации

reason string

причина дисквалификации

GoalStep

FieldTypeLabelDescription
value double

значение промежуточной цели в резмерности определяемой RankGoal

description string

GroupRules

правила для групповых соревнований

FieldTypeLabelDescription
max_teams int32

максимальное число команд

mode GroupRules.RankMode

режим командного учета

absolute_leader AbsoluteLeaderRule

historical_leader HistoricalLeaderRule

shared_goal SharedGoalRule

HistoricalLeaderRule

Режим соревнования с лидером набравшим максимальное количество sz за указанное число последних календарных дней

FieldTypeLabelDescription
days int32

количество дней за которые учитывать skllzz

Leaderboard

Лидерборд (игра)

FieldTypeLabelDescription
rules Rules

правила соревнования

invite string

ссылка для приглашения участника

invite_viewer string

ссылка для приглашения наблюдателя

created_millis int64

время создания соревнования

chat_url string

Deprecated. ссылка на общий чат или пусто если чат не создан (устарело, используем ссылку из Rules)

author_id string

идентификатор профиля автора/президента/капитана (если пустой то соревнование создано не клиентом)

state Leaderboard.State

состояние лидерборда

timezone string

временная зона в которой создано соревнование

next_election_millis int64

время проведения следующих выборов президента лидерборда

jackpot double

призовой куш

prizes Leaderboard.PrizesEntry repeated

сумма призов по местам

version int32

версия лидерборда (0,2)

Fields with deprecated option

Name Option
chat_url

true

Leaderboard.PrizesEntry

FieldTypeLabelDescription
key int64

value double

LeaderboardDesign

FieldTypeLabelDescription
id string

идентификатор лидерборда

name string

название соревнования (если пусто то не менять)

description string

более детальное описание соревнования (если пусто то не менять)

photo_url string

картинка к соревнованию (если пусто то не менять, для удаления передать строку "-")

logo_url string

логотип к соревнованию (если пусто то не менять, для удаления передать строку "-")

new_author_id string

новый id хозяина лидерборда (если пусто то не менять)

chat_url string

новый адрес чата

LeaderboardMember

Идентификатор участника в соревновании

FieldTypeLabelDescription
leaderboard_id string

идентификатор лидерборда

member_id string

идентификатор участника соревнования (совпадает с profile.id)

sync_millis int64

возвращать данные с отметкой синхронизации превышающую заданную

LeaderboardMemberActivity

Идентификатор активности участника в соревновании

FieldTypeLabelDescription
leaderboard_id string

идентификатор лидерборда

member_id string

идентификатор участника соревнования (совпадает с profile.id)

session_id string

идентификатор тренировки

sync_millis int64

отметка времени для синхронизации

with_details bool

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

LeaderboardMemberClaim

Жалоба на участника соревнования

FieldTypeLabelDescription
leaderboard_id string

идентификатор лидерборда

member_id string

идентификатор участника соревнования (совпадает с profile.id)

reason string

Причина жалобы

created_millis int64

время создания жалобы

last_modified_millis int64

время последнего изменения

LeaderboardRank

FieldTypeLabelDescription
id string

идентификатор лидерборда

last_modified int64

время последнего изменения в рейтинге

members Member repeated

топ участников в порядке лидерства (обязательно включает текущего пользователя)

leaderboard Leaderboard

лидерборд

earned_total double

суммарные достижения всех участников лидерборда

member_total double

общее количество всех участников

normalized_performance double

нормализованная величина эффективности участников лидерборда (от 0 до 1)

final_result_stamp int64

время epoch seconds, когда будут подведены окончательные итоги

activation_stamp int64

время epoch seconds, когда будет запущено соревнование

stats PeriodStat

статистика соревнования

LeaderboardRole

Отношение профиля к лидерборду

FieldTypeLabelDescription
id string

идентификатор лидерборда

created_millis int64

время создания связи

role Role

Роль по отношению к лидерборду

last_modified int64

время последнего изменения отношения

version int32

версия роли (0,2)

deleted bool

признак удаления

LogRecord

Данные об активности участника в лидерборде

FieldTypeLabelDescription
id string

уникальный идентификатор активности

skllzz double

Заработанные или потраченные skllzz (положительная - заработанные, отрицательная - потраченные)

description string

Описание активности

stamp_seconds int64

время начала действия (epoch seconds)

duration_seconds int64

длительность действия (может быть нулевым)

activity_day int64

номер дня активности в часовом поясе клиента

training TrainingSession

deleted bool

признак удаления

Member

FieldTypeLabelDescription
id string

идентификатор участника соревнования (совпадает с profile.id)

nick_name string

никнейм участника

avatar_url string

аватар участника

earned_value double

заработано в соревновании (размерность определяется правилами соревнования в RankGoal)

rank int32

позиция в соревновании

join_millis int64

время присоединения к соревнованию

last_modified_millis int64

время последнего изменения

disqualified bool

признак дисквалификации

game_age_days int32

Игровой возраст

pro bool

признак наличия подписки на pro

lang string

предпочитаемый язык участника

claims Member.Claims

статистика по жалобам

level Level

игровой уровень из профиля

deleted bool

признак удаления

Member.Claims

FieldTypeLabelDescription
total int32

общее число жалоб

percent float

процентное число жалоб относительно всех участников

Rules

Правила соревнования

FieldTypeLabelDescription
name string

Источники активности для соревнования название соревнования

begin_seconds int64

Deprecated. epoch секунды начала соревнования (0 если сразу с момента создания)

first_activity_day int64

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

end_seconds int64

Deprecated. epoch секунды окончания соревнования (0 если без ограничений)

last_activity_day int64

последний день активности которая пойдет в зачет

source Activity repeated

источники активности которые идут в зачет

workout_types TrainingSession.Kind repeated

типа тренировок которые идут в зачет если в источниках есть WORKOUTS (если пустой то учитывать все)

rank_goal Rules.RankGoal

относительно чего составлять ранк (скилзы или метры)

absolute_leader AbsoluteLeaderRule

historical_leader HistoricalLeaderRule

shared_goal SharedGoalRule

group_rules GroupRules

правила для групповых соревнований

max_participants int32

максимальное число участников (0 если без ограничения)

with_chat bool

Deprecated. создать общий чат для соревнования в телеграм

description string

более детальное описание соревнования

paid double

платное соревнование требующее оплаты за участие

award_method Rules.WinnerAwardMethod

способ поделить куш

with_artifacts bool

разрешить действие артефактов на результаты тренировок

photo_url string

картинка к соревнованию

logo_url string

логотип к соревнованию

chat_url string

связанный чат

require_club string

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

linked_fund_id string

Deprecated. автоматически вступать в указанный фонд при вступлении в это соревнование

require_tracks_min_level TrackMode

принимать только активность с треками уровня не ниже указанного

linked_fund_ids string repeated

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

payment_terminal_id string

идентификатор терминала оплаты (в этом случае соревнование оплачивается не скилзами а реальными деньгами) менять может роль payed_challenges остальные read-only

jackpot_convert_rate double

курс конвертации поступивших денежных средств в джекпот (если 0 то джекпот не формируется) менять может роль payed_challenges остальные read-only

payment_currency string

код валюта оплаты по https://ru.wikipedia.org/wiki/ISO_4217 (если пусто то внутренними SKLLZZ, менять может роль payed_challenges остальные read-only

group_convert_rate double

коэффициент нормализации результатов для группового соревнования DEV-149

day_activity_limit_skllzz double

лимит отсечки физической активности в день

member_level IntRange

ограничиваемый интервал уровней участников (если элемент 0 то значит без ограничений)

auto_disqualify_limits ClaimLimits

правила по автоматической дисквалификации

Fields with deprecated option

Name Option
begin_seconds

true

end_seconds

true

with_chat

true

linked_fund_id

true

SharedGoalRule

Режим соревнования с общей целью

FieldTypeLabelDescription
goal_step GoalStep repeated

массив целей, от промежуточных до финальной

Activity

NameNumberDescription
STEPS 0

учитывать активность из шагов

WORKOUTS 1

учитывать активность из тренировок

TASKS 2

учитывать активность из заданий

ChallengeMemberSyncRequest.Type

NameNumberDescription
unknown 0

training_info 1

информация об активности внутри соревнования TrainingSession

member_info 2

информация об участнике соревнования Profile (не для групповых)

ChallengeSyncRequest.Type

NameNumberDescription
unknown 0

challenge_info 1

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

child_challenge_info 2

информация о подчиненном соревновании Challenge

challenge_rank 3

информация о турнирной таблице соревнования LeaderboardRank

ChallengeTemplate.Constraints.Mode

NameNumberDescription
READONLY 0

запрещено для изменений

WRITABLE 1

может меняться

REQUIRED 3

должно меняться (требуется задать)

GroupRules.RankMode

NameNumberDescription
AVERAGE 0

TOTAL 1

Leaderboard.State

Состояние соревнования

NameNumberDescription
IDLE 0

соревнование ожидает начала

ACTIVE 1

соревнование активно

COMPLETED 2

соревнование завершено

DELETED 999

соревнование удалено

Role

NameNumberDescription
MEMBER 0

участник

VIEWER 1

наблюдатель

OFFER 2

предложение

Rules.RankGoal

NameNumberDescription
SKLLZZ 0

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

METERS 1

позицию в ранке определяют метры

Rules.WinnerAwardMethod

NameNumberDescription
NONE 0

без вознаграждения победителей

SINGLE_WINNER 1

все главному победителю

PROPORTIONALLY_FOR_TOP 2

пропорционально 50% 30% 20%

retail/payment.proto

Top

Account

Состояние клиентского счета

FieldTypeLabelDescription
balance double

доступный баланс для оплаты

access string

ключ для операций по счету (динамический, время жизни не более часа)

name string

Имя клиента для дополнительной идентификации (не всегда доступно)

AccountQuery

Запрос данных по клиентскому счету одним из способов идентификации

FieldTypeLabelDescription
pos_id string

уникальный идентификатор точки продаж

account_id string

данные qr кода из приложения или телефон клиента либо в случае пустого account_id метод отдаст данные клиента который последним просканировал точку продаж (при необходимости будет ожидать)

license_id string

опциональные данные уникального идентификатора модуля или програмного продукта системы учета из 1С,iiko,rKeeper и тд.

PrepayDetails

FieldTypeLabelDescription
transaction_id string

желаемый идентификатор транзакции (опционально)

pos_key string

ключ точки продаж

amount double

сумма операции

description string

обязательное описание операции, (название товара или услуги)

created_millis int64

время создания запроса

pos_id string

out: идентификатор точки продаж

club_id string

out: идентификатор клуба

pay_link string

out: url ссылка на оплату счета

state PrepayDetails.State

out: состояние платежа

profile_id string

out: идентификатор профиля, оплатившего счет

channel_id string

out: идентификатор канала (чата)

ReserveQuery

Резервирование средств

FieldTypeLabelDescription
transaction_id string

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

access string

ключ к счету (значение поля access в ответе из метода Query)

amount double

резервируемая сумма

description string

обязательное описание операции, (название товара или услуги)

tax_id string

опциональный идентификатор фискального чека

Transaction

Идентификатор транзакции

FieldTypeLabelDescription
id string

уникальный идентификатор транзакции

PrepayDetails.State

NameNumberDescription
undefined 0

состояние не определено (ошибочное)

new 1

платеж создан но не оплачен

payed 2

платеж оплачен

outdated 3

платеж просрочен (оплата более не возможна)

deleted 999

платеж удален

Payment

Сервис оплаты skllzz

Method NameRequest TypeResponse TypeDescription
Query AccountQuery Account

Запрос доступных средств на счете либо по qr коду из приложения/точки продаж либо по известному номеру телефона клиента В случае AccountQuery.account_id=="test" вернется Account.access="OK" и Account.name=имя точки продаж

Reserve ReserveQuery Transaction

Резервирование средств. Списание средств можно подтвердить методом Confirm в течение 10 минут

Cancel Transaction Transaction

Отменяет транзакцию и возвращает средства на счет клиента по заданной транзакции

Confirm Transaction Transaction

Закрывает транзакцию и списывет заблокированые средства окончательно. Но это не запрещает вернуть их в любое время позже через Cancel

CreatePrepay PrepayDetails PrepayDetails

создание нового запроса на оплату c подтверждением

MonitorPrepay PrepayDetails PrepayDetails stream

отслеживание состояния запроса на оплату

retail/transaction.proto

Top

TransactionDetails

Данные об операции

FieldTypeLabelDescription
id string

уникальный идентификатор транзакции

stamp int64

Время транзакции (unix epoch seconds)

amount double

сумма изменений (положительная - пополнение баланса, отрицательная - списание)

description string

Описание транзакции

type TransactionDetails.Type

Тип транзакции

rejuvenation int32

суммарное изменение возраста в днях (положительная - омоложение, отрицательная - старение)

app_id string

сведения о приложение с указанным идентификатором как источнике транзакции

pos_id string

сведения о партнере с заданным pos_id как источнике транзакции (тут же хранится ид фонда в случае операций с фондами)

manager_id string

сведения об администраторе с заданным id как источнике транзакции

product_id string

сведения о продукте или бонусе в рамках транзакции

promo_code string

сведения о полученом промо коде в рамках транзакции

iamok_uuid string

привязка транзакции к циклу i am ok

balance double

баланс skllzz на момент выполнения транзакции

age int32

возраст в днях на момент выполнения транзакции

sync_stamp_millis int64

Время последнего обновления транзакции в миллисекундах (для реализации механизма не прочитанных сообщений)

location LatLng

локация

redirect_uri string

опциональный адрес для перехода по адресу в случае клика на операцию

pos_transaction_id string

опциональный идентификатор транзакции на стороне pos

rating_value RatingValue

оценка пользователем этой операции (если приемлемо)

pos_details PosDetails

данные о точке продаж на момент проведения операции

daily_total double

сумма изменений (положительная - пополнение баланса, отрицательная - списание) общая сумма skllzz за день без учета лимитов (только для транзакций дневной активности)

details bytes

сериализованные данные в зависимости от type

pre_auth bool

признак предварительной операция (которая затем удаляется или подтверждается)

active_artifacts ActiveArtifact repeated

level Level

уровень на момент выполнения транзакции

seq_no int64

deleted bool

признак удаленного элемента

TransactionDetails.Type

NameNumberDescription
UNKNOWN 0

ACTIVITY 1

Операции связанные с физической активностью (шаги тренировки)

IAMOK 2

Операции в рамках цикла i am ok

BONUS 3

Различные бонусные начисления

PRODUCT 4

Покупка товаров

PROMOCODE 5

Покупка промокода

ARTIFACT 6

Использование артефакта

BUY_ARTIFACT 7

Покупка артефакта

PAY_CHALLENGE 8

Оплата участия в соревновании

CHALLENGE_AWARD 9

Награда за соревнование

DEANONIMIZATION 10

Награда за деанонимизацию

REPLENISH_FUND 11

взнос в фонд

OTHER 1000

Прочие начисления

DELETED 9999

Удаленная операции

retail/market.proto

Top

Market

Сервис работы с магазином/витриной/торговыми точками

Method NameRequest TypeResponse TypeDescription
PosAuthLink Link PosInfo

Авторизация клиента на точке продаж

PosRate RatingValue RatingValue

Оценка проведенной операции

MonitorPosRating PosRating PosRating stream

Мониторинг оценки точки продаж

SyncPos PosDetails PosDetails stream

Синхронизация информации по точкам продаж

SyncRoi RoiDetails RoiDetails stream

Синхронизация информации по точкам продаж

BuyPromo PosDetails TransactionDetails

Покупка промокода (требуется id и club_id)

ConcernPromo PosDetails Empty

Проявить озабоченность относительно отсуствия товара (требуется id и club_id) в телеграм канал будет отправляться соотвествующее сообщение

Approve PrepayDetails PrepayDetails

подтверждение платежа

GetPrepayDetails PrepayDetails PrepayDetails stream

отслеживание состояния запроса на оплату

retail/pos.proto

Top

Cities

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

FieldTypeLabelDescription
id string

идентификатор списка городов

name string

название списка

notes string

заметки по списку

club_id string

принадлежность к клубу

city City repeated

список городов

deleted bool

признак удаления

CitiesList

FieldTypeLabelDescription
cities Cities repeated

City

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

FieldTypeLabelDescription
name string

название города

PosDetails

Информация по точке продаж для карты

FieldTypeLabelDescription
id string

идентификатор точки продаж

name string

название точки продаж

offer string

Deprecated. описание предложения (% скидки и тд)

valid_from int64

epoch seconds с которого доступна точка

valid_until int64

epoch seconds до которого доступна точка

last_modified int64

время последнего изменения (для синхронизации)

location LatLng

Deprecated.

address string

Deprecated.

site string

адрес сайта у данной точки продаж

pro_only bool

доступен только для pro

category PosCategory

категория точки

online OnlineDetails

offline OfflineDetails

absolute_offer AbsoluteOffer

абсолютная (в рублях)

relative_offer RelativeOffer

относительная (в процентах)

logo string

url для jpg/png картинки с логотипом

branding Branding

настройки брендинга точки

parent_pos_id string

принадлежность к группе (ссылка на родительский pos)

coverage_id string

принадлежность к зоне покрытия

priority int32

приоритет на витрине

club_id string

принадлежность к клубу

visibility_restriction VisibilityRestriction

ограничения видимости объекта

active bool

точка активна

invisible bool

скрывать от клиентов

is_empty bool

признак что товар на точке временно закончился

in_cities_id string

id списка городов присутствия (если пусто то без ограничений)

deleted bool

Fields with deprecated option

Name Option
offer

true

location

true

address

true

PosInfo

FieldTypeLabelDescription
name string

название точки продаж

id string

идентификатор точки продаж

PosRating

FieldTypeLabelDescription
pos_id string

идентификатор точки продаж

average_rating double

средняя оценка точки (используются группа из последних оценок)

rating_count int64

количество отзывов по точке

use_count int64

количество операций

rating_millis int64

момент времени на который получена средняя оценка точки

rating_count_millis int64

момент времени на который получено общее число отзывов

use_count_millis int64

момент времени на который получено общее число операций

RoiDetails

Информация по ROI

FieldTypeLabelDescription
id string

идентификатор точки продаж

name string

название точки продаж

last_modified int64

время последнего изменения (для синхронизации)

ROI Roi

области

bounding_box BBox

область координат геодезического прямоугольника включающая все полигоны

deleted bool

retail/rating.proto

Top

RatingValue

FieldTypeLabelDescription
pos_id string

идентификатор точки продаж

transaction_id string

идентификатор транзакции

location LatLng

локация

rating double

оценка пользователем этой операции (если приемлимо)

testimonial string

отзыв клиента

stamp_millis int64

отметка времени

retail/report.proto

Top

PrepareParams

Параметры запрашиваемого отчета

FieldTypeLabelDescription
startDate google.protobuf.Timestamp

начало периода

endDate google.protobuf.Timestamp

конец периода

format Format

формат

timezone_name string

таймзона по умолчанию

timezone_offset int64

смещение в таймзоне

ReportId

ID отчета

FieldTypeLabelDescription
id string

url string

прямая ссылка для загрузки

ReportParams

Параметры запрашиваемого отчета

FieldTypeLabelDescription
startDate google.protobuf.Timestamp

начало периода

endDate google.protobuf.Timestamp

конец периода

ReportRow

Одна строка отчета

FieldTypeLabelDescription
id string

уникальный идентификатор транзакции

stamp google.protobuf.Timestamp

Дата и время операции

name string

Имя клиента для дополнительной идентификации (не всегда доступно)

amount double

Сумма операции

client_id string

идентификатор клиента

rating double

оценка пользователем этой операции (если приемлемо)

testimonial string

отзыв клиента

description string

описание операции

phone string

номер телефона клиента (если он указан)

nick string

никнейм клиента

Format

формат подготваливаемого отчета

NameNumberDescription
TEXT 0

JSON 1

XLSX 2

Report

Сервис отчетов skllzz

Method NameRequest TypeResponse TypeDescription
Generate ReportParams ReportRow stream

Prepare PrepareParams ReportId

activity/upload.proto

Top

ActivityData

ru: блок сведений о единичной активности

en: block of information about a single activity

FieldTypeLabelDescription
device_info DeviceInfo

ru: информацию о клиенте и устройства (приложение+часы) en: information about the client and device (application + watch)

exercise Exercise

ru: Данные о единичной сессии в формате FIT en: Single session data in FIT format

steps Steps

ru: Данные о шагах en: Steps data

meta ActivityMeta

ru: метаданные по активности en: activity metadata

ActivityMeta

ru: метаданные по активности

en: activity metadata

FieldTypeLabelDescription
id string

ru: уникальный идентификатор активности на стороне отправителя, желательно UUID V4 en: unique activity identifier on the sender side, preferably UUID V4

time_zone string

ru: код тайм зоны в формате ISO 8601 к которой относится активность (например Europe/Moscow) en: time zone code in ISO 8601 format to which the activity belongs (Europe/Moscow for example)

ActivityUploadResult

ru: Статус обработки полученных данных. В случае ошибки она передается через стандартный механизм GRPC см https://grpc.io/docs/guides/error/

en: Processing status of received data. In case of an error, it is transmitted through the standard GRPC mechanism, see https://grpc.io/docs/guides/error/

FieldTypeLabelDescription
training_id string repeated

ru: список идентификаторов активности клиента на стороне платформы МойФитнес которые были затронуты обновлением. en: a list of client activity identifiers on the MyFitness platform side that were affected by the update.

DeviceInfo

ru: информация о клиенте и устройства (приложение+часы)

en: information about the client and device (application + watch)

FieldTypeLabelDescription
app_name string

ru: имя пакета приложения (например ru.myfitt.watch) en: application package name (for example ru.myfitt.watch)

app_version string

ru: версия приложения ( например 1.33.22) en: application version (for example 1.33.22)

device_name string

ru: имя устройства с которого получены данные (например MyFitt Watch 1.0) en: name of the device from which the data was received (for example MyFitt Watch 1.0)

device_version string

ru: код версии устройства (прошивки) с которого получены данные (например 0.44.55) en: firmware version code of the device from which the data was received (for example 0.44.55)

device_mac string

ru: Bluetooth MAC адрес устройства (например C4-E4-AD-1C-56-B1 или C4:E4:AD:1C:56:B1) en: Bluetooth MAC address of the device (for example C4-E4-AD-1C-56-B1 or C4:E4:AD:1C:56:B1)

Exercise

ru: Занятие в формате FIT

en: Workout in FIT format

FieldTypeLabelDescription
fit_file_data bytes

ru: контент FIT файла см. https://developer.garmin.com/fit/cookbook/encoding-activity-files/ и https://www.fitfiletools.com/#/top ru: FIT file content see https://developer.garmin.com/fit/cookbook/encoding-activity-files/ and https://www.fitfiletools.com/#/top

method CollectionMethod

ru: способ сбора данных en: data collection method

Steps

ru: Данные о шагах

en: Steps data

FieldTypeLabelDescription
details Steps.Details repeated

ru: массив с детализацией en: array with detail

Steps.Details

ru: Единичная запись о шагах в указанном диапазоне времени

en: Single entry of steps within a specified time range

FieldTypeLabelDescription
stamp_millis int64

ru: время начала замера шагов в unix time миллисекундах см https://en.wikipedia.org/wiki/Unix_time en: step measurement start time in unix time milliseconds see https://en.wikipedia.org/wiki/Unix_time

duration_millis int32

ru: длительность интервала замера в миллисекундах (рекомендуется детализация в 15 минут) en: duration of the measurement interval in milliseconds (recommended interval of 15 minutes)

steps int32

ru: Суммарное количество шагов на этом интервале en: Total steps on this interval

method CollectionMethod

ru: способ сбора данных en: data collection method

CollectionMethod

ru: способ сбора данных

en: data collection method

NameNumberDescription
Auto 0

ru: автоматический посредством датчиков en: automatic via sensors

Manual 1

ru: ручной ввод en: manual entry

ActivityManager

ru: обмен данными об активности клиента

en: exchange of data about client activity

Method NameRequest TypeResponse TypeDescription
Upload ActivityData ActivityUploadResult

ru: загрузка данный в профиль клиента МойФитнес en: uploading data to the MyFitness client profile

setting/curve.proto

Top

MiningCurveParams

Определение кривой майнинга игровой валюты от уровня нагрузки

FieldTypeLabelDescription
hardness_begin double

начало фактического диапазона кривой на шкале усилия (обычно 0)

hardness_end double

конец фактического диапазона кривой на шкале усилия (обычно 1)

skllzz_scale double

коэффициент для skllzz (обычно 1-4)

polinom_factor int32

коэффициент усиления кратности сглаживающего полинома

value double repeated

желаемые значания на интервале от 0 до 1 распределенные равномерно например 0,0,0,0,1,1,0

setting/universe.proto

Top

ProfileProgress

FieldTypeLabelDescription
total_skllzz_earned double

Заработано скилз за все время

total_skllzz_spent double

Потрачено скилз за все время

base_age_days int32

Начальный игровой возраст в днях (100 лет)

min_age_days int32

Минимальный игровой возраст в днях (20 лет)

max_age_days int32

Максимальный игровой возраст в днях (100 лет)

rejuvenation double

Омоложение от базового возраста в годах (depricated)

rejuvenation_days int32

Омоложение от базового возраста в днях

iamok_skllzz_earned double

Набрано скилз в отчетном периоде i am ok

iamok_skllzz_required double

Требуемый уровень skllzz для нормы i am ok

iamok_start int64

время начала периода i am ok UTC seconds (может меняться в следствии заморозки или бустера)

iamok_duration int64

продолжительность периода i am ok seconds

last_update int64

время последнего обновления статуса в utc seconds

skllzz_day_limit double

дневной лимит skllzz

iamok_uuid string

идентификатор цикла i am ok (используется в транзакциях)

sync_millis int64

время последнего обновления статуса в utc seconds

prev_iamok_uuid string

идентификатор прошлого цикла i am ok

version int32

версия структуры данных

artifacts ProfileProgress.ArtifactsEntry repeated

примененные артефакты

ProfileProgress.ArtifactsEntry

FieldTypeLabelDescription
key string

value ActiveArtifact

client/social.proto

Top

FeedRecord

Одна запись в ленте

FieldTypeLabelDescription
id string

идентификатор записи

sync_millis int64

время в миллисекундах для синхронизации

stamp_millis int64

календарное время события

friend_id string

идентификатор друга (его профиля) или клуба

transaction TransactionDetails

training TrainingSession

event ClubEvent

deleted bool

Friend

FieldTypeLabelDescription
id string

join_millis int64

sync_millis int64

active bool

InviteResult

FieldTypeLabelDescription
bonus double

Размер начисляемого бонуса

Social

Method NameRequest TypeResponse TypeDescription
ApplyInvite Link InviteResult

фиксирует в текущем профиле информацию о приглашении от пользователя и возвращает размер бонуса в случае выполнения условий

GetInviteLinkInfo Link Profile

Получает сведения о профиле по данным ссылки приглашения

MonitorFriends Friend Friend stream

Получить список друзей с изменениями позже чем sync_millis и ждать изменений если в заголовке отсутствует NOWAIT

MonitorFriend Friend Profile stream

Получить данные о друге с изменениями позже чем sync_millis и ждать изменений если в заголовке отсутствует NOWAIT

RemoveFriend Friend Friend

Удаляет из списка друзей заданного и делает тоже самое у друга в отношении себя самого

CallSupport Link Link

Обратиться в саппорт (генерирует сообщение в чат кеши от имени клиента) по сути ничего не возвращает но в дальнейшем может возвращать ссылку для редиректа

MonitorFeed FeedRecord FeedRecord stream

Получить данные о ленте изменений друзей позже чем sync_millis и ждать изменений если в заголовке отсутствует NOWAIT

PostInvites Invites Empty

Отправить приглашения пользователям (в колокольчик)

client/funds.proto

Top

FundsManage

Method NameRequest TypeResponse TypeDescription
Replenish ReplenishFundRecord ReplenishFundRecord

Сделать вклад в фонд

Subscribe FundSubscription FundSubscription

Подписаться/отписаться на фонд

client/urls.proto

Top

FieldTypeLabelDescription
domain AppLink.Domain

домен

target string

целевой url

title string

заголовок для предпросмотра

description string

описание для предпросмотра

photo string

картинка для предпросмотра

utm_compaign string

рекламная кампания

utm_source string

источник кампании

utm_medium string

идентификатар траффика кампании

utm_content string

идентификатар кампании

utm_term string

ключевое слово кампании

utm_club string

код клуба в котором создана ссылка

FieldTypeLabelDescription
url string

сокращенный url

AppLink.Domain

NameNumberDescription
auto 0

автоматический выбор

application 1

ссылка для обработки в приложении

external 2

внешняя ссылка

ShortUrls

Method NameRequest TypeResponse TypeDescription
Compact AppLink ShortLink

сокращение ссылки

Expand ShortLink AppLink

развертывание ссылки

client/discount.proto

Top

CustomOperations

Method NameRequest TypeResponse TypeDescription
PreAuth TransactionDetails TransactionDetails

Предавторизация транзакции (возвращается ее статус с учетом того что возможно это уже ранее завершенная транзакция)

Cancel TransactionDetails TransactionDetails

Отмена предавторизации. Отменяются только не завершенные операции

Confirm TransactionDetails TransactionDetails

Окончательное подтверждение. Повторные подтверждения не вызывают ошибок но и не списывают ничего

client/leaderboard.proto

Top

LeaderboardManage

Method NameRequest TypeResponse TypeDescription
Create Rules LeaderboardRole

Создание соревнования

UpdateDesign LeaderboardDesign LeaderboardDesign

Изменение оформления существующего соревнования

Join LeaderboardRole LeaderboardRole

Присоединиться соревнованию

Leave LeaderboardRole LeaderboardRole

Выйти из соревнования

MonitorRoles LeaderboardRole LeaderboardRole stream

Мониторинг списка отношений к которым принадлежит клиента (отдается список старше чем LeaderboardRelation.sync_millis)

MonitorRank LeaderboardRole LeaderboardRank stream

Мониторинг позиции участников в конкретном лидерборде (отдается список с изменениями старше чем Leaderboard.sync_millis)

Claim LeaderboardMemberClaim LeaderboardMemberClaim

Пожаловаться на участника лидерборда (при превышении порога жалоб более 50% от участников произойдет автоматическая дисквалификация)

RequestFriendship LeaderboardMember Empty

Запросить дружбу у участника соревнования

MonitorMemberProfile LeaderboardMember Profile stream

Получить и мониторить профиль участника соревнования

MonitorMemberActivity LeaderboardMemberActivity TrainingSession stream

Получить всю активность по участнику соревнования позже чем sync_millis и ждать изменений если в заголовке отсутствует NOWAIT

GetActivityDetails LeaderboardMemberActivity ActivityDetails

Получает детали по шагам или пульсу конкретной тренировки

client/oidcauth.proto

Top

AppAuthResult

FieldTypeLabelDescription
code string

direct code response

email string

via email response

push string

via push response

AuthCode

FieldTypeLabelDescription
code string

verifier string

authorization string

device_id string

client_id string

client_secret string

redirect_uri string

AuthRequest

FieldTypeLabelDescription
id string

code_challenge string

device_id string

lang string repeated

external_token ExternalToken

local_credentials LocalCredentials

ExternalToken

FieldTypeLabelDescription
jwt string

LocalCredentials

FieldTypeLabelDescription
email string

OIDCGrant

Данные по правам для клиента OIDC

FieldTypeLabelDescription
id string

идентификатор OIDC

name string

Имя клиента OIDC

logo_url string

Логотип

policy_url string

ссылка на документ по политике конфиденциальности

scope string repeated

предоставленные скопы

contacts string repeated

контакты для связи (поддержка)

stamp_seconds int64

время создания гранта в unix epoch seconds

client_id string

идентификатор клиента (lk, elari и т.д.) OIDC

device_id string

идентификатор устройства

OIDCSession

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

FieldTypeLabelDescription
id string

идентификатор OIDC сессии

url string

опциональный url для перехода

package string

опциональное имя android пакета

digest string repeated

валидные подписи пакета

TokenPermissions

список прав

FieldTypeLabelDescription
list TokenPermission repeated

UserToken

FieldTypeLabelDescription
id string

id_token string

access_token string

refresh_token string

expire_epoch_seconds int64

OIDCAuth

Method NameRequest TypeResponse TypeDescription
GetRequestInfo OIDCSession OIDCGrant

Revoke OIDCGrant OIDCGrant

GrantRequestSession OIDCSession OIDCSession

AppAuth AuthRequest AppAuthResult

ExchangeCode AuthCode UserToken

RefreshToken UserToken UserToken

client/replication.proto

Top

AppSyncRequest

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

FeedSyncRequest

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

profile_id string

идентификатор профиля

ProfileSyncRequest

FieldTypeLabelDescription
sync_seq_no int64

последний известный порядковый элемента

UpstreamRequest

FieldTypeLabelDescription
req_type UpstreamRequest.Type

тип запроса

object_id string

идентификатор элемента, если приемлемо

profile_id string

идентификатор профиля, если приемлемо

payload bytes

сериализация данных в зависимости от req_type

AppSyncRequest.Type

NameNumberDescription
unknown 0

motivation_texts 1

мотивационные тексты (замена remote config)

FeedSyncRequest.Type

NameNumberDescription
unknown 0

transaction_info 1

информация о транзакции TransactionDetails

training_info 2

информация о физической активности TrainingSession

client_feedback 3

информация о реакции на активность EventFeedback

profile_info 4

информация о профиле Profile

profile_progress 5

информация о достижениях профиля Achievements

ProfileSyncRequest.Type

NameNumberDescription
unknown 0

profile_info 1

информация о профиле Profile

club_membership 2

информация о членстве в клубе JoinRequest

friend 3

друг Friend

notification 4

нотификации для колокольчика NotificationEvent

profile_progress 5

информация о прогрессе профиля Achievements

transaction_info 6

информация о транзакции TransactionDetails

challenge_role 7

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

profile_stats 8

статистика профиля ProfileStats

user_device_id 9

информация об устройствах пользователя UserDeviceId

approve_request 10

информация о запросах на вступление в клуб ApproveRequest

artifact_shelf 11

полка с артефактами Shelf

oidc_grant 12

Внешние OIDC клиента/приложения с доступом к данным профиля OIDCGrant

fund_subscription 13

Подписка на фонд FundSubscription

document_agreement 14

согласие ProfileAgreement

UpstreamRequest.Type

NameNumberDescription
unknown 0

profile_update 1

обновление профиля Profile

client_feedback 2

реакция на активность EventFeedback

read_notification 3

реакция на прочтение события

training_info 4

информация о физической активности TrainingSession

user_device_id 5

информация об устройстве UserDeviceId

update_training_design 6

обновление данных о тренировке TrainingDesign

analytics_event 7

событие аналитики AnalyticsEvent

profile_extension 8

данные профиле в контексте клуба (код клуба в object_id)

Replication

сервис обмена данными разных уровней (везде учитывается NOWAIT)

Method NameRequest TypeResponse TypeDescription
MonitorProfile ProfileSyncRequest JournalItem stream

мониторинг журнала изменений в контексте основного профиля приложения (профиль, соревнования, клубы, друзья и пр)

MonitorProfileFeed FeedSyncRequest JournalItem stream

мониторинг журнала изменений в контексте профиля приложения (тренировки, транзакции, реакции)

MonitorApplication AppSyncRequest JournalItem stream

мониторинг журнала изменений в контексте приложения (замена remote config)

MonitorClub ClubSyncRequest JournalItem stream

мониторинг журнала изменений в контексте данных о конкретном клубе (расписание,тренеры, услуги, новости и т.д)

MonitorClubClient ClientSyncRequest JournalItem stream

мониторинг журнала изменений в контексте данных конкретного клиента в клубе (контракты, запись на занятия, персональные сообщения)

MonitorChallenge ChallengeSyncRequest JournalItem stream

мониторинг журнала изменений в контексте данных соревнования

MonitorFund FundSyncRequest JournalItem stream

мониторинг журнала изменений в контексте данных сбора средств

MonitorFundChanges FundChangesRequest JournalItem stream

мониторинг журнала истории изменений по фонду с точки зрения профиля (история пополнений, например)

MonitorChallengeMember ChallengeMemberSyncRequest JournalItem stream

мониторинг журнала изменений активности участника в соревновании

Playback UpstreamRequest JournalItem

Применяет элемент журнала действий со стороны мобильного приложения и возвращает JournalItem который клиент получит по стандартному каналу синхронизации журнала

client/notifications.proto

Top

ActivityReaction

реакция на событие физической активности

FieldTypeLabelDescription
id string

идентификатор активности

emotions Reaction.Emotion repeated

список реакций

ClubPost

FieldTypeLabelDescription
club_id string

EventFeedback

FieldTypeLabelDescription
id string

уникальный идентификатор сессии

reactions Reaction repeated

набор реакций тип реакции для аналитики (шаги, тренировка, событие в ленте, новость от клуба)

FiscalOperation

Чек по операции

FieldTypeLabelDescription
link string

ссылка на онлайн чек

InviteRequest

FieldTypeLabelDescription
link string

сама ссылка приглашение

type InviteRequest.Type

подсказка по типу приглашения

Invites

FieldTypeLabelDescription
title string

опционально заголовок для отображения в приглашении

description string

опционально развернутое описание связанное с приглашением

icon_url string

опционально адрес иконки/картинки связанный с приглашением

invite_request InviteRequest

описание приглашения

friend_ids string repeated

список идентификаторов друзей

MarketItem

произвольное действие с переходом по ссылке

FieldTypeLabelDescription
pos_id string

идентификатор точки продаж

pos_name string

идентификатор точки продаж

logo string

логотип точки продаж

club_id string

идентификатор клуба

category PosCategory

категория товара

NotificationEvent

Объект нотификаций для колокольчика

FieldTypeLabelDescription
id string

идентификатор события

club_id string

код клуба отправителя

profile_id string

id профиля отправителя

seen bool

метка о прочтении

epoch_seconds int64

время нотификации

activity_reaction ActivityReaction

invite_request InviteRequest

fiscal_operation FiscalOperation

url_action UrlAction

market_item MarketItem

replenish_fund ReplenishFundRecord

title string

опционально заголовок для отображения в приглашении

description string

опционально развернутое описание связанное с приглашением

icon_url string

опционально адрес иконки/картинки связанный с приглашением

Reaction

FieldTypeLabelDescription
emotion Reaction.Emotion

эмоция

count int32

количество

details Reaction.Analytics

Reaction.Analytics

FieldTypeLabelDescription
activity TrainingSession.Type

физическая активность

artifact Artifact.Type

использование артефакта

club_post ClubPost

сообщение от клуба

transaction TransactionDetails.Type

транзакция

UrlAction

произвольное действие с переходом по ссылке

FieldTypeLabelDescription
link string

ссылка для перехода

InviteRequest.Type

NameNumberDescription
other 0

friend 1

competition 2

community 3

fund 4

Reaction.Emotion

NameNumberDescription
unknown 0

неизвестная реакция

applause 1

love 2

wow 3

fire 4

tada 5

asset/videos.proto

Top

VideoStreamChunk

блок данных видео

FieldTypeLabelDescription
video_stream_id string

идентификатор видео

position int64

позиция порции данных

blob bytes

содержимое порции данных потока

VideoStreamInfo

FieldTypeLabelDescription
id string

идентификатор потока

duration_seconds int32

продолжительность видео

stage VideoStreamInfo.Stage

стадия обработки видео

progress float

прогресс текущей стадии в процентах (от 0 до 100)

size int64

размер файла текущей стадии

url string

адрес доступа к ресурсу (применимо к стадии ready)

creator_uid string

id профиля создавшего видео

folder_id string

идентификатор оригинальной папка владельца

VideoStreamInfo.Stage

NameNumberDescription
unknown 0

uploading 1

queued 2

preparing 3

ready 4

error 5

VideoStreams

сервис загрузки видео

Method NameRequest TypeResponse TypeDescription
UploadVideoStreamChunk VideoStreamChunk Empty

Загрузка видео

asset/assets.proto

Top

DataUrl

FieldTypeLabelDescription
url string

адрес итогового ресурса или пустота если не получилось

ImageData

блок данных картинки

FieldTypeLabelDescription
blob bytes

содержимое картинки (в формате jpg, png и т.д)

Assets

сервис загрузки ассетов (картинок)

Method NameRequest TypeResponse TypeDescription
UploadImage ImageData stream DataUrl

Загрузка картинок

cv/recognition.proto

Top

Digits

FieldTypeLabelDescription
data string

найденые цифры

Image

FieldTypeLabelDescription
data bytes

данные jpg/png

Recognition

Сервис распознавания образов

Method NameRequest TypeResponse TypeDescription
RecognizeDigits Image Digits

club/locker.proto

Top

Locker

Шкафчик/ячейка

FieldTypeLabelDescription
id string

идентификатор ячейки или аренды, в зависимости от контекста

name string

название/ячейки (номер)

state Locker.State

состояние

is_rent_free bool

признак доступности для аренды

rent_interval Int64Range

интервал аренды в epoch seconds

LockerId

FieldTypeLabelDescription
club_id string

идентификатор клуба

relative_id string

идентификатор родственника

zone_id string

идентификатор зоны

locker_id string

идентификатор ячейки

LockerZone

Описание зоны ячеек

FieldTypeLabelDescription
id string

идентификатор

name string

название зоны

descriptions string

описание зоны

lockers Locker repeated

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

Locker.State

NameNumberDescription
undefined 0

locked 1

unlocked 2

club/fitpro.proto

Top

ClientOnlineDataRequest

структура для запроса данных в режиме online

FieldTypeLabelDescription
club_id string

идентификатор клуба, он же код клуба для подключения в интерфейсе (atmo, ultra и т.п)

club_relative_id string

relative club client id (or empty for self)

online_data_type ClientOnlineDataRequest.Type

тип запрашиваемых данных

object_id string

опциональный идентификатор запрашиваемого объекта

ClientOnlineDataResponse

ответ с данными в режиме online

FieldTypeLabelDescription
stamp_millis int64

epoch millis время актуализации данных

ttl_millis int64

epoch millis время до которого объект имеет смысл

data bytes

содержимое объекта в соответствии с запрашиваемым типом

ClientSyncRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба, он же код клуба для подключения в интерфейсе (atmo, ultra и т.п)

sync_seq_no int64

последний известный порядковый элемента

club_relative_id string

relative club client id (or empty for self)

active_client_id string

текущий клиент в приложении (для оптимизации запросов синхронизации)

ClubSyncRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба, он же код клуба для подключения в интерфейсе (atmo, ultra и т.п)

sync_seq_no int64

последний известный порядковый элемента

JoinResponse

FieldTypeLabelDescription
club ClubInfo

client ClientInfo

ClientOnlineDataRequest.Type

NameNumberDescription
dynamic_qr 0

Данные о динамическом QR коде ClientStaticQr

ClientSyncRequest.Type

NameNumberDescription
unknown 0

client_info 1

информация о клиенте ClientInfo

services 2

информация о сервисах клиента ServiceInfo

appointments 3

информация о записях клиента на занятия Appointment

debts 4

долги клиента DebtInfo

offers 5

информация о доступных клиенту услугах OfferInfo

visits 6

информация о посещениях клуба

personal_event 7

персональное событие/новость ClubEvent

club_poll 8

информация об опросе по клубу ClubPoll

cache_flow 9

информация о движении средств по счетам CashFlow

locker_zone 10

информация по текущим зонам с арендой ячеек LockerZone

profile_extension 11

Данные о профиле в контексте клуба ProfileExtension

ClubSyncRequest.Type

NameNumberDescription
unknown 0

club_info 1

информация о клубе ClubInfo

appointment 2

элемент расписания Appointment

trainer 3

данные о тренере

price 4

данные об услугах клуба OfferInfo

event 5

событие/новости ClubEvent

appointment_slot 6

возможность записи к тренеру, элемент расписания Appointment

pos_info 7

точки продаж клуба PosDetails

roi_info 8

регионы интереса RoiDetails

club_load 9

загрузка клуба ClubLoad

challenge_info 10

информация о соревновании в клубе Challenge

room 11

Данные о помещениях (для бронирования)

room_free_slot 12

Данные о свободных слотах при бронировании помещений RoomFreeSlot

locker_zone 13

Данные о свободных зонах и ячейках LockerZone

challenge_template 14

Шаблон соревнования ChallengeTemplate

fund_info 15

Данные о сборе средств Fund

cities_info 16

Данные со списком городов

dictionary_values 17

значения справочника

FitPlus

основной клиентский сервис для синхронизации мобильного приложения с блоком клубной интеграции

Method NameRequest TypeResponse TypeDescription
MonitorClubs ClubInfo ClubInfo stream

мониторинг принадлежности клиента клубам (учитывается NOWAIT). возвращается только поля id,sync_seq_no и deleted

MonitorClub ClubSyncRequest JournalItem stream

мониторинг журнала изменений общих данных по клубу (расписание и т.д JournalItem.type из ClubSyncRequest.Type ) (учитывается NOWAIT)

MonitorClient ClientSyncRequest JournalItem stream

мониторинг журнала изменений по клиенту (профиль, контракты, запись на занятия и т.д из ClintSyncRequest.Type ) (учитывается NOWAIT)

JoinClub JoinRequest JoinResponse

подключение к клубу по коду клуба и номеру телефона клиента

LeaveClub LeaveRequest LeaveRequest

отключение от клуба по коду клуба

GetClubInfo ClubInfo ClubInfo

Запрашиваем информацию по клубу с кодом ClubInfo.id

AcceptAgreements AgreementList AgreementList

Предоставить согласие с указанными документами

RevokeAgreement ProfileAgreement ProfileAgreement

Отозвать согласие с указанным документом

ClientOnlineData ClientOnlineDataRequest ClientOnlineDataResponse stream

Получение данных реального времени

club/actions.proto

Top

BuyRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

service_id string repeated

идентификаторы услуги

trainer_id string

идентификатор тренера/сотрудника выбранного для услуги

account_id string repeated

список счетов с которых попробовать списать задолженность (в случае пустоты бэк выберет сам)

appointment_id string

опционально идентификатор занятия для которого приобретается услуга (будет автоматически произведена запись на него)

price_type_id string

опционально тип цены за которую приобретается услуга

club_relative_id string

relative club client id (or empty for self)

allowed_account_id string repeated

список идентификаторов счетов с которых можно списывать (если пусто то со всех)

contract_id string

идентификатор контракта выбранного для услуги, если она его требует (см Offer.contract_specific)

promo_code string

клиент указал промокод ля покупки

certificate string

клиент предоставил сертификат для покупки

room_reserve ClubRoomReservation

опционально данные о бронировании помещения после успешно оплаты

service_count BuyRequest.ServiceCountEntry repeated

опциональное количество покупаемых услуг по их ид

BuyRequest.ServiceCountEntry

FieldTypeLabelDescription
key string

value double

ChargeRequest

FieldTypeLabelDescription
id string

uid идентификатор пополнения (опциональный, если не задан бэк его назначит самостоятельно)

club_id string

идентификатор клуба

account_id string

идентификатор пополняемого счета

amount float

сумма пополнения

description string

описание пополнения

club_relative_id string

relative club client id (or empty for self)

ChargeResponse

FieldTypeLabelDescription
id string

uid идентификатор

url string

url для перехода

ClubAppointment

FieldTypeLabelDescription
club_id string

идентификатор клуба

appointment_id string

идентификатор мероприятия (занятия)

club_relative_id string

relative club client id (or empty for self)

ContractFreezeRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

contract_id string

идентификатор контракта

days int32

число дней заморозки

freeze_id string

опциональный идентификатор самой заморозки

club_relative_id string

relative club client id (or empty for self)

first_epoch_day int32

epoch day (номер дня с полуночи (00:00:00) 1 января 1970 года) с которого начнется заморозка, если 0 то с ближайшего возможного

DeviceId

FieldTypeLabelDescription
club_id string

идентификатор клуба

device_id string

идентификатор устройства

PayRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

debt_id string repeated

идентификаторы задолженности

account_id string repeated

список счетов с которых попробовать списать задолженность (в случае пустоты бэк выберет сам)

club_relative_id string

relative club client id (or empty for self)

UpdatePollRequest

данные об опросе клиента внутри клуба

FieldTypeLabelDescription
club_id string

идентификатор клуба

state ClubPoll.State

данные по опросу

VideoItem

FieldTypeLabelDescription
club_id string

идентификатор клуба

online_category OnlineClass.Category

категория видео

name string

название видео

FitPlusClientActions

клиентский сервис для синхронного взаимодействия с клубом

Method NameRequest TypeResponse TypeDescription
ReserveAppointment ClubAppointment ClubAppointment

Резервирование мероприятия (запись на тренировку)

CancelAppointment ClubAppointment ClubAppointment

Отмена резерва мероприятия (запись на тренировку)

FreezeContract ContractFreezeRequest ContractFreezeRequest

Заморозка контракта

UnfreezeContract ContractFreezeRequest ContractFreezeRequest

Отмена заморозки контракта

PayDebt PayRequest PayRequest

Оплата задолженности с лицевого счета клиента

BuyService BuyRequest BuyRequest

Покупка услуги

ChargeAccountWeb ChargeRequest ChargeResponse

Пополнение счета через веб страницу

UpdatePoll UpdatePollRequest ClubPoll.State

Обновление данных по опросу

ReportViewVideo VideoItem VideoItem stream

Учет просмотра видео (метод висит в пока клиент смотрит видео)

AssignPassDevice DeviceId DeviceId

Регистрация пользовательского устройства как источника QR

ReserveRoom ClubRoomReservation ClubRoomReservation

Резервирование помещений

LockReserve LockerId LockerId

Резервирование ячеек в зоне

LockRelease LockerId LockerId

Освобождение ячейки

LockOpen LockerId LockerId

Запросить открыть замок ячейки

club/messages.proto

Top

AdoptedAsset

FieldTypeLabelDescription
url string

адрес итогового ресурса или пустота если не получилось

AssetData

FieldTypeLabelDescription
key string

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

blob bytes

содержимое картинки (в формате jpg, png и т.д)

AssetUrl

FieldTypeLabelDescription
key string

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

url string

адрес ресурса для кеширования (адоптации)

ClubDetails

FieldTypeLabelDescription
name string

название клуба

timezone string

временная зона клуба

logo_url string

логотип клуба

address string

фактический адрес клуба

work_time string

время работы

header_url string

картинка заголовка клуба

analytics_url string

адрес страницы с аналитикой

ClubInfoRequest

FieldTypeLabelDescription
key string

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

EventEntity

FieldTypeLabelDescription
key string

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

id string

опциональный идентификатор (если его не использовать, то он будет сгенерирован) в противном случае это позволяет исправить ранее отправленное сообщение с данным идентификатором

phones string repeated

список телефонов получателей сообщения (если пустой, то глобально для всех клиентов клуба)

when google.protobuf.Timestamp

опционально запланированное время публикации события, если не указано то прямо сейчас

ttl google.protobuf.Timestamp

опционально время жизни события, если указано то после заданного времени событие пропадет из видимых на стороне клиента

is_main bool

признак главной новости/события

title string

заголовок новости/события

text string

основной текст новости/события

header_url string

опционально url картинки для фона к новости/событию

logo_url string

опционально url картинки тематического лого к новости/событию

action_url string

опционально url для перехода во внешний ресурс по клику на событие/новость

with_push bool

признак необходимости сопроводить данную новость пушем в приложении

static_content StaticContent

опциоональная настройка отображения главной новости на главной странице

template bool

поля содержат шаблон

PostResult

FieldTypeLabelDescription
id string

идентификатор опубликованной новости

PostedEntity

FieldTypeLabelDescription
key string

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

id string

идентификатор опубликованной новости

ClubEvents

интеграционный сервис для информирования клиентов о событиях клуба

Method NameRequest TypeResponse TypeDescription
Post EventEntity PostResult

Размещение новости клуба

Format EventEntity EventEntity

Возвращает переформатированое событие с учетом тегов внутри текста сообщения допустимые теги: #title - переопределяет EventEntity.title #picture или #image - переопределяет EventEntity.header_url #logo - переопределяет EventEntity.logo_url #action - переопределяет EventEntity.action_url #main - переопределяет EventEntity.is_main #push - переопределяет EventEntity.with_push #ttl - переопределяет EventEntity.ttl. Либо число дней либо строка точной даты вида 2006-01-02 15:04

UnPost PostedEntity EventEntity

Отзыв или снятие новости с публикации, если она уже была опубликована Возвращает исходные данные по публикации

AdaptAsset AssetUrl AdoptedAsset

Адаптация ресурса (картинки) для размещения в новости

UploadAsset AssetData AdoptedAsset

Загрузка ресурса (картинки) для размещения в новости

Retrieve EventEntity EventEntity

Возможность получение данных о ранее отправленной новости по ее id

List EventEntity EventEntity stream

Список 100 ранее отправленных новостей

ClubInfo ClubInfoRequest ClubDetails

Данные о клубе

club/rooms.proto

Top

ClubRoomReservation

FieldTypeLabelDescription
club_id string

идентификатор клуба

slot_id string

идентификатор тайм слота помещения (RoomFreeSlot.id)

club_relative_id string

relative club client id (or empty for self)

required_minutes IntRange

запрашиваемый диапазон минут от начала дня

comments string

комментарий к резерву

resource_id string repeated

запрашиваемые идентификаторы ресурсов к аренде

Room

помещение

FieldTypeLabelDescription
id string

идентификатор помещения

title string

название помещения

description string

Описание помещения

header_url string

картинка помещения

category_name string

название категории помещения

category_id string

идентификатор категории помещения

tags Room.TagsEntry repeated

кастомные метки

order int32

порядок вывода

Room.TagsEntry

FieldTypeLabelDescription
key string

value string

RoomFreeSlot

Слот

FieldTypeLabelDescription
id string

идентификатор слота

room_id string

идентификатор помещения

rent_quant_minutes int32

Deprecated. минимальный интервал тарификации в минутах (0 не задан, можно считать равным 1)

day int64

эпоходень

free_minutes IntRange repeated

Deprecated. интервалы свободного времени в минутах относительно начала дня см free_slots

available_interval_minutes IntRange

Время внутри дня в котором распределяются слоты,

service_id string

идентификатор сервиса (опционально)

service_name string

идентификатор сервиса (опционально)

free_slots TimeSlot repeated

расширенная информация по свободным слотам

cost float

цена полного интервала (опционально)

services RoomSlotService repeated

дополнительные сервисы связанные с этой арендой

Fields with deprecated option

Name Option
rent_quant_minutes

true

free_minutes

true

RoomResource

FieldTypeLabelDescription
id string

Идентификатор ресурса

title string

Название ресурса

photo_url string

опциональная фотка ресурса

is_busy bool

опциональный признак занятости ресурса

RoomResources

FieldTypeLabelDescription
resource RoomResource repeated

список ресурсов

RoomSlotService

FieldTypeLabelDescription
service_id string

идентификатор сервиса

service_name string

название сервиса

TimeSlot

Слот

FieldTypeLabelDescription
minutes IntRange

интервалы свободного времени в минутах относительно начала дня

cost float

цена полного интервала (опционально)

atomic bool

если true то можно купить только целиком за полную стоимость

rent_quant_minutes int32

минимальный интервал тарификации в минутах (0 не задан, можно считать равным 1)

club/callbacks.proto

Top

AAChangeDetails

FieldTypeLabelDescription
notification_id string

уникальный идентификатор запроса (uuid v4 генерируется на отправляемой стороне и должен быть уникальным для каждого запроса, повторный вызов метода с тем же uid будет игнорирован без сообщений об ошибке)

notification_reason AAChangeDetails.NotificationReason

причина нотификации

club_id string

идентификатор клуба

person_id string

опциональный идентификатор клиента

custom_data AAChangeDetails.CustomDataEntry repeated

любые произвольные данные

AAChangeDetails.CustomDataEntry

FieldTypeLabelDescription
key string

value string

AcceptResult

ChangeDetails

FieldTypeLabelDescription
id string

уникальный идентификатор запроса (uuid v4 генерируется на отправляемой стороне и должен быть уникальным для каждого запроса, повторный вызов метода с тем же uid будет игнорирован без сообщений об ошибке)

sender_id string

идентификатор отправителя (в зависимости от CRM)

club ChangeDetails.Club

изменение данных контекста клуба

client ChangeDetails.Client

изменение данных контекста клиента

signature string

опциональная подпись запроса Sha256Sum(id+":"+sender_id+":"+SharedSecret)

ChangeDetails.Client

FieldTypeLabelDescription
hint ChangeDetails.Client.Hint

уточнение какие данные требуется обновить

client_id string

идентификатор клиента в клубном ПО

object_id string repeated

опциональные идентификаторы изменяемых объектов (зависит от Hint, если Appointments или WaitList то это appointment_id и т.д.)

ChangeDetails.Club

FieldTypeLabelDescription
hint ChangeDetails.Club.Hint

уточнение какие данные требуется обновить

AAChangeDetails.NotificationReason

NameNumberDescription
Unknown 0

не известный тип уведомления

ServicePriceListChanged 1

изменение в прейскуранте услуг

ContractPriceListChanged 2

изменение в прейскуранте контрактов

GroupLessonsScheduleChanged 3

изменение в расписании групповых занятий

FacilityStateChanged 4

изменение в статуса клуба

ServiceCategoryChanged 5

Изменение классификатора услуг

RoomDescriptionChanged 6

Изменение описания помещений

LessonDescriptionChanged 7

Изменение описания типов занятий

ProfessionalDataChanged 8

Изменение тренерского состава

PersonContractsChanged 9

Изменение контракта клиента

PersonVisitsChanged 10

изменились данные по визитам клиента

PersonBlocksChanged 20

изменились данные по услугам клиента

ProfessionalTimeTableChanged 21

Обновлено расписание профессионалов 6.10

PersonAccountsChanged 22

Обновлено описания лицевых счетов персоны 3.1

PersonUnpaidSalesChanged 23

Обновлено описание неоплаченных услуг персоны 4.8

Common 1000

общее уведомление,будут обновлены все возможные данные контекста клуба

ChangeDetails.Client.Hint

подсказка о том какой блок данных был затронут изменениями, и что требуется обновить на стороне "МойФитнес"

используется для дополнительной минимизации API вызовов.

NameNumberDescription
Unknown 0

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

Appointments 1

персональные занятия

WaitList 2

изменения в листе ожидания

Services 3

перечень доступных услуг, данные о контракте

Debts 4

долги

Visits 5

визиты

Accounting 6

любые изменения в движении денежных средств клиента, включая изменения любых лицевых счетов

Rent 7

изменения в объектах аренда (помещения, корты и пр)

Locker 8

изменения в объектах ячейки/шкафчика

All 1000

будут обновлены все возможные данные контекста клиента

ChangeDetails.Club.Hint

подсказка о том какой блок данных был затронут изменениями, и что требуется обновить на стороне "МойФитнес"

используется для дополнительной минимизации API вызовов.

NameNumberDescription
Unknown 0

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

Appointments 1

расписание и групповые занятия

TimeSlots 2

таймслоты для записи на индивидуальные занятия

Trainers 3

тренерский состав

Price 4

прайс лист, услуги

Lockers 5

общая нотификация об изменении в ячеках

All 1000

будут обновлены все возможные данные контекста клуба

Callbacks

сервис для нотификации изменений в данных клубного ПО.

Метод ничего не возвращает в случае успеха, ошибки возвращаются через стандартный механизм кодов ответа, с детализацией внутри ответа body

Method NameRequest TypeResponse TypeDescription
NotifyChanges ChangeDetails AcceptResult

NotifyAAChanges AAChangeDetails AcceptResult

Метод нотификаций для AA

club/mentor.proto

Top

MentorJoinResponse

FieldTypeLabelDescription
club ClubInfo

trainer TrainerInfo

Mentor

основной тренерский сервис для синхронизации мобильного приложения с блоком клубной интеграции

Method NameRequest TypeResponse TypeDescription
JoinClub JoinRequest MentorJoinResponse

подключение к клубу по коду клуба и номеру телефона клиента

club/news.proto

Top

ClubEvent

Событие или сообщение от клуба

FieldTypeLabelDescription
id string

идентификатор сообщения

title string

заголовок

text string

текст сообщения

main bool

признак главной новости

logo_url string

маленькое лого к сообщению (опционально)

header_url string

основная картинка к сообщению (опционально)

action_url string

ссылка действие для перехода по клику на новость (опционально)

stamp_epoch_seconds int64

дата и время новости для отображения в общем списке

with_push bool

отправлять пуш для этого сообщения

ttl_stamp_epoch_seconds int64

дата и время истечения актуальности для новости (0 - без срока давности)

club_id string

static_content StaticContent

настройка отображения главной новости на главной странице

template bool

содержит шаблон

club/trainers.proto

Top

Department

подразделение

FieldTypeLabelDescription
id string

идентификатор подразделения

title string

название подразделения

Position

должность

FieldTypeLabelDescription
id string

идентификатор должности

title string

название должности

TrainerInfo

данные по тренеру

FieldTypeLabelDescription
id string

идентификатор

name string

полное имя тренера

contact string repeated

доступные контакты

photo_url string

адрес фотографии

position Position

данные должности

department Department

данные основного подразделения (полный список в поле departments)

sync_seq_no int64

порядковый номер изменения

first_name string

имя тренера

last_name string

фамилия тренера

middle_name string

отчество тренера

description string

описание тренера

tags TrainerInfo.TagsEntry repeated

кастомные метки

photo_align ImageAlign

выравнивание фото

departments Department repeated

список всех подраздалений к которым относится тренер

deleted bool

TrainerInfo.TagsEntry

FieldTypeLabelDescription
key string

value string

club/schedule.proto

Top

Appointment

отдельно взятое занятие

FieldTypeLabelDescription
id string

идентификатор занятия

service Service

предоставляемая услуга

status Appointment.Status

статус занятия

stamp_seconds int64

время начала занятия в epoch seconds

duration_seconds int64

продолжительность занятия в секундах

group Group

int64 sync_seq_no = 6; // порядковый номер изменения группа

room Room

помещение

trainer TrainerInfo

данные по тренеру

class Appointment.Class

тип занятия (персональное, групповое, бронирование)

pre_reserve bool

Deprecated. требует предварительной записи (используется reserve_action)

cost float

занятие за доп плату (0 если бесплатное)

capacity int32

максимальное количество участников (0 не ограничено)

free_slots int32

количество свободных мест в случае предварительной регистрации (-1 если не известно или не ограничено)

reserve_id string

идентификатор записи на занятие (пустой если клиент не записан)

commercial bool

признак платного урока

online_class_url string

url для трансляции занятия

epoch_day int32

epoch day занятия

epoch_day_day_seconds int32

старт занятия в секундах относительно начала дня

online_class_category OnlineClass.Category

категория онлайн занятия

reserve_action Appointment.ReserveAction

возможные действия по брони

booking_window_seconds Int64Range

время в epoch seconds начала и окончания возможности записи на занятие (если 0 то не задано)

wait_list_message string

сообщение клиенту в связи с ожиданием, например: Вы добавлены в лист ожидания. Ваш номер в очереди: 1

in_cities_id string

id списка городов присутствия (если пусто то без ограничений)

sort_priority int32

приоритет в сортировке, они же популярные занятия (0 - без приоритета)

resource RoomResource repeated

Запрошенные ресурсы в случае бронирования

deleted bool

признак удаления

version int32

версия структуры

Fields with deprecated option

Name Option
pre_reserve

true

Appointments

FieldTypeLabelDescription
list Appointment repeated

AppointmentsDay

список всех мероприятий на день

FieldTypeLabelDescription
list Appointment repeated

day int64

порядковый номер дня

Group

направление или группа занятий

FieldTypeLabelDescription
id string

идентификатор группы

title string

название группы

logo_url string

лого для группы (не обязательно)

header_logo_url string

лого для группы (не обязательно)

tags string repeated

список кастомных меток у предложений для этой группы

parent_id string

идентификатор родительского элемента в случае организации древовидной структуры

OnlineClass

FieldTypeLabelDescription
start string

category OnlineClass.Category

OnlineStrategy

FieldTypeLabelDescription
restrictions ScheduleRestrictions repeated

classes OnlineClass repeated

ScheduleRange

FieldTypeLabelDescription
key string

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

from google.protobuf.Timestamp

начальный интервал

till google.protobuf.Timestamp

конечный интервал

ScheduleRestrictions

FieldTypeLabelDescription
week_days WeekDaysRestriction

Service

отдельно взятая услуга

FieldTypeLabelDescription
id string

идентификатор услуги

title string

краткое название услуги

description string

описание услуги

course Group

группа услуг

tags Service.TagsEntry repeated

кастомные метки

kkal IntRange

расход калорий

for_age IntRange

ограничение по возрасту

difficulty Service.Difficulty

уровень сложности

Service.TagsEntry

FieldTypeLabelDescription
key string

value string

Trainers

FieldTypeLabelDescription
list TrainerInfo repeated

TrainersRange

FieldTypeLabelDescription
key string

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

WeekDaysRestriction

FieldTypeLabelDescription
day WeekDaysRestriction.Day repeated

Appointment.Class

NameNumberDescription
in_group 0

personal 1

booking 2

Appointment.ReserveAction

NameNumberDescription
none 0

никуда не записаны, никакие действия не доступны

can_cancel_assign 1

записаны на занятие, можно выписаться

can_assign 2

есть свободные места, может записаться

can_add_wait 3

нет мест, может добавиться в лист ожидания

can_cancel_wait 4

находится в листе ожидания и может из него удалиться

can_confirm_wait 5

подошла очередь в листе ожидания и можно подтвердить или отменить запись

no_free_slots 6

мест нет, никаких других действий не доступно

Appointment.Status

NameNumberDescription
active 0

canceled 1

OnlineClass.Category

SHORT - короткие занятия до 20 минут

MEDIUM - обычные занятия менее 40 минут

LONG - долгие занятия более 40 минут

NameNumberDescription
UNKNOWN 0

CARDIO_SHORT 1020

CARDIO_MEDIUM 1040

CARDIO_LONG 1060

STRETCH_SHORT 2020

STRETCH_MEDIUM 2040

STRETCH_LONG 2060

POWER_SHORT 3020

POWER_MEDIUM 3040

POWER_LONG 3060

DANCE_SHORT 4020

DANCE_MEDIUM 4040

DANCE_LONG 4060

Service.Difficulty

уровень сложности

NameNumberDescription
unknown 0

не определен

easy 1

простой

medium 2

средний

hard 3

сложный

WeekDaysRestriction.Day

NameNumberDescription
Sunday 0

Monday 1

Tuesday 2

Wednesday 3

Thursday 4

Friday 5

Saturday 6

ClubSchedule

интеграционный сервис для получения информации о расписании клуба

Method NameRequest TypeResponse TypeDescription
List ScheduleRange Appointments

запрос данных о расписании

TrainersInfo

интеграционный сервис для получения информации о тренерах клуба

Method NameRequest TypeResponse TypeDescription
List TrainersRange Trainers

запрос данных о тренерском составе

club/integration.proto

Top

AACredentials

FieldTypeLabelDescription
login string

логин

passwd string

пароль

club_id string

код клуба

ClubIntegration

FieldTypeLabelDescription
info ClubInfo

payment_method PaymentMethod repeated

Способы оплаты допустимые способы оплаты

clubis ClubisCredentials

craft CraftCredentials

helix HelixCredentials

test TestCredentials

universe UniverseCredentials

corp CorpRestrictions

tng TngCredentials

aa AACredentials

telegram_care_chat_id int64

идентификатор чата службы заботы

telegram_technical_chat_id int64

идентификатор чата технического канала

report_api_error bool

отправлять выявленные ошибки в работе API в бот (если задан технический то в него, иначе в канал заботы).

api_concurrency int32

максимальное количество одновременных вызовов к api

qr_settings QrSettings

настройки отображения QR Кода

enable_new_clients bool

разрешить регистрацию новых клиентов (если клубное по это позволяет)

ext_auth RequireExtAuth

требования по наличию внешней авторизации

messaging_api_key string

schedule_api_key string

notifications_api_key string

ClubisCredentials

https://docs.google.com/spreadsheets/d/1xq7LRppcUcE20Ll1VDhUVb27Hqt-wWCli0Q-MWhjwDc/edit#gid=1249278733

FieldTypeLabelDescription
endpoint string

адрес для REST

user_id string

user_hash string

club_id string

default_client_id string

pre_entry_all_classes bool

режим обязательной записи на все классы

basic_login string

basic_passwd string

CorpRestrictions

FieldTypeLabelDescription
phones string repeated

CraftCredentials

https://docs.google.com/spreadsheets/d/1Bj2RHgTYwq1tCEeF8KdHBTir4y8apMxxPUReHr8c8nQ/edit#gid=0

FieldTypeLabelDescription
endpoint string

адрес для REST

basic_login string

basic_passwd string

club_id string

default_client_id string

HelixCredentials

https://fitness1cv3.docs.apiary.io/#reference/0/passtoken/0

FieldTypeLabelDescription
endpoint string

адрес для REST

basic_login string

basic_passwd string

shared_secret string

общий ключ для метода авторизации приложения

api_key string

общий ключ апи

club_id string

идентификатор клуба

photo_url_base_prefix string

база для относительных адресов у картинок

allow_client_from_other_club_id bool

разрешать подключаться клиентам заведенных в других структурных единицах

extend_description_with_limits bool

добавлять в описание данные об ограничениях услуги

extend_description_with_biography bool

добавлять в описание тренера данные биографии

extend_description_with_awards bool

добавлять в описание тренера данные о наградах

enable_personal_price bool

запрашивать персональные прасы (синхронизация услуг на уровне клиента)

QrSettings

настройки отображения QR Кода

FieldTypeLabelDescription
disabled bool

запрет на вывод данных о qr коде в приложении

shared_secret string

общий ключ/секрет для режима JWT кодирования с подписью, если не задан то qr содержит код карты как есть

qr_ttl_seconds int32

время жизни JWT qr кода в секундах, если 0 то по умолчанию 15 минут.

single_device bool

разрешить QR код только на одном устройстве клиента

TestCredentials

FieldTypeLabelDescription
Arg0 string

Arg1 string

TngCredentials

https://docs.google.com/spreadsheets/d/132LdRnMdcrbvpZFaIMu17BdlH7U5AiqzWd10sAZFGio/edit#gid=0

FieldTypeLabelDescription
endpoint string

адрес для REST

UniverseCredentials

https://fitness1cv3.docs.apiary.io/#reference/0/passtoken/0

FieldTypeLabelDescription
endpoint string

адрес для REST

basic_login string

basic_passwd string

api_key string

логин для получения ключа сессии

api_pass string

пароль для получения ключа сессии

sell_inactive_cards bool

не активировать карты при продаже

club/club.proto

Top

ApproveRequest

FieldTypeLabelDescription
id string

идентификатор запроса

club_client_id string

идентификатор клиента на стороне клуба

club_id string

идентификатор клуба

linked_phone string

номер по которому клиент значится в клубе

profile Profile

профиль который увидит клуб в разделе запросов

app_code string

идентификатор приложения

rejected bool

признак отклоненного запросв

reject_reason string

причина отклонения запроса (может быть пустой)

stamp_seconds int64

время создания запроса epoch seconds

profile_extension ProfileExtension

Расширенные данные по профилю

deleted bool

признак удаленного элемента

seq_no int64

порядковый номер синхронизации (используется только в методах мониторинга)

AreaDesign

FieldTypeLabelDescription
photo_align ImageAlign

выравнивание фото (сделано для того, чтобы изображение работало в разных соотношениях сторон)

opacity float

непрозрачность (число от [0; 1], где 1 - максимально полноцветное изображение, 0 - полностью прозрачное)

aspect_ratio float

соотношение сторон, например: 1/1, 16/9, 4/3

CashFlow

FieldTypeLabelDescription
id string

идентификатор операции

account_id string

идентификатор счета по которому прошла операция

account_name string

название счета по которому прошла операция

is_bonus_account bool

признак того что операция прошла по бонусному счету

type CashFlow.Type

тип движения

amount float

сумма

description string

описание операции

stamp_seconds int64

отметка времени в unix epoch seconds

ClientDeposit

данные о депозитном счете клиента

FieldTypeLabelDescription
id string

идентификатор счета

name string

Название счета

amount float

остаток на счете

label string

Краткое название счета в приложении

is_bonus bool

признак бонусного счета

ClientDynamicQr

FieldTypeLabelDescription
card_number string

значение кода

update_stamp int64

epoch seconds время получения кода (0 - еще не получен)

ttl_stamp int64

epoch seconds когда он истекает (0 - бессрочно)

ClientInfo

данные о клиенте на стороне клуба

FieldTypeLabelDescription
skllzz_id string

идентификатор клиента в skllzz (profile_id)

id string

идентификатор клиента на стороне клуба

club_id string

идентификатор клуба

first_name string

имя клиента

last_name string

фамилия клиента

middle_name string

отчество клиента

sex Sex

пол клиента

birth_date int32

epoch day (день с полуночи (00:00:00 UTC) 1 января 1970 года)

deposit ClientDeposit repeated

счета клиента (депозитные, бонусный и т.д.)

relatives ClientRelative repeated

родственники клиента

club_phone_number string

номер телефона клиента по данным клуба

pass_id ClientPassId

данные для авторизации на проходе в клуб

ClientMembership

членство в клубе

FieldTypeLabelDescription
frozen_left int32

Deprecated. количество оставшихся единиц заморозки для этой услуги. см. FreezingInfo

guest_left int32

количество гостевых визитов оставшихся для этой услуги

freezings Freezing repeated

Deprecated. предстоящие или действующие заморозки. см. FreezingInfo

visits_left int32

остаток посещений

limited_visits bool

признак того что количество посещений ограничено (есть смысл выводить visits_left)

Fields with deprecated option

Name Option
frozen_left

true

freezings

true

ClientPackage

клиентский пакет услуг

FieldTypeLabelDescription
count int32

доступное количество

ClientPassId

данные для авторизации на проходе

FieldTypeLabelDescription
device_id string

идентификатор разрешенного устройства, если пусто то любое, если "?" то требуется запросить связь через AssignPassDevice, в противном случае значение самого id устройства на котором разрешено показывать qr

qr string

dynamic_qr DynamicQr

dynamic_api bool

динамический код через api (сам код брать из контекста клиента клуба ClientStaticQr )

ClientRelative

родственники клиента

FieldTypeLabelDescription
id string

идентификатор родственника

name string

имя родственника

ClubContact

контакт клуба

FieldTypeLabelDescription
label string

метка

url string

url адрес для перехода

action ClubContact.Action

действие, подразумеваемое контактом - соц. сеть это или поддержка

ClubDocument

дополнительные документы клуба

FieldTypeLabelDescription
label string

метка

url string

url адрес для перехода

required_agreement bool

выводить документ как обязательный для соглашения

ClubInfo

См подробнее https://docs.myfitt.ru/#/club/sync/notifications/

FieldTypeLabelDescription
sync_seq_no int64

порядковый номер изменения объекта

id string

общая информация идентификатор клуба, он же код клуба для подключения в интерфейсе (atmo, ultra и т.п)

name string

название клуба

slogan string

слоган клуба, короткая фраза

timezone string

временная зона клуба

theme ClubInfo.Theme

тема оформления клуба

logo_url string

логотип клуба

header_url string

фоновое изображение шапки клуба

header_design AreaDesign

work_time string

время работы

address string

фактический адрес клуба

contacts ClubContact repeated

url контактов (телефон email и т.д)

documents ClubDocument repeated

url документов (правила политики и тд)

public_offer_url string

Deprecated. ссылка на публичную оферту клуба (используйте ClubDocument documents с required_agreement = true)

corp_mode bool

режим корпоративного клиента

freezing_days IntRange

Информация по услугам диапазон минимальной и максимальной заморозки в днях

promo_course Group repeated

группы для промо на экране услуг

leagues LeagueOffer repeated

список сообществ клуба

deposit_constraints IntRange

минимальные и максимальные суммы пополнения (если не 0)

static_content StaticContent repeated

Deprecated. статичный контент для размещения на странице клуба

static_content_block StaticContentBlock repeated

статичный контент для размещения на странице клуба

knowledge_link string

ссылка на базу знаний (можно добавлять только с правом create_club_with_id)

custom_layout_settings CustomLayoutSettings

особые настройки внешнего вида страниц приложения

active bool

Пока скрыты признак активного клуба (разрешена синхронизация и пр)

service_logo_url ClubInfo.ServiceLogoUrlEntry repeated

логотипы для сервисов (группы занятий в расписании)

cource_logo_url ClubInfo.CourceLogoUrlEntry repeated

логотипы для направлений (группы занятий в расписании)

contacts_plain string repeated

Deprecated. url контактов (телефон email и т.д)

deposit_label ClubInfo.DepositLabelEntry repeated

краткие названия для депозитных счетов

tag_logo_url ClubInfo.TagLogoUrlEntry repeated

логотипы для тегов

grafana_analytics_url string

код для доступа к аналитике в графане

online_classes OnlineStrategy repeated

member_limit int32

максимальное число клиентов клуба (0- не ограничено)

enable_trainer_appointments bool

разрешить персональные записи к тренерам

aprox_client int32

примерное общее число клиентов клуба (для аналитики)

club_load_info ClubInfo.ClubLoadDisplayType

вариант отображения информации о загрузке клуба

anonymous_polls bool

режим анонимных опросов

pay_variants ClubInfo.PayVariantsEntry repeated

варианты оплаты

pay_selection ClubInfo.PaySelectionEntry repeated

выбор конкретного варианта оплаты по признаку организации

join_approve_required bool

требуется подтверждение модератора при присоединении к клубу (видимость всем, редактирование для edit_club_info)

phone_number_optional bool

при подключении к клубу номер телефона опционален

profile_fill_required bool

требуется заполнение анкеты профиля при подключении к клубу

visit_bonus float

размер бонуса за визит (<=0 не давать бонус, не более 35)

appointment_reserve_minutes IntRange

диапазон времени по умолчанию в минутах открытия записи на занятие (0-0 без ограничений)

overlapped_limit_minutes int32

ограничивать запись на занятия которые перекрываются более чем на указанное число минут (0 - без ограничений)

pay_time_constraints IntRange

время в секундах относительно начала дня в таймзоне клуба в которое разрешается проводить оплату. Если значения равны или максимум больше минимума то ограничений нет.

receipt_mode ReceiptMode

режим создания чека

always_pay bool

всегда отправлять на оплату услуги или задолженности (не использовать остатки на счетах)

email_domain string repeated

разрешенные домены почты для подключения к клубу

profile_extension_fields ProfileExtensionRequirements repeated

требования по полям для заполнения пользователем при подключении к клубу

deleted bool

признак удаления

Fields with deprecated option

Name Option
public_offer_url

true

static_content

true

contacts_plain

true

ClubInfo.CourceLogoUrlEntry

FieldTypeLabelDescription
key string

value string

ClubInfo.DepositLabelEntry

FieldTypeLabelDescription
key string

value string

ClubInfo.PaySelectionEntry

FieldTypeLabelDescription
key string

value string

ClubInfo.PayVariantsEntry

FieldTypeLabelDescription
key string

value PaymentInfo

ClubInfo.ServiceLogoUrlEntry

FieldTypeLabelDescription
key string

value string

ClubInfo.TagLogoUrlEntry

FieldTypeLabelDescription
key string

value string

ClubLoad

FieldTypeLabelDescription
last_update_epoch_sec int64

время последнего обновления (0 если нет данных)

last_load int64

значение последней загрузки клуба в момент обновления

load_at_epoch_sec ClubLoad.LoadAtEpochSecEntry repeated

ретроспектива загрузки клуба во времени словарь из пар <время, загрузка> (остаток времени от деления на неделю) т.е. текущий понедельник всегда будет по дате первым понедельником с начала эпохи математика перевода этого время в текущее для построения графика простая (целочисленные операции) текущее время/604800*604800+время из пары

ClubLoad.LoadAtEpochSecEntry

FieldTypeLabelDescription
key int64

value int64

ClubPoll

данные об опросе клиента внутри клуба

FieldTypeLabelDescription
next_time_seconds int64

время наступления следующего опроса

state ClubPoll.State repeated

массив состояний опросов

ClubPoll.NPS

FieldTypeLabelDescription
value int32

оценка пользователя от 1 до 10

allow_feedback bool

разрешить связаться со мной для обсуждения оценки

stamp_seconds int64

время опроса

ClubPoll.State

FieldTypeLabelDescription
next_time_seconds int64

время наступления следующего опроса

nps ClubPoll.NPS

оценка NPS (Net Promoter Score или Индекс потребительской лояльности)

CustomLayoutSettings

FieldTypeLabelDescription
client_page CustomLayoutSettings.ClientPage

club_page CustomLayoutSettings.ClubPage

service_page CustomLayoutSettings.ServicePage

CustomLayoutSettings.ClientPage

Настройки первой (левой) страницы

FieldTypeLabelDescription
schedule bool

расписание

scheduleGroups bool

расписание

feed bool

ленту

market_view bool

фитмаркет

simple bool

только аватарка и название

full bool

аватар, название, слоган, связаться

elements CustomLayoutSettings.ClientPage.Elements repeated

список разрешенных элементов на странице (если пустой то использовать расположение по умолчанию)

show_stale_services bool

показывать заканчивающиеся услуги

qr_type CustomLayoutSettings.ClientPage.QRType

тип динамического QR кода

refresh_ttl_seconds int32

требование по актуальности кода (факт обмена данными с серверами мой фитнес не более указанного количества секунд назад, 0 - без ограничений)

error_correction_level QrBlock.ErrorCorrectionLevel

уровень коррекции ошибок в qr

nps_suggest_text string

текст для NPS оценки (как вы оцениваете нашу компанию, наше приложение...)

force_select_city bool

показывать баннер для выбора города

showPosFromDefault bool

показывать товары из клуба myfitt

CustomLayoutSettings.ClubPage

Настройки страницы клуба (пока не используется)

FieldTypeLabelDescription
promo_offers CustomLayoutSettings.ClubPage.PromoOffers

управление блоком дополнительных услуг

trainers CustomLayoutSettings.ClubPage.Trainers

управление блоком тренеров

elements CustomLayoutSettings.ClubPage.Elements repeated

порядок блоков на странице (если пусто, то по умолчанию)

CustomLayoutSettings.ClubPage.PromoOffers

FieldTypeLabelDescription
title string

название для блока дополнительных услуг по умолчанию "Дополнительные услуги"

action_title string

кнопка для блока дополнительных услуг по умолчанию "Все услуги"

CustomLayoutSettings.ClubPage.Trainers

FieldTypeLabelDescription
title string

название для блока тренеров по умолчанию "Наша команда"

action_title string

кнопка для блока тренеров по умолчанию "Вся команда"

photo_align ImageAlign

значение выравнивания фотографии по умолчанию.

CustomLayoutSettings.ServicePage

FieldTypeLabelDescription
allow_change_payment_accounts bool

показывать настройку счетов для оплаты

email_required bool

требовать электронную почту для оплаты

hide_bonus bool

скрывать бонусные счета

hide_deposit bool

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

disable_buying bool

отключить покупки в приложении

disable_buying_when_zero bool

не показывать кнопку купить и цену, если цена услуги 0

hide_freezes bool

не показывать сколько дней заморозок осталось

unfreeze_forbidden bool

не разрешать размораживать услуги самостоятельно

hide_guests bool

не показывать гостевые визиты

use_promocode bool

отображать поле промокода при оплате в клубе

pay_from_deposit_only bool

разрешить покупку услу только с депозита (и пополнение депозита)

DebtInfo

данные о задолженности клиента

FieldTypeLabelDescription
id string

идентификатор задолженности

stamp_millis int64

epoch millis операции

description string

описание операции

cost float

стоимость

linked_account ClientDeposit repeated

список счетов с которых допускается оплата услуги

service_id string

идентификатор связанной услуги

vat VatMode

режим налогообложения если приемлим

tax_system TaxSystemMode

Система налогообложения, если известна

DynamicQr

описание динамичного QR кода с JWT токеном авторизации

FieldTypeLabelDescription
card_number string

основной код для отображения Subject

ttl int32

время жизни в секундах

shared_secret string

общий секрет для подписи JWT

Freezing

информация о заморозке

FieldTypeLabelDescription
id string

идентификатор заморозки

from_epoch int64

epoch seconds начала периода

until_epoch int64

epoch seconds конца периода

days int32

количество полных дней заморозки

FreezingInfo

FieldTypeLabelDescription
can_use bool

возможность применять заморозку

left int32

количество оставшихся единиц заморозки для этой услуги. (0 если не ограничено)

total int32

всего единиц заморозки. (0 есои не ограничено)

min_days int32

минимальное число дней заморозки (0 если любое)

freezings Freezing repeated

предстоящие или действующие заморозки

past_freezings Freezing repeated

прошедшие заморозки (опционально)

JoinRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба, он же код клуба для подключения в интерфейсе (atmo, ultra и т.п)

phone string

подтвержденный номер клиента в клубе

stamp_millis int64

epoch seconds когда клиент присоединился к клубу

profile Profile

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

club_client_id string

идентификатор клиента на стороне клуба (проставляется только для клиентов подключившихся с 22.03.2024)

profile_extension ProfileExtension

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

LeaveRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба, он же код клуба для подключения в интерфейсе (atmo, ultra и т.п)

OfferInfo

данные о дереве предложений для клиента

FieldTypeLabelDescription
id string

идентификатор элемента

parent_id string

идентификатор родительского уровня (для построения дерева услуг)

title string

Краткое наименование уровня или услуги

description string

Более подробное описание уровня или услуги

logo_url string

логотип уровня или услуги

header_url string

фон уровня или услуги

level OfferInfo.Level

offer OfferInfo.Offer

tags OfferInfo.TagsEntry repeated

кастомные метки

OfferInfo.EmployeePrice

FieldTypeLabelDescription
employee_id string

идентификатор сотрудника

price_type_id string

идентификатор цены

price float

цена

discount float

размер скидки для промоблока (если <=0 не показывать)

OfferInfo.Level

FieldTypeLabelDescription
depth int32

глубина уровня

OfferInfo.Offer

FieldTypeLabelDescription
id string

идентификатор предложения на стороне клубного по

price float

стоимость услуги

service_id string repeated

идентификаторы сервисов в данном предложении

duration_seconds int64

длительность услуги в секундах (0 если не задано или не определено)

employee_price OfferInfo.EmployeePrice repeated

стоимость услуги в привязке к сотруднику

contract_specific bool

услуга специфична для контракта и требует его выбора

employee_price_is_optional bool

если employee_price не пустой то можно ли ее выбрать без указания сотрудника

employee_role OfferInfo.EmployeeRole

роль сотрудника в услуге

discount float

размер скидки для промоблока (если <=0 не показывать)

vat VatMode

режим налогообложения если приемлимо

tax_system TaxSystemMode

Система налогообложения, если известна

OfferInfo.TagsEntry

FieldTypeLabelDescription
key string

value string

OneTimeService

разовая услуга клиента

FieldTypeLabelDescription
count int32

доступное количество

PaymentInfo

FieldTypeLabelDescription
id string

идентификатор платежного варианта

name string

название

logo string

лого

priority int32

порядок платежной системы (чем ниже значение тем предпочтительнее для использования)

beneficiary_info string

данные о бенефициаре

tags PaymentInfo.TagsEntry repeated

теги для платежного способа (как вариант ограничения выбора при оплате услуг)

PaymentInfo.TagsEntry

FieldTypeLabelDescription
key string

value string

ServiceInfo

данные об услуге клиента

FieldTypeLabelDescription
id string

уникальный идентификатор услуги в разрезе всех пакетов/сервисов/контрактов

club_id string

идентификатор клуба

client_id string

идентификатор клиента на стороне клуба

title string

string profile_id = 5; // идентификатор клиента на стороне skllzz название

status ServiceInfo.Status

статус сервиса

membership ClientMembership

service OneTimeService

package ClientPackage

days IntRange

epoch day начала и окончания действия услуги (0 если еще не активирована или не имеет окончания)

status_days IntRange

epoch day первого и последнего дня действия особенного статуса (например при заморозке)

parent_id string

идентификатор основной услуги

service_id string

оригинальный идентификатор услуги

ticket_id string

идентификатор основания для использования услуги

freezing_info FreezingInfo

информация по возможностях заморозки (может полностью отсутствовать, что означает невозможность использования заморозки)

ServiceInfoList

список услуг для различных контекстов

FieldTypeLabelDescription
services ServiceInfo repeated

StaticContent

FieldTypeLabelDescription
id string

идентификатор контента (может быть и пустой)

title string

заголовок

details string

более подробное описание (может отсутствовать)

image_url string

адрес связанной картинки

action_url string

адрес для перехода

background_theme StaticContent.BackgroundTheme

фон между текстом и фоновым изображением

photo_align ImageAlign

StaticContentBlock

FieldTypeLabelDescription
title string

заголовок в блоке

row_length int32

сколько элементов в строке

static_content StaticContent repeated

элементы в блоке

VisitInfo

данные о посещении клиентом клуба

FieldTypeLabelDescription
id string

идентификатор элемента

stamp_seconds int64

время начала посещения в epoch seconds

duration_seconds int64

продолжительность посещения в секундах

appointments AppointmentsDay

посещенные занятия

CashFlow.Type

тип движения

NameNumberDescription
unknown 0

charge 1

поступление

write_off 2

списание

ClubContact.Action

NameNumberDescription
undefined 0

действие не определено (просто ссылка)

support 1

действие переводит на поддержку клуба

social 2

действие переводит на поддержку клуба

geo 3

действие переводит гео-метку

ClubInfo.ClubLoadDisplayType

NameNumberDescription
disabled 0

не показывать загруженность клуба

counter_only 1

только текущий счетчик

historical 2

счетчик и исторический график

ClubInfo.Theme

NameNumberDescription
default_ 0

тема оформления по умолчанию

red 23

тема по умолчанию: красный

green 24

тема по умолчанию: зеленый

blue 25

тема по умолчанию: синий

purple 26

тема по умолчанию: лиловый

teal 27

тема по умолчанию: бирюзовый

yellow 28

тема по умолчанию: жёлтый

orange 34

тема по умолчанию: оранжевый

white 35

тема по умолчанию: белый

light 42

тема по умолчанию: светлая тема

atmosphere 1

тема оформления для Атмосфера фитнес

gym_space 2

тема оформления для GYM Space

jetfit 3

тема оформления для jetfit

mdc 4

тема оформления для mdc

davinci 5

тема оформления для davinchi

villa 6

тема оформления для villa

loft 7

тема оформления для loft

fusfit 8

тема оформления для fusion fitness

fitmat 9

тема оформления для FitMaster

fitlady 10

тема оформления для FitMaster Lady

skolkovo 15

atrium = 11; // тема оформления для Прайм Фитнес Атриум primeokt = 12; // тема оформления для Прайм Фитнес Октябрьский primepetra = 13; // тема оформления для Прайм Фитнес Петра p4elka = 14; // тема оформления для Прайм Фитнес Пчелка тема оформления для WC SKOLKOVO

luciano 16

тема оформления для Luciano Fitness

ultraff 17

тема оформления для ULTRA Family Fitness

divanru 18

тема оформления для divan.ru

prime 19

общая тема оформления для Прайм Фитнес

ferrero 20

общая тема оформления для Ferrero

testcorp 21

тесто корпоративного клуба

upfit 22

тема оформления для UP Fitness

strike 29

тема оформления для Strike Fitness

supergym 30

тема оформления для SuperGym

enterra 31

тема оформления для Ultra Enterra

ultra 36

тема оформления для Ultra от дизайнера

gorod 32

тема оформления для Город Развлечений

topdog 33

тема оформления для TopDog

lazurniy 37

тема оформления для Лазурный

fitberri 38

тема оформления для Fitberri

fitberri_green 60

тема оформления для Fitberri в зелёном цвете

xfit 39

тема оформления для XFit

xfit_purple 72

тема оформления для XFit в стиле их сетевого приложения

quartz 40

тема оформления для Quartz

drive 41

тема оформления для Drive

fok_kvarz 43

тема оформления для ФОК Кварц

gruz 44

тема оформления для Первой грузовой компании

flight 45

тема оформления для Flight

metro 46

тема оформления для Metro Fitness

rzd 47

тема оформления для РЖД

reforma 48

тема оформления для Реформы

extreme 49

тема оформления для Extreme

profilaktika 50

тема оформления для Profilaktika

profitness 51

тема оформления для PRO фитнес

strong 52

тема оформления для Strong

vitasport 53

тема оформления для VitaSport

hilti 54

тема оформления для Hilti

gymexpress 55

тема оформления для Gymexpress

gazprom 56

тема оформления для Газпром

kfl 57

тема оформления для Корпоративной Фитнес Лиги

moysport 58

тема оформления для клуба Мой Спорт

crocus 59

тема оформления для сети Crocus Fitness

utatennis 61

тема оформления для Уральской теннисной академии

gspm 62

тема оформления для Высшей школы государственного управления

oceanis 63

тема оформления для Oceanis

fitclub 64

тема оформления для FitClub

gravity 65

тема оформления для Gravity

bashni 66

тема оформления для Башни

lasalutel 67

тема оформления для La Salute

neptun 68

тема оформления для СОК Нептун

greenmys 69

тема оформления для Зеленый мыс

bodis 70

тема оформления для Bodis Fitness

sber 71

тема оформления для Сбер

ceh 73

тема оформления для клуба Цех

rossvik 74

тема оформления для клуба Rossvik

volgaflot 75

тема оформления для Волжского Флота

privilegia 76

тема оформления для клуба Привилегия

mytwclass 77

тема оформления для клуба World Class Мытищи

asi 78

тема оформления для Агентство Стратегических Инициатив

lofit 79

тема оформления для LOFIT

leto 80

тема оформления для LETO

aviva 81

тема оформления для AVIVA

icefit 82

тема оформления для ICEFIT

strong_lite 83

тема оформления для Strong Lite

lokomotiv 84

тема оформления для РФСО Локомотив

bellfit 85

тема оформления для Bell Integrator

asi_empty 86

тема оформления для ASI без брендового логотипа

fitbox123 87

тема оформления для Провокация

bushido 88

тема оформления для BUSHIDO

vicfitness1 89

тема оформления для Виктория Фитнес

newton 90

тема оформления для Newton Arena

caesar0410 91

тема оформления для CaesarBoxingGym

dubfit 92

тема оформления для Дубровка Фитнес

severpark 93

тема оформления для Север Парк Арена

serotonin 94

тема оформления для Serotonin

dllclub 95

тема оформления для DLL CLUB

cf996 96

тема оформления для DLL CLUB

park 97

тема оформления для Wellness Park

abisport 98

тема оформления для АО "АБИ Продакт"

gpn 99

тема оформления для АО Газпромнефть

rusfit 100

тема оформления для РУСФИТ

kr 101

тема оформления для Кадровый Резерв

port1 102

тема оформления для Кадровый Резерв

person 103

тема оформления для Персона

athlete 104

тема оформления для Атлет Fitness

vsc2025 105

тема оформления для Vnukovo Sport Club

roscosmos01 106

тема оформления для Роскосмос

hammer 107

тема оформления для Hummer

goodgym1 108

тема оформления для Good Gym

ural 109

тема оформления для PROДВИЖЕНИЕ

cherdak 110

тема оформления для Чердак

startrek 111

тема оформления для Start Trek

formula2004 112

тема оформления для Формула

garage 113

тема оформления для GARAGE

slavtek 114

тема оформления для SLAVTEK

flab 115

тема оформления для Family Lab

kholding 116

тема оформления для K-Holding

flame 117

тема оформления для Флейм

synergetic 118

тема оформления для SYNERGETIC

cf002 119

тема оформления для Fitness Villiage

CustomLayoutSettings.ClientPage.Elements

NameNumberDescription
empty 0

пустой элемент (на случай если все остальные надо скрыть)

view_club 1

перейти на страницу клуба

my_records 2

мои записи

qr_id 3

вход по qr

change_user 4

сменить пользователя

market 5

фитмаркет

knowledge 6

база знаний

locker 7

ячейки

CustomLayoutSettings.ClientPage.QRType

NameNumberDescription
JWT 0

PROTO 1

CustomLayoutSettings.ClubPage.Elements

NameNumberDescription
empty 0

пустой элемент (на случай если все остальные надо скрыть)

schedule_and_load 1

кнопка расписания и загрузки в клубе

services 2

наши услуги

staff 3

наша команда

contacts 4

контакты

banners 5

баннеры

leaderboards 6

рекомендуемые лидерборды клуба

rooms 7

помещения клуба

feed 8

лента (если клуб хочет её скрыть)

header 9

шапка (если клуб хочет её скрыть)

address_and_workTime 10

адрес и график работы (сразу под шапкой)

OfferInfo.EmployeeRole

роль сотрудника в услуге

NameNumberDescription
default_ 0

роль сотрудников по умолчанию, фактически означает что если список сотрудников передан,

information 1

то эквивалент режима 2 или 3 в зависимости от employee_price_is_optional сотрудники выводятся только для информации, выбрать их нельзя

optional 2

сотрудники выводятся и допускается покупка как с указанием сотрудника так и без указания

required 3

сотрудники выводятся и требуется обязательное указание сотрудника при покупке

ServiceInfo.Status

NameNumberDescription
undefined 0

статус услуги не определен

active 1

услуга активна

inactive 2

услуга не активна

frozen 3

услуга заморожена или приостановлена

locked 4

услуга заблокирована

closed 5

услуга закрыта/завершена

StaticContent.BackgroundTheme

NameNumberDescription
darken 0

branded 1

transparent 2

lk/funds.proto

Top

ManageFunds

Сервис управления сбором средств

Method NameRequest TypeResponse TypeDescription
UpdateFund Fund Fund

Обновление/создание/удаление сбора средств, требуется право edit_funds

Monitor FundScope Fund stream

Отслеживание информации о фондах или конкретном фонде (в случае указания FundId) клуба (поддерживается NOWAIT) требуется право view_challenges

MonitorBank FundScope FundBank stream

Отслеживание результата сбора средств (поддерживается NOWAIT) доступно публично

MonitorRank FundScope SubFundsRank stream

Отслеживание рейтинга дочерних фондов (поддерживается NOWAIT) доступно публично

ReleaseFund FundScope Fund

Убирает фонд из под управления клубом требуется право edit_funds

ImportFund FundScope Fund

Добавляет в клуб фонд. в id может быть либо id либо диплинк на фонд. требуется право edit_funds

lk/content.proto

Top

ContentMeta

FieldTypeLabelDescription
id string

идентификатор элемента в папке

folder_id string

идентификатор папки

name string

имя элемента

description string

детальное описание элемента

tags ContentMeta.TagsEntry repeated

теги элемента

creator_uid string

id профиля создавшего элемент

stamp_epoch_seconds int64

время создания элемента

club_id_owner string

клуб владелец

folder Folder

video VideoStreamInfo

deleted bool

ContentMeta.TagsEntry

FieldTypeLabelDescription
key string

value string

ContentScope

FieldTypeLabelDescription
club_id string

идентификатор клуба

folder_id string

идентификатор папки (пустой если корневая)

item_id string

идентификатор элемента в папке если нужно отслеживать конкретный элемент

Folder

FieldTypeLabelDescription
children ContentMeta repeated

ManageContent

Сервис управления контентом

Method NameRequest TypeResponse TypeDescription
Monitor ContentScope ContentMeta stream

Отслеживание состояния папки (поддерживается NOWAIT)

DeleteItem ContentMeta Empty

Удаление элемента папки или самой папки

UpdateItem ContentMeta ContentMeta

Обновление/создание элемента папки или самой папки

lk/clubs.proto

Top

AccessTicket

Билет доступа для управления клубом

FieldTypeLabelDescription
ticket string

билет исходного аккаунта

access ClubAccess

права доступа для билета

AccountRights

Информация о текущем уровне доступа

FieldTypeLabelDescription
clubs AccountRights.ClubsEntry repeated

список клубов к которым есть доступ

scopes AccountRights.ScopesEntry repeated

Возможности аккаунта

ticket string

билет для доступа в другие клубы

name string

имя пользователя

nick string

ник пользователя

photo_url string

аватарка

AccountRights.ClubsEntry

FieldTypeLabelDescription
key string

value ClubAccess

AccountRights.ScopesEntry

FieldTypeLabelDescription
key int32

value AccessScope

ActivityDebugRange

FieldTypeLabelDescription
profile_id string

идентификатор профиля

epoch_second_from int64

начало диапазона (включительно), 0 если с самого начала

epoch_second_until int64

конец диапазона (исключительно), 0 если без ограничений

ActivityRange

FieldTypeLabelDescription
epoch_second_from int64

начало диапазона (включительно), 0 если с самого начала

epoch_second_until int64

конец диапазона (исключительно), 0 если без ограничений

fund_id string

ограничить списком участников фонда

challenge_id string

ограничить списком участников соревнования

AdoptedAssetUrl

FieldTypeLabelDescription
url string

адрес итогового ресурса или пустота если не получилось

AllClients

FieldTypeLabelDescription
reindex_phones bool

переиндексировать номера телефон (используется в рассылках)

AnalyticProfiles

ApplyTransactionRequest

FieldTypeLabelDescription
profile_id string

идентификатор клиента

club_id string

идентификатор клуба

transaction TransactionDetails

данные по транзакции

ApproveResult

FieldTypeLabelDescription
id string

идентификатор запроса

club_id string

идентификатор клуба

approved bool

статус одобрения запроса

reject_reason string

причина отклонения если approved=false

AssetBlob

FieldTypeLabelDescription
blob bytes

содержимое картинки (в формате jpg, png и т.д)

BotScope

область отслеживания данных

FieldTypeLabelDescription
club_id string

идентификатор клуба

pos_id string

идентификатор точки продаж

bot_id string

идентификатор подключения бота (если приемлимо)

ChallengeRange

FieldTypeLabelDescription
include_completed bool

включать завершенные соревнования

include_active bool

включать активные соревнования

include_pending bool

включать соревнования которые ожидают запуска

challenge_id string

идентификатор конкретного соревнования (если задано то признаки выше не играют роли)

ClientData

FieldTypeLabelDescription
profile Profile

club_client ClientInfo

stats ProfileStats

devices UserDeviceId repeated

profile_extension ProfileExtension

ClubAccess

Информация о доступе к клубу

FieldTypeLabelDescription
id string

идентификатор клуба

level ClubAccess.Level

уровень доступа к клубу

name string

название клуба

address string

адрес клуба

rights ClubAccess.Right repeated

ClubManager

FieldTypeLabelDescription
ticket string

тикет пользователя

name string

имя пользователя

access ClubAccess.Level

уровень доступа

nick string

ник пользователя

photo_url string

аватарка

rights ClubAccess.Right repeated

перечень RBAC прав

ClubManagersResponse

FieldTypeLabelDescription
managers ClubManager repeated

ClubRecentErrors

ExpressionScope

область отслеживания данных

FieldTypeLabelDescription
club_id string

идентификатор клуба

expression string

текст скрипт-выражения

IntervalRules

FieldTypeLabelDescription
type IntervalRules.Type

Тип интервала повторения

interval_size int32

размер интервала повторения

first_day int32

первый эпоходень с которого включить повтор, 0 если без ограничений

last_day int32

последний эпоходень с которого включить повтор, 0 если без ограничений

LoggingSession

FieldTypeLabelDescription
session_id string

идентификатор сессии

profile_id string

опционально идентификатор профиля по которому принудительно включить логирование

club_id string

код клуба

MarketOpsRange

FieldTypeLabelDescription
pos_id string

если запрос по конкретной точке продаж

epoch_second_from int64

начало диапазона (включительно)

epoch_second_until int64

конец диапазона (исключительно)

MemberFitFile

FieldTypeLabelDescription
club_id string

идентификатор клуба

profile_id string

идентификатор профиля

fit_file bytes

содержимое фитфайла

ModifyProfileRequest

FieldTypeLabelDescription
club_id string

код клуба

profile_id string

идентификатор профиля по которому запрашивается изменение

tester ModifyProfileRequest.TesterMode

управление флагом тестировщика. требуется право modify_tester

activity_debug_mode ModifyProfileRequest.ActivityDebugMode

управление флагом отладки активностей. требуется право modify_tester

ModifyProfileRequest.ActivityDebugMode

FieldTypeLabelDescription
active bool

ModifyProfileRequest.TesterMode

FieldTypeLabelDescription
active bool

MonitorScope

область отслеживания данных

FieldTypeLabelDescription
club_id string

идентификатор клуба

object_id string

идентификатор объекта, если применимо

seq_no int64

PaymentOpsRange

FieldTypeLabelDescription
epoch_second_from int64

начало диапазона (включительно)

epoch_second_until int64

конец диапазона (исключительно)

PeriodicEvent

правила повторения

FieldTypeLabelDescription
period_being int64

Deprecated. время начала периода в котором надо повторять занятие

period_end int64

Deprecated. время окончания периода в котором надо повторять занятие

restrictions ScheduleRestrictions

ограничения

interval_rules IntervalRules

правила повторения

Fields with deprecated option

Name Option
period_being

true

period_end

true

PhoneNumber

FieldTypeLabelDescription
number string

номер телефона пользователя

PosBot

FieldTypeLabelDescription
id string

идентификатор подключения бота

client_name string

имя клиента на стороне Telegram

created_stamp int64

время создания подключения

FieldTypeLabelDescription
link string

ссылка для подключения бота к точке продаж

PosBots

FieldTypeLabelDescription
bots PosBot repeated

ProfileMonitorScope

область отслеживания данных внутри профиля

FieldTypeLabelDescription
club_id string

идентификатор клуба

profile_id string

идентификатор профиля

object_id string

идентификатор объекта, если применимо

seq_no int64

ReportAccess

FieldTypeLabelDescription
access_url string

абсолютный или относительный url для скачивания

ReportRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

all_clients AllClients

запрос отчета на выгрузку всех клиентов (умеет csv, jsonl)

market_ops_range MarketOpsRange

запрос по операциям в маркетплейсе

challenges ChallengeRange

состояние соревнований в клубе

payment_ops_range PaymentOpsRange

платежи в клубе

replenish_ops_range ReplenishOpsRange

детализация взносов в фонд (умеет csv,json)

activity_debug_range ActivityDebugRange

детализация операций загрузки данных активности в профиль (доступно для роли modify_tester)

club_recent_errors ClubRecentErrors

экспорт всех последних ошибок клуба (доступно для роли api_logging)

activity_range ActivityRange

экспорт обезличенных данных активности за период

analytic_profiles AnalyticProfiles

Профили для аналитики

format ReportRequest.Format

предпочитаемый формат очета, если он поддерживается

ScheduledAppointment

конкретное занятие в расписании клуба

FieldTypeLabelDescription
club_id string

appointment_id string

ScheduledAppointmentMember

участник локального расписания

FieldTypeLabelDescription
profile Profile

данные о профиле

profile_extension ProfileExtension

расширение профиля в этом клубе

stamp_millis int64

время записи на занятие

ScheduledAppointmentMembers

FieldTypeLabelDescription
member ScheduledAppointmentMember repeated

список участников

ScheduledEvent

элемент локального расписания

FieldTypeLabelDescription
id string

уникальный идентификатор

title string

заголовок

description string

детальное описание

stamp_seconds int64

время начала занятия в epoch seconds

duration_seconds int64

продолжительность занятия в секундах

location_name string

место проведения

location_position LatLng

точные координаты, если применимо

cost float

занятие за доп плату (0 если бесплатное)

capacity int32

максимальное количество участников (0 не ограничено)

reservation_required bool

включить режим записи на занятие

image_url string

картинка для занятия

external_url string

любой связанный url

is_periodic bool

Deprecated. признак повторяемого события (использовать PeriodicEvent.IntervalRules.Type

periodic_rules PeriodicEvent

правила периодичности

group string

Группа занятий (попадет в фильтр)

time_zone string

таймзона события (если пусто то как у клуба)

in_cities_id string

id списка городов присутствия (если пусто то без ограничений)

deleted bool

признак удаленного элемента

seq_no int64

порядковый номер синхронизации (используется только в методах мониторинга)

club_id string

идентификатор клуба (используется только в методах обновления)

Fields with deprecated option

Name Option
is_periodic

true

SearchScope

Запрос на поиск

FieldTypeLabelDescription
search string

строка поиска

club_id string

идентификатор клуба

limit int32

максимально число результатов в ответе, если 0 то по умолчанию

SessionLogEntry

FieldTypeLabelDescription
dump string

содержимое лога

stamp_millis int64

время лога в epoch millis, если больше 0

level SessionLogEntry.Level

уровень логирования

SyncOptions

Запрос на синхронизацию данных

FieldTypeLabelDescription
club_id string

идентификатор клуба

profile_id string

профиль клиента в клубе (если пустой то запускается синхронизация уровня клуба)

log_session_id string

идентификатор сессии для логирования

TelegramSearchResponse

FieldTypeLabelDescription
token string

токен для публикации в канал

channel int64

найденный идентификатор канала

TestCredentialsResponse

результаты тестирования

FieldTypeLabelDescription
integration ClubIntegration

возможные уточнения по интеграции

stages TestStage repeated

результаты тестирования по отдельным стадиям

TestStage

стадия тестирования

код стадии тестирования

FieldTypeLabelDescription
stage TestStage.Stage

стадия тестирования

error bool

признак ошибки на стадии тестирования

test_message string

сообщение стадии тестирования

UpdateDictionaryRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

dictionary DictionaryValues

данные справочника

UpdateProfileArtifactShelfRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

profile_id string

идентификатор профиля

change UpdateProfileArtifactShelfRequest.Change repeated

операция изменения числа артефактов

UpdateProfileArtifactShelfRequest.Change

FieldTypeLabelDescription
artifact Artifact.Type

типа артефакта

delta int32

на сколько нужно изменить его количество

AccessScope

NameNumberDescription
none 0

без особых возможностей

club_viewer 1

доступ к любому клубу на уровень просмотра

club_editor 2

доступ к любому клубу на уровень редактора

club_owner 3

доступ к любому клубу на уровень владельца

create_club_with_id 4

возможность задать id при создании клуба

create_unlimited_clubs 5

возможность создавать не ограниченное количество клубов, включать корп режим и устанавливать предел клиентов клуба

create_corp_club 6

возможность создавать корпоративный вариант клуба

manage_club_limit 7

возможность создавать корпоративный вариант клуба

any_theme 8

возможность выбирать любую тему из доступных

rbac 9

возможность включать RBAC для аккаунта

ClubAccess.Level

NameNumberDescription
deleted 0

доступа нет (удален)

viewer 1

только просмотр

editor 2

редактирование

owner 3

владелец

smm 4

доступ к рассылкам (по факту тот же что и viewer)

RBAC 999

режим доступа через точный перечень ролей (Role Based Access Control) указанный в rights

ClubAccess.Right

NameNumberDescription
unknown 0

неизвестная роль

view_club_info 1

просмотр общих данных о клубе

edit_club_info 2

редактирование общих данных о клубе

delete_club 3

возможность полностью удалить клуб (при этом если остались соревнования в любом статусе, они продолжат свое существование не в рамках клуба)

view_payment_methods 4

просмотр платежных терминалов

edit_payment_methods 5

редактирование платежных терминалов

view_integration_methods 6

просмотр данных интеграции

edit_integration_methods 7

редактирование данных интеграции

grant_rights 8

управление правами на доступ к клубу

edit_club_limit 9

управление лимитом пользователей в клубе

any_theme 10

возможность выбрать любую тему

access_analytics 11

доступ к аналитике

access_mailing_view 12

доступ к рассылкам на просмотр

access_mailing_send 13

доступ к рассылкам на отправку

view_pos 14

просмотр точек продаж

edit_pos 15

просмотр точек продаж

view_roi 16

просмотр точек продаж

edit_roi 17

просмотр точек продаж

upload_promo_codes 18

возможность загружать промо коды в онлайн точки продаж

enable_analytics 19

разрешить включение аналитики

create_club_with_id 20

возможность задать id при создании клуба

create_corp_club 21

возможность создавать корпоративный вариант клуба

unlimited_clubs 22

возможность создавать не ограниченное количество клубов

search_clients 23

поиск клиентов

api_logging 24

доступ к логам API

export_clients 25

экспорт данных по всем клиентам

view_local_schedule 26

получение элементов локального расписания

edit_local_schedule 27

изменение элементов локального расписания

view_client_activity 28

доступ к данным активности клиентов

edit_client_activity 29

доступ к данным активности клиентов

reset_qr_device 30

возможность сбросить привязку QR к устройству

export_pos_usage 31

экспорт данных по использованию маркета

access_content 32

доступ к контенту

upload_content 33

возможность загружать контент

view_challenges 34

просмотр соревнований

edit_challenges 35

создание/изменение соревнований

change_layout 36

изменение конфигурации элементов в приложении

modify_tester 37

возможность изменить статус тестировщика

migrate_challenges 38

импорт/миграция соревнований

view_client_transactions 39

доступ к данным транзакций клиентов

edit_client_transactions 40

изменение транзакций клиентов

delete_club_client 41

удаление клиента из клуба

manage_client_approves 42

управление заявками на вступление в клуб

view_user_devices 43

доступ к списку устройств клиента

impersonate_client 44

возможность зайти в приложение от имени клиента, для целей отладки

export_payments 45

получение отчетов по платежам

reset_profile_progress 46

сброс прогресса достижений для профиля

edit_oauth2_requirement 47

возможность задавать требования для внешних связей по oauth2

payed_challenges 48

возможность создавать платные соревнования за реальную валюту

grant_rbac_rights 49

управление правами на доступ в режиме RBAC

view_funds 50

просмотр данных о сборе средств

edit_funds 51

создание/изменение данных о сборе средств

view_pos_bots 52

просмотр ботов у точки продаж

edit_pos_bots 53

управление ботами точки продаж

view_projects 54

просмотр проектов документов согласия

edit_projects 55

управление проектами документов согласия

run_expression 56

запуск скрипт-выражений

edit_client_activity_tasks 57

возможность создавать/изменять активность клиента с типом задание

view_dictionary 58

просмотр справочников

edit_dictionary 59

обновление справочников

update_artifact_shelf 60

обновление данных по артефактам

IntervalRules.Type

NameNumberDescription
None 0

Day 1

Week 2

Month 3

ReportRequest.Format

NameNumberDescription
csv 0

jsonl 1

SessionLogEntry.Level

NameNumberDescription
info 0

warn 1

error 2

TestStage.Stage

NameNumberDescription
unknown 0

неизвестная стадия

acc_000 1

наличие полного контракта для номера телефона +70000000000

acc_999 2

наличие полного контракта для номера телефона +79999999999

trainers 3

проверка тренеров

offers 4

проверка прайс листа

appointments 5

проверка расписания

full_log 6

полный лог

ManageClubs

Сервис управления клубами

Method NameRequest TypeResponse TypeDescription
Rights AccountRights AccountRights stream

получение данных о списке доступных клубов с правами на них

ClubRights ClubIntegration ClubAccess stream

получение прав на клуб включая пустой или любой произвольный clubid (на входе важен только ClubIntegration.Info.Id)

Update ClubIntegration ClubIntegration

обновить данные о клубе с заданным id, если id не задан то будет создан новый клуб

Delete ClubIntegration ClubIntegration

удаление клуба (при этом если остались соревнования в любом статусе, они продолжат свое существование не в рамках клуба) требуются права _delete_club

GetIntegration ClubAccess ClubIntegration

получить полные данные по интеграции

ManageClub ClubAccess ClubAccess

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

InviteManager AccessTicket AccessTicket

Пригласить к управлению клубом менеджера с заданным билетом (только если есть права владельца клуба)

UploadAsset AssetBlob AdoptedAssetUrl

Загрузка ресурса (картинки) для размещения в новости

AdoptAsset AdoptedAssetUrl AdoptedAssetUrl

Адаптация любой ссылки на ресурс

TestCredentials ClubIntegration ClubIntegration

Проверка валидности данных для подключения к клубному ПО, могут вернуться уточненные данные которые надо использовать для фактической настройки

TestCredentialsV2 ClubIntegration TestCredentialsResponse

Проверка валидности данных для подключения к клубному ПО

TestPayment PaymentMethod PaymentMethod

Проверка валидности данных для подключения к платежному шлюзу

FindTelegramChannel Empty TelegramSearchResponse stream

Поиск идентификатора телеграм канала для NPS

ClubManagers ClubIntegration ClubManagersResponse stream

Отдает/отслеживает список всех у кого есть доступ к клубу (для пользователя без уровня owner вернет ошибку)

DescribeLeagueOffer LeagueOffer LeagueOffer

Актуализирует данные по предложению из соревнования

FormatPhone PhoneNumber PhoneNumber

Форматирует номер телефона или возвращает ошибку если он не валидный

UpdatePos Pos Pos

Создает/обновляет/удаляет данные по точке продаж в разрезе клуба

ResetLicense Pos Pos

Сброс привязки лицензии на клиентской стороне

UpdateCoverage Coverage Coverage

Создает/обновляет/удаляет данные по региону интереса в разрезе клуба

UpdateCoverageGeo GeoJson RoiDetails

Загружает GeoJson как ROI для покрытия

MonitorPos MonitorScope Pos stream

Отслеживание списка точек продаж для клуба (поддерживается NOWAIT)

MonitorPosBots BotScope PosBots stream

Отслеживание списка ботов подключенных к точке продаж (поддерживается NOWAIT) доступно для роли view_pos_bots

ConnectPosBot BotScope PosBotLink stream

Получение активной ссылки для подключения бота к точке продаж доступно для роли edit_pos_bots

DisconnectPosBot BotScope PosBot

Отключения бота от точки продаж доступно для роли edit_pos_bots

MonitorCoverage MonitorScope Coverage stream

Отслеживание зон покрытия для клуба (поддерживается NOWAIT)

MonitorRoiData MonitorScope RoiDetails stream

Отслеживание данных покрытия (поддерживается NOWAIT)

UploadPromoCodes PromoCodes UploadResult

Загрузка промокодов

UpdateCities Cities Cities

Создает или обновляет данные по списку городов (доступно для роли edit_roi)

MonitorCities Cities Cities stream

Мониторит отдельно взятый список городов по клубу (доступно для роли view_roi)

MonitorClubCities MonitorScope CitiesList stream

Мониторит списки городов интереса в клубе (поддерживается NOWAIT, доступно для роли view_roi)

MonitorClubDictionary MonitorScope DictionaryValues stream

Мониторит списки справочников клуба (поддерживается NOWAIT, доступно для роли view_dictionary, при указании object_id возвращаются элементы справочника)

UpdateClubDictionary UpdateDictionaryRequest DictionaryValues

Обновление данных по справочнику (доступно для роли edit_dictionary)

UpdateProject AgreementProject AgreementProject

Создает или обновляет данные по проекту согласий (доступно для роли edit_projects)

MonitorProject AgreementProject AgreementProject stream

Мониторит отдельно взятый проект (доступно для роли view_projects)

MonitorClubProjects MonitorScope ProjectList stream

Мониторит проекты согласий в клубе (поддерживается NOWAIT, доступно для роли view_projects)

SearchClientProfiles SearchScope Profile stream

Поиск профилей клиентов в контексте клуба

MonitorClientDetails MonitorScope ClientData stream

Мониторинг данных о клиенте по его profile.id

MonitorClientActivity ProfileMonitorScope TrainingSession stream

Мониторинг данных о последней активности клиенте по его profile.id (если задан object_id то мониторит конкретное активити с заданным id) доступно для view_client_activity

MonitorClientItemReactions ProfileMonitorScope EventFeedback stream

Мониторит данные по реакциям на

MonitorClientTransactions ProfileMonitorScope TransactionDetails stream

Мониторинг данных о последних транзакциях клиента по его profile.id (если задан object_id то мониторит конкретную транзакцию с заданным id) доступно для view_client_transactions

ApplyTransaction ApplyTransactionRequest TransactionDetails

создать/исправить транзакцию клиенту доступно для edit_client_transactions

UpdateClientActivity TrainingSession TrainingSession

обновляет/добавляет/удаляет сведения об активности доступно для edit_client_activity

ImportFitActivity MemberFitFile TrainingSession

импортирует активность для участника из FIT файла доступно для edit_client_activity

MonitorClubLocalSchedule MonitorScope ScheduledEvent stream

Мониторинг данных об элементах локального расписания клуба доступно для view_local_schedule

UpdateClubLocalSchedule ScheduledEvent ScheduledEvent

Обновление данных об элементе локального расписания, если флаг deleted=true то удаляет данный элемент доступно для edit_local_schedule

MonitorClubLocalEventPlan ScheduledEvent Appointments stream

Получает список фактически спланированных событий по указанному шаблону (поддерживается NOWAIT, доступно для роли view_local_schedule)

MonitorClubLocalAppointmentMembers ScheduledAppointment ScheduledAppointmentMembers stream

Список записанных на занятие (поддерживается NOWAIT, доступно для роли view_local_schedule)

ExportClubClients MonitorScope ClientData stream

Выгрузка данных по всем клиентам клуба (доступна только людям с правом export_clients)

RequestReport ReportRequest ReportAccess

Запрос создания отчета

MonitorLoggingSession LoggingSession SessionLogEntry stream

Мониторинг данных отладочной сессии, все вызовы в API с заголовком Logging-Session-Id равным LoggingSession.session_id будут дампить сюда логи доступны только для пользователей с ролью api_logging

RunClubSync SyncOptions SyncOptions

принудительно запускает синхронизацию данных, и логирует данные в указанную сессию доступны только для пользователей с ролью api_logging

ResetPassDevice ProfileMonitorScope ProfileMonitorScope

Отключает привязку QR клиента к устройству, позволяя привязать новое. Обязательно передать profile_id,club_id

ModifyProfile ModifyProfileRequest Profile

Управляет различными признаками профиля.

DeleteClubClient ClientInfo ClientInfo

Удаление клиента из клуба, доступно для роли delete_club_client. Необходимо передать skllzz_id и club_id

MonitorApproves MonitorScope ApproveRequest stream

Мониторинг данных о запросах на подключение к клубу (если задан object_id то мониторит конкретный запрос с заданным id) доступно для manage_client_approves

ManageApprove ApproveResult ApproveResult

Управление запросом на подключение к клубу доступно для manage_client_approves

MonitorUserDevices ProfileMonitorScope UserDeviceId stream

Список устройств профиля доступно для view_client_devices

MonitorUserShelf ProfileMonitorScope Shelf stream

Состояние полки с артефактами доступно для view_client_activity

UpdateProfileArtifactShelf UpdateProfileArtifactShelfRequest Shelf

Состояние полки с артефактами доступно для update_artifact_shelf

ImpersonateClubClient ClientInfo ClientInfo

Имперсонализация клиента клуба для менеджера, доступно для роли impersonate_client. Необходимо передать skllzz_id и club_id. После вызова этого метода, у менеджера есть 30 секунд чтобы войти в приложение под своим аккаунтом и попасть в окружение клиента.

ResetProfileProgress ClientInfo ClientInfo

Сброс прогресса в неигровое состояние. доступно для роли reset_profile_progress. Необходимо передать skllzz_id и club_id.

MonitorClubRecentErrors MonitorScope SessionLogEntry stream

Мониторинг последних ошибок в работе API клуба, достаточно передать MonitorScope.club_id доступны только для пользователей с ролью api_logging

RunExpression ExpressionScope SessionLogEntry stream

Запуск скрипт-выражений. В ответ получаем поток логов которые формируются в процессе его выполнения. Поток закрывается когда скрипт завершает выполнение. В случае ошибок на этапе компиляции выражения метод сразу вернет эту ошибку

lk/challenges.proto

Top

ChallengesScope

FieldTypeLabelDescription
club_id string

идентификатор клуба

item_id string

идентификатор соревнования если нужно отслеживать конкретный элемент

DisqualifyRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

challenge_id string

идентификатор соревнования

member_id string

идентификатор участника соревнования

record DisqualifyRecord

запись о дисквалификации (если nil то вернуть обратно в команду)

MemberRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

member_id string

идентификатор участника соревнования

role LeaderboardRole

роль участника

MemberScope

FieldTypeLabelDescription
club_id string

идентификатор клуба

challenge_id string

идентификатор соревнования

member_id string

идентификатор участника соревнования

MigrateRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба в который мигрировать соревнование

url string

ссылка на соревнование

ReApplyActivityRequest

FieldTypeLabelDescription
club_id string

идентификатор клуба

profile_id string

идентификатор профиля

training_session_id string

идентификатор активности

ManageChallenges

Сервис управления соревнованиями

Method NameRequest TypeResponse TypeDescription
Monitor ChallengesScope Challenge stream

Отслеживание соревнований клуба (поддерживается NOWAIT) требуется право view_challenges

UpdateChallenge Challenge Challenge

Обновление/создание/удаление соревнования требуется право edit_challenges

MonitorTemplate ChallengesScope ChallengeTemplate stream

Отслеживание шаблонов соревнований клуба (поддерживается NOWAIT) требуется право view_challenges

UpdateTemplate ChallengeTemplate ChallengeTemplate

Обновление/создание/удаление шаблона соревнования требуется право edit_challenges

MonitorRank ChallengesScope LeaderboardRank stream

Отслеживание таблицы результатов конкретного соревнования (поддерживается NOWAIT) доступно публично

DisqualifyMember DisqualifyRequest Empty

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

Member MemberRequest Empty

Добавление или удаление участников команды (требуется право edit_challenges)

RecalculateChallenge ChallengesScope Empty

Принудительный пересчет результатов соревнования требуется право edit_challenges

Migrate MigrateRequest Empty

Миграция соревнования в V2, передается ссылка на соревнование. требуется право migrate_challenges

ReleaseChallenge Challenge Challenge

Убирает соревнование из под управления клубом требуется право edit_challenges

MonitorMemberActivity MemberScope TrainingSession stream

Отслеживание активности участника (поддерживается NOWAIT) требуется право view_challenges

ReApplyActivityToLeaderboards ReApplyActivityRequest Empty

переучитывает соревнование во всех активных лидербордах. Требуется edit_challenges

payments/common.proto

Top

ApexProvider

FieldTypeLabelDescription
account string

номер счета в магазине

key_1 string

ключ 1

key_2 string

ключ 2

success_url string

адрес возврата успешного платежа

fail_url string

адрес возврата не успешного платежа

test_mode bool

признак тестовой среды

use_hmac bool

использование подписи hmac

BasicAuth

FieldTypeLabelDescription
login string

логин

password string

пароль

BePaidProvider

FieldTypeLabelDescription
id string

ID магазина

secret_key string

секретный ключ

public_key string

публичный ключ (многострочный ввод)

test_mode bool

признак тестовой среды

CloudPaymentsProvider

FieldTypeLabelDescription
public_id string

Public ID

api_password string

Пароль для API

NewPayProvider

FieldTypeLabelDescription
user_token string

токен платежной точки

test_mode bool

признак тестовой среды

PaykeeperProvider

FieldTypeLabelDescription
basic BasicAuth

shared_secret string

колбэк токен для проверки целостности данных

server string

адрес сервера

PaymentMethod

FieldTypeLabelDescription
id string

идентификатор метода

priority int32

порядок платежной системы (чем ниже значение тем предпочтительнее для использования)

description_prefix string

префикс перед назначением платежа

beneficiary_info string

данные о бенефициаре

default_vat VatMode

НДС по умолчанию

default_service_vat VatMode

НДС по умолчанию для услуг (не пополнение депозита)

sber SberProvider

PaymoProvider paymo = 100;

redirect RedirectProvider

ApexProvider apex = 102;

vtb VtbProvider

paykeeper PaykeeperProvider

tinkoff TinkoffProvider

cloud_payments CloudPaymentsProvider

new_pay NewPayProvider

be_paid BePaidProvider

ykassa YKassaProvider

PaymoProvider

FieldTypeLabelDescription
api_key string

Ключ магазина

api_secret string

секрет магазина

success_url string

адрес возврата успешного платежа

fail_url string

адрес возврата не успешного платежа

RedirectProvider

FieldTypeLabelDescription
redirect_url string

адрес куда отправить пользователя

SberProvider

FieldTypeLabelDescription
token TokenAuth

basic BasicAuth

success_url string

адрес возврата успешного платежа

fail_url string

адрес возврата не успешного платежа

shared_secret string

колбэк токен для проверки целостности данных

test_mode bool

признак тестовой среды

TinkoffProvider

FieldTypeLabelDescription
terminal_id string

идентификатор терминала

secret string

секрет/пароль терминала

tax_mode TinkoffProvider.TaxMode

режим налогообложения

use_spb bool

использования СБП

TokenAuth

FieldTypeLabelDescription
token string

токен

VtbProvider

FieldTypeLabelDescription
basic BasicAuth

success_url string

адрес возврата успешного платежа

fail_url string

адрес возврата не успешного платежа

shared_secret string

колбэк токен для проверки целостности данных

test_mode bool

признак тестовой среды

YKassaProvider

FieldTypeLabelDescription
shop_id string

Идентификатор магазина

api_key string

Секретный ключ API

TaxSystemMode

NameNumberDescription
UNDEFINED 0

режим не определен

OSN 10

Общая система налогообложения

USN_INCOME 20

Упрощенная (УСН, доходы)

USN_INCOME_OUTCOME 30

Упрощенная (УСН, доходы минус расходы)

ENVD 40

Единый налог на вмененный доход (ЕНВД)

ESN 50

Единый сельскохозяйственный налог (ЕСН)

PATENT 60

Патентная система налогообложения

TinkoffProvider.TaxMode

NameNumberDescription
osn 0

общая

usn_income 1

упрощенная (доходы)

usn_income_outcome 2

упрощенная (доходы минус расходы)

patent 3

патентная

envd 4

единый налог на вмененный доход

esn 5

единый сельскохозяйственный налог

VatMode

NameNumberDescription
UNKNOWN 0

режим не определен

VAT_5 5

НДС 5%

VAT_7 7

НДС 7%

VAT_10 10

НДС 10%

VAT_20 20

НДС 20%

VAT_18 18

НДС 18%

VAT_5_105 105

НДС 5/105

VAT_7_107 106

НДС 7/107

VAT_10_110 110

НДС 10/110

VAT_18_118 118

НДС 18/118

VAT_20_120 120

НДС 20/120

VAT_0 1000

НДС 0%

NO_VAT 9999

НДС не облагается

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)