1. Кто мы
«Удаль» — дневник силовых тренировок для iPhone и Apple Watch. Интерфейс только на русском. Приложение бесплатное: в нём нет покупок, подписок и рекламы.
Оператор ваших данных — физическое лицо Карпенко Владислав Олегович. Вопросы по данным и запросы о правах — на support@udal-sport.ru. Сайт приложения — udal-sport.ru, сервер приложения — api.udal-sport.ru.
В приложении нет сторонних библиотек аналитики, рекламы и отслеживания. Мы не используем рекламный идентификатор и не показываем запрос на отслеживание, потому что не отслеживаем вас.
2. Что происходит без входа
Вход в аккаунт не обязателен: без него приложение работает полностью. Данные хранятся на устройстве. Приложение само ничего не сохраняет в iCloud и не использует CloudKit. Но если у вас включена резервная копия iPhone в iCloud, данные приложения попадут в неё как часть копии всего устройства — это механизм Apple, и управляете им вы в настройках iPhone.
iPhone и часы обмениваются данными напрямую между собой — это два ваших устройства, через сервер такой обмен не идёт.
Единственное, что уходит с устройства без входа, — отчёты о падениях приложения. Они приходят на наш же сервер: приёмом отчётов занимается сервис GlitchTip, работающий на том же сервере, — третьей стороне отчёты не передаются. В отчёт попадают: идентификатор и версия приложения, номер сборки, метка сборки (тестовая или рабочая), версия операционной системы, модель устройства, тип и текст ошибки, а также системный отчёт о падении с деревом вызовов кода. В нём нет вашего идентификатора, e-mail, тренировок и данных «Здоровья». Выключателя для отчётов в приложении сейчас нет. Отчёты хранятся 90 дней.
Вход по почте
Вход нужен, чтобы синхронизировать данные между вашими устройствами, сохранять их на сервере и пользоваться «Доступом ИИ». Вход устроен так: вы вводите адрес почты, получаете письмо с кодом из шести цифр и вводите его. Код действует 10 минут, используется один раз и хранится у нас только в виде хэша — восстановить его из базы нельзя.
Ваш e-mail хранится на сервере открытым текстом. Ключи входа (токены) лежат на iPhone в системном хранилище Keychain и не синхронизируются через iCloud Keychain. Также мы сохраняем имя вашего устройства — чтобы вы узнавали свои сессии в списке входов.
Выход из аккаунта ничего не удаляет: данные остаются на iPhone и скрываются до следующего входа.
3. Какие данные и где лежат
| Данные | На устройстве | На сервере после входа | Кому ещё |
|---|---|---|---|
| Программы и планы: названия, заметки, упражнения, плановые веса и повторы | Да | Да | ИИ — только если вы сами подключили и дали право на чтение программ |
| Тренировки и подходы: время начала и конца, название, заметка, упражнения, вес, повторы, время, дистанция, RPE, время отметки подхода, плановые значения, где начата тренировка (телефон или часы) | Да | Да | ИИ — только если вы сами подключили и дали право на чтение тренировок |
| Пульс тренировки: средний и максимальный, активные калории, полный ряд пульса, идентификатор тренировки в «Здоровье» | Да | Да | ИИ — только если вы сами подключили и дали оба права: на чтение тренировок и на чтение здоровья |
| Замеры тела: дата, вес, процент жира, обхваты (шея, грудь, талия, бёдра, бицепсы, предплечья, икры и другие) | Да | Да | ИИ — только если вы сами подключили и дали право на чтение замеров |
| Свои упражнения, избранное, настройки, состояние прогрессии нагрузки | Да | Да | ИИ получает ваши упражнения при праве на чтение программ; избранное и настройки ему не передаются |
| Показатели «Здоровья» (выгрузка) | Да, в «Здоровье» на iPhone | Только если вы включили выгрузку отдельным согласием | ИИ — только если вы сами подключили и дали отдельное право на чтение здоровья |
| E-mail и имя устройства | Да | Да, e-mail хранится открытым текстом | Яндекс 360 — почта нашего домена: доставляет письмо с кодом входа, в нём же хранится переписка с support@udal-sport.ru |
| Отчёты о падениях приложения | — | Да, на наш же сервер и без входа; без сведений о вас | — |
Входа через Apple в приложении нет, поэтому идентификатор Apple мы не получаем и не храним.
4. Данные Apple Health
Приложение обращается к «Здоровью» только там, где это нужно для работы, и спрашивает разрешение по месту, а не пакетом при первом запуске. Отказ — нормальное состояние: приложение продолжит работать, просто без пульса и без записи тренировок в «Здоровье».
Что читаем и зачем
- Apple Watch. Во время тренировки читаем пульс и активные калории — чтобы показывать их на часах и сохранить в тренировке. Эти значения — средний и максимальный пульс, полный ряд пульса, активные калории и идентификатор тренировки в «Здоровье» — уезжают на сервер внутри записи тренировки после входа, без отдельного согласия.
- iPhone. Читаем вес и процент жира — чтобы подставить их в форму замера. Если вы сохранили из них замер, он уходит на сервер вместе с остальными замерами после входа.
- iPhone, оценка готовности к тренировке. Читаем вариабельность пульса, пульс покоя, сон, частоту дыхания и температуру запястья во сне. Оценка считается на самом устройстве; ради неё эти значения на сервер не отправляются.
- iPhone, выгрузка здоровья. 23 показателя читаются только после вашего отдельного согласия и только для выгрузки (см. ниже).
Что пишем и зачем
- Apple Watch. Записываем тренировку вместе с калориями и пульсом — чтобы закрывались кольца активности.
- iPhone. Записываем тренировки, а также вес и процент жира из формы замера.
Выгрузка здоровья на сервер
Выгрузка выключена по умолчанию. Включить её можно только вручную: Профиль → «Настройки» → «Выгрузка здоровья» → «Разрешить выгрузку». Отправка идёт только при выполненном входе в аккаунт.
Уходят такие группы показателей — так же, как они названы на экране согласия:
- Пульс и восстановлениеПульс, пульс покоя, средний пульс при ходьбе, вариабельность ритма, частота дыхания, кислород в крови, температура запястья во сне, МПК.
- Активность и энергияАктивные калории и калории покоя, минуты тренировки и стояния, шаги, дистанция, этажи, интенсивность усилия, асимметрия походки, скорость подъёма по лестнице.
- СонВремя и стадии сна.
- Состав телаВес, процент жира, тощая масса, обхват талии.
Вместе со значениями уходят: источник значения (название и идентификатор приложения или устройства, которое его записало), часовой пояс и служебный идентификатор установки приложения.
Включённая выгрузка дальше работает сама в фоне — примерно раз в сутки, — пока вы её не выключите.
Чего мы с этими данными не делаем
Данные «Здоровья» не используются для рекламы и маркетинга, не продаются, не передаются брокерам данных. Приложение не сохраняет их в iCloud.
Как отозвать доступ
- Доступ приложения к «Здоровью»: Настройки iPhone → Здоровье → Доступ к данным и устройства → Удаль. То же самое можно сделать в приложении «Здоровье»: профиль → Приложения.
- Выгрузку на сервер: Профиль → «Настройки» → «Выгрузка здоровья». «Выключить экспорт» останавливает отправку. «Удалить выгруженное» физически стирает всю выгрузку с сервера и заодно выключает выгрузку; в «Здоровье» на iPhone ваши данные при этом остаются.
5. Зачем мы обрабатываем данные и на каком основании
Мы обрабатываем данные только для того, чтобы приложение работало: вести дневник тренировок, синхронизировать его между вашими устройствами, хранить копию на сервере, отправлять код для входа и чинить падения приложения. Рекламы, отслеживания, профилирования и продажи данных нет. Основание обработки — ваше согласие: вы даёте его, когда входите в аккаунт и когда включаете отдельные возможности. Данные о здоровье — особая категория, и на их выгрузку и на доступ ИИ вы даёте отдельное явное согласие, которое можно отозвать в любой момент.
Одно исключение назовём прямо: отчёты о падениях уходят без вашего согласия — они нужны, чтобы приложение работало и чинилось. Они обезличены, но отказаться от них сейчас нельзя: выключателя в приложении нет.
6. Сервер и защита
Сервер приложения работает на виртуальной машине хостинг-провайдера FirstVDS в Москве, Россия. Сервер не выделенный: на нём работают и другие сервисы.
Все данные передаются между приложением и сервером по HTTPS (TLS, сертификат Let's Encrypt). Секреты — коды входа и ключи доступа — хранятся только в виде хэшей.
Честно о границе: база на сервере отдельно не шифруется, сквозного шифрования в приложении нет. Это значит, что администратор сервера технически может прочитать ваши данные.
Что пишется в журналы:
- Приложение на сервере записывает внутренний идентификатор пользователя и тип операции. E-mail и значения показателей в журнал не пишутся. Журнал ротируется (5 файлов по 10 МБ).
- Веб-сервер записывает стандартный журнал доступа: IP-адрес, время, адрес запроса и User-Agent. Он хранится 14 дней.
Резервные копии базы делаются вручную перед обновлениями сервера и лежат на том же сервере. Удаляем их тоже вручную — храним не дольше 90 дней.
7. Третьи лица
Сторонних библиотек в приложении нет. Данные могут оказаться только у этих сторон:
- AppleHealthKit и Keychain. Это части операционной системы; данные остаются на вашем устройстве.
- FirstVDSХостинг-провайдер сервера приложения (Москва, Россия).
- Яндекс 360Почта нашего домена. Через неё доставляются письма с кодом входа (в письме только код: ни имени, ни данных тренировок) и идёт переписка с support@udal-sport.ru — то, что вы нам пишете, хранится в этом почтовом ящике.
- Anthropic (Claude) и OpenAI (ChatGPT)Только если вы сами подключили «Доступ ИИ». Подробнее — в следующем разделе.
Отчёты о падениях третьей стороне не уходят: их принимает сервис GlitchTip на том же сервере.
8. Доступ ИИ
Вы можете подключить к своему дневнику Claude (Anthropic) или ChatGPT (OpenAI). Это делается только вами и только вручную — через форму подключения на api.udal-sport.ru. Там же вы выбираете права: программы (чтение), тренировки (чтение), замеры тела (чтение), здоровье (чтение — отдельное право); предлагать черновики программ и правки планов — применяете их вы сами в приложении. Изменять ваши данные ИИ не может: инструментов записи у него нет.
Если вы подключили ИИ, ваши данные уходят его оператору в момент запроса и дальше обрабатываются по правилам Anthropic или OpenAI. Ключи доступа коннектора живут 1 час, ключ обновления — 60 суток.
Мы ведём журнал обращений: время, какая операция выполнялась, имена параметров без их значений, итог и объём ответа. Журнал хранится, пока существует аккаунт.
Отозвать доступ: Профиль → «Доступ ИИ» → «Отозвать». Доступ прекращается сразу.
9. Сколько храним и как удалить
- Данные аккаунта хранятся, пока существует аккаунт.
- Сырые показатели выгрузки здоровья удаляются автоматически через 24 месяца. Суточные и часовые сводки и сон хранятся, пока существует аккаунт или пока вы сами не удалите выгрузку.
- Отчёты о падениях — 90 дней. Журнал доступа веб-сервера — 14 дней.
- Резервные копии базы — не дольше 90 дней (см. раздел «Сервер и защита»).
Когда вы удаляете запись в приложении, она помечается удалённой и на сервере: сама строка остаётся там, пока существует аккаунт, — она нужна, чтобы удаление дошло до остальных ваших устройств. Физически всё исчезает при удалении аккаунта.
Удаление аккаунта
Профиль → «Аккаунт» → «Удалить аккаунт». На сервере аккаунт и все связанные с ним данные удаляются сразу и физически: тренировки, программы, замеры, настройки, выгрузка здоровья, подключения ИИ и журнал их обращений, сессии входа. Если у вас есть история, перед удалением приложение предложит перенести её в другой аккаунт или удалить вместе с аккаунтом.
На iPhone данные аккаунта тоже удаляются. Записи, которые вы сделали без входа и не перенесли в аккаунт, остаются на устройстве. Тренировки, уже записанные в «Здоровье», остаются в «Здоровье» — их удаляют там.
Что остаётся после удаления аккаунта, честно:
- Ваш e-mail в служебном журнале кодов входа. Эта таблица не связана с аккаунтом и сейчас не очищается автоматически. Напишите на support@udal-sport.ru — удалим вручную.
- Данные в резервных копиях базы — до истечения срока их хранения.
Если вы не заводили аккаунт, удалите приложение с iPhone и с часов — данные удалятся вместе с ним.
10. Ваши права
Вы можете:
- узнать, какие ваши данные у нас есть;
- получить их копию;
- исправить их — большинство правится прямо в приложении;
- удалить их: отдельные записи — в приложении, всё целиком — удалением аккаунта в приложении или письмом нам;
- отозвать согласие — на выгрузку здоровья, на доступ ИИ, на доступ приложения к «Здоровью»;
- пожаловаться в надзорный орган: в России — Роскомнадзор, в Евросоюзе — надзорный орган по защите данных вашей страны.
Как воспользоваться: то, что можно сделать самостоятельно, делается в приложении; всё остальное — письмом на support@udal-sport.ru. Отвечаем в течение 10 рабочих дней.
11. Дети
Приложение не предназначено для лиц младше 16 лет. Мы сознательно не собираем данные детей. Если вы считаете, что ребёнок завёл аккаунт, напишите на support@udal-sport.ru — мы удалим аккаунт и его данные.
12. Изменения политики и контакты
Дата вступления в силу действующей редакции указана вверху страницы. Если политика меняется, мы публикуем новую редакцию на этой же странице с новой датой; прежние редакции остаются доступны по адресу /privacy/<дата>/.
Вопросы по данным, запросы о правах и жалобы — support@udal-sport.ru. Оператор: Карпенко Владислав Олегович, физическое лицо.