Мы провели вместе почти год... ❤️🔥
Встречи закончились ещё месяц назад, а я уже скучаю, и с теплом вспоминаю все занятия и сообщения наших выпускников Системный аналитик с нуля.
Для меня это огромная ответственность, чтобы вести коллег в аналитике не по отдельному направлению, а вообще по всем. С нуля.
И не пройтись обзорно, а реально разобраться.
Показать как работать.
И убедиться в том, что поняли все.
Это ваше время.
Это моё время.
И по итогам, как я вижу, всё не зря.
Процитирую один из комментариев после окончания обучения, который можно найти в историях студентов на сайте:
Ни добавить, ни убавить.
Спасибо, что выбираете GetAnalyst ❤️
#студентыGetAnalyst
Встречи закончились ещё месяц назад, а я уже скучаю, и с теплом вспоминаю все занятия и сообщения наших выпускников Системный аналитик с нуля.
Для меня это огромная ответственность, чтобы вести коллег в аналитике не по отдельному направлению, а вообще по всем. С нуля.
И не пройтись обзорно, а реально разобраться.
Показать как работать.
И убедиться в том, что поняли все.
Это ваше время.
Это моё время.
И по итогам, как я вижу, всё не зря.
Процитирую один из комментариев после окончания обучения, который можно найти в историях студентов на сайте:
Будущим ученикам желаю уделять время на обучение.
Развивать кругозор, погружаться: читать больше книг и статей по теме. А если не любите читать — слушать подкасты.
Мало просто купить курс — его надо изучить, тогда обязательно будет результат.
Ни добавить, ни убавить.
Спасибо, что выбираете GetAnalyst ❤️
#студентыGetAnalyst
❤23❤🔥6👍6
Гайд по Postman - KudaGo и DashaMail [GetAnalyst].pdf
16.3 MB
📙 Практический гайд по Postman - тестирование #KudaGoAPI и #DashaMailAPI 📙
Одним из первых и важнейших шагов при интеграции с внешней системой является исследовательское тестирование API. Например, через Postman.
Почему?
👉 Документация может быть устаревшей или неполной.
👉 В ней могут отсутствовать примеры или важные детали о полях.
👉 API может вести себя иначе, чем предполагается по описанию.
Аналитик начинает «угадывать», как оно работает, и ставит задачи разработке наобум.
В итоге — ошибки в логике, лишняя переписка с разработчиками, затянутое внедрение и разочарование от интеграции, которая
«не взлетела с первого раза»....
❗️ Именно поэтому исследовательское тестирование API — это не просто полезный навык, а необходимая часть работы аналитика при интеграции.
Чтобы погрузиться в процесс исследовательского тестирования API на практике для проекта #CityGA, подготовила для вас практический гайд по тестированию в Postman:
🔸 KudaGo API
🔸 DashaMail API
Внутри:
1. Погружение в Postman с нуля
2. Инструкция по получению API-ключа для DashaMail (ключ GetAnalyst, чтобы не проходить шаг запроса ключа у тех. поддержки - получить тут)
3. Пошаговая инструкция по тестированию KudaGo API
4. Пошаговая инструкция по тестированию DashaMail API
Выполняйте задания по инструкции и пробуйте решать задания из гайда. Если что-то не получается, то вопросы можно задавать в комментариях.
Сохраняйте в избранное и обязательно выполните эту практику до конца этой недели 🤝✅
#ИнтеграцииGA
Одним из первых и важнейших шагов при интеграции с внешней системой является исследовательское тестирование API. Например, через Postman.
Почему?
👉 Документация может быть устаревшей или неполной.
👉 В ней могут отсутствовать примеры или важные детали о полях.
👉 API может вести себя иначе, чем предполагается по описанию.
Аналитик начинает «угадывать», как оно работает, и ставит задачи разработке наобум.
В итоге — ошибки в логике, лишняя переписка с разработчиками, затянутое внедрение и разочарование от интеграции, которая
«не взлетела с первого раза»....
❗️ Именно поэтому исследовательское тестирование API — это не просто полезный навык, а необходимая часть работы аналитика при интеграции.
Чтобы погрузиться в процесс исследовательского тестирования API на практике для проекта #CityGA, подготовила для вас практический гайд по тестированию в Postman:
🔸 KudaGo API
🔸 DashaMail API
Внутри:
1. Погружение в Postman с нуля
2. Инструкция по получению API-ключа для DashaMail (ключ GetAnalyst, чтобы не проходить шаг запроса ключа у тех. поддержки - получить тут)
3. Пошаговая инструкция по тестированию KudaGo API
4. Пошаговая инструкция по тестированию DashaMail API
Выполняйте задания по инструкции и пробуйте решать задания из гайда. Если что-то не получается, то вопросы можно задавать в комментариях.
Сохраняйте в избранное и обязательно выполните эту практику до конца этой недели 🤝✅
#ИнтеграцииGA
❤19🔥5👍3⚡1❤🔥1
🧐 Анализ API-документации DashaMail: что нужно перед интеграцией 🧐
На прошлой неделе опубликовала результат анализа документации KudaGoAPI.
В этом посте разбираемся с #DashaMailAPI
✅ Документация
Вводная страница
✅ Вид API
✔ Нигде явно не указан.
✔ HTTPs-запросы.
✔ Все POST или GET - любой вариант сработает
Все POST/GET = HTTP API.
Даже на запросы по созданию данных можно использовать GET. Поэтому API нельзя назвать REST like.
✅ Авторизация и аутентификация
Стандартный способ аутентификации по API-key.
Ключ для авторизации из раздела «Аккаунт» - «Интеграции» (получать через UI).
Подставляется в query-параметры запроса (после ?).
✅ Тестовые доступы
Нет.
Если необходимо тестировать API, то рекомендуется создать второй бесплатный тестовый аккаунт.
✅ Рекомендации по использованию API
Отсутствуют.
Получаем и создаем данные в любом порядке, используем на своё усмотрение.
✅ Ограничения и особенности
Ответ может быть в одном из нескольких форматов.
Для его задания используйте переменную format:
+ JSON (default)
+ JSONP
+ XML
Количество писем, которое может быть отправлено (или кол-во адресатов), ограничивается тарифами.
✅ Общие требования к обработке ошибок
Ссылка на перечень внутренних кодов ошибок errors
Ответы на все запросы при этом HTTP-200 всегда, даже при ошибках.
✅ Список методов для нашей задачи
Для рассылки уведомлений в #CityGA нужны будут методы:
✔ Добавляем адресную базу
✔ Добавляем подписчика в базу
✔ Удаляем подписчика из базы
✔ Создаем рассылку
В ходе исследовательского тестирования и описания интеграционных Use Case возможно потребуется больше методов.
Эта информация, которая получена в результате первичного анализа API-документации DashaMail, поможет далее в исследовательском тестировании API и в постановке интеграционных задач на разработчиков 📝
#ИнтеграцииGA
На прошлой неделе опубликовала результат анализа документации KudaGoAPI.
В этом посте разбираемся с #DashaMailAPI
✅ Документация
Вводная страница
✅ Вид API
✔ Нигде явно не указан.
✔ HTTPs-запросы.
✔ Все POST или GET - любой вариант сработает
Все POST/GET = HTTP API.
Даже на запросы по созданию данных можно использовать GET. Поэтому API нельзя назвать REST like.
✅ Авторизация и аутентификация
Стандартный способ аутентификации по API-key.
Ключ для авторизации из раздела «Аккаунт» - «Интеграции» (получать через UI).
Подставляется в query-параметры запроса (после ?).
✅ Тестовые доступы
Нет.
Если необходимо тестировать API, то рекомендуется создать второй бесплатный тестовый аккаунт.
✅ Рекомендации по использованию API
Отсутствуют.
Получаем и создаем данные в любом порядке, используем на своё усмотрение.
✅ Ограничения и особенности
Ответ может быть в одном из нескольких форматов.
Для его задания используйте переменную format:
+ JSON (default)
+ JSONP
+ XML
Количество писем, которое может быть отправлено (или кол-во адресатов), ограничивается тарифами.
✅ Общие требования к обработке ошибок
Ссылка на перечень внутренних кодов ошибок errors
Ответы на все запросы при этом HTTP-200 всегда, даже при ошибках.
✅ Список методов для нашей задачи
Для рассылки уведомлений в #CityGA нужны будут методы:
✔ Добавляем адресную базу
✔ Добавляем подписчика в базу
✔ Удаляем подписчика из базы
✔ Создаем рассылку
В ходе исследовательского тестирования и описания интеграционных Use Case возможно потребуется больше методов.
Эта информация, которая получена в результате первичного анализа API-документации DashaMail, поможет далее в исследовательском тестировании API и в постановке интеграционных задач на разработчиков 📝
#ИнтеграцииGA
❤15👍5🔥2❤🔥1
🧩🎁 Открыта запись на Интеграции [до 25 сентября спец цены и БД+SQL в подарок] 🎁🧩
Почти во всех современных системах есть интеграции:
▫️ мобильные и веб- приложения
обмениваются данными с сервером по API, чтобы сохранять и отображать их пользователям,
▫️ для приема оплаты
в приложениях подключают банковские платежные системы,
▫️ микросервисы
обмениваются данными между собой.
Примеров много.
Поэтому от системных аналитиков требуют знания и опыт в интеграциях, особенно ведущие ИТ-компании рынка.
👉 В программе Интеграции систем
мы на практике разбираем все детали работы с задачами: от анализа API-документации до создания структуры требований и постановок задач на разработчиков.
🗓 Старт: 8 октября 2025
🔗 Подробности и регистрация
Формат:
✅ 10 живых онлайн-встреч
✅ Один проект в течение всей программы
✅ Решение реальных задач
✅ Обратная связь и индивидуальный подход
🎁 По заявкам до 25 сентября дополнительное обучение по БД+SQL в подарок + самые выгодные условия.
Вопросы?
Пишите @getanalyst или на почту info@getanalyst.ru
Поможем оценить текущие навыки, пришлем дополнительную информацию и ответим на вопросы 🤝
Почти во всех современных системах есть интеграции:
▫️ мобильные и веб- приложения
обмениваются данными с сервером по API, чтобы сохранять и отображать их пользователям,
▫️ для приема оплаты
в приложениях подключают банковские платежные системы,
▫️ микросервисы
обмениваются данными между собой.
Примеров много.
Поэтому от системных аналитиков требуют знания и опыт в интеграциях, особенно ведущие ИТ-компании рынка.
👉 В программе Интеграции систем
мы на практике разбираем все детали работы с задачами: от анализа API-документации до создания структуры требований и постановок задач на разработчиков.
Формат:
✅ 10 живых онлайн-встреч
✅ Один проект в течение всей программы
✅ Решение реальных задач
✅ Обратная связь и индивидуальный подход
🎁 По заявкам до 25 сентября дополнительное обучение по БД+SQL в подарок + самые выгодные условия.
Вопросы?
Пишите @getanalyst или на почту info@getanalyst.ru
Поможем оценить текущие навыки, пришлем дополнительную информацию и ответим на вопросы 🤝
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13❤🔥2
Интеграционный Use Case отличается от обычного тем, что он содержит технические детали:
+ вызовы API,
+ сохранение данных в БД,
+ обмен данными между микросервисами через брокеры,
+ и другие.
То есть всё то, что помогает понять, как "перетекают" данные в ходе работы системы.
Разбираемся подробнее на примере для #CityGA, где у нас UI в процессе работы вообще отсутствует 😱
📌 Use Case:
+ Автоматическая рассылка событий по расписанию
👉 Приложения и системы:
+ Backend CityGA
+ Kafka Broker
👉 Внешние системы:
+ KudaGo API
+ DashaMail API
👉 Предусловия:
+ Для каждого города задан часовой пояс
+ В CityGA сохранены предпочтения пользователей по категориям и выбран город
+ В DashaMail заранее созданы адресные списки под каждую группу категорий
+ В Kafka создан топики notifications.email.events для получения сообщений о необходимости запуска рассылки
👉 Основной сценарий:
1. Для каждого поддерживаемого города в системе еженедельно, по средам, в 10:00 его часового пояса, срабатывает планировщик задач в Backend.
2. Backend рассчитывает окно предстоящей недели - с чт по ср.
Пример:
Сегодня 17 сентября 2025 (ср).
Плановое окно для выбора новых мероприятий:
18.09.2025 00:00 → .24.09.2025 23:59:59 (GMT+3).
Для KudaGo это Unix-секунды:
actual_since=1758178800,
actual_until=1758783599.
3. Выполняется первичный запрос по событиям в выбранном городе на указанный период, без фильтра по категориям, в API KudaGo:
GET /public-api/v1.4/events
+ Получаем до 10 записей за один запрос от KudaGo
+ Использовать порядок сортировки favorites_count при получении данных от KudaGo
+ Исключать события «всегда доступно»/«без времени» - фильтрация на стороне CityGA
3.1. Сформировать сообщение в топик Kafka notifications.email.events для отправки рассылки, со списком из 10 полученных событий от KudaGo и с id листа подписчиков на город, у которых не настроены фильтры по категориям.
4. Далее повторять запрос по событиям в выбранном городе на указанный период, через API KudaGo, с фильтрами по категориям.
GET /public-api/v1.4/events
Например:
+ у одной группы пользователей в избранном только бизнес-события, выполнить запрос только с фильтром по этой категории на 10 записей;
+ у другой группы пользователей в избранном бизнес-события и детские мероприятия, выполнить запрос только с фильтром по этим двум категориям на 10 записей;
и т.д.
4.1. По каждому уникальному набору фильтров формировать сообщение в топик Kafka notifications.email.events для отправки рассылки, со списком из 10 полученных событий от KudaGo и с id листа подписчиков.
Повторять 4 и 4.1 для всех уникальных наборов категорий у пользователей в городе.
-------
5. Сервис Уведомлений последовательно читает сообщения из брокера Kafka.
5.1. После считывания очередного сообщения Сервис Уведомлений формирует HTML шаблон письма для рассылки.
5.2. Сервис Уведомлений вызывает API DashaMail для создания и отправки рассылки, передавая на вход созданный HTML-шаблон, id листа контактов из DashaMail и другие параметры (см. маппинг), метод:
campaigns.create
5.3. Сервис Уведомлений логирует вызов метода внешней системы.
-------
👉 Альтернативные сценарии и дополнительные детали
Всё будет, но не сейчас.
Оформим в Confluence 😎
Это первый подход к описанию логики работы системы.
Use Case ещё будет доработан.
📌 Вопросы,которые остаются после первого подхода к написанию интеграционного Use Case:
А. Есть ли у вас предложения по улучшению логики работы (алгоритма)?
Б. Должны ли мы что-то в процессе работы сохранить в БД?
В. Дейстительно ли метод campaigns.create сразу создает и отправляет рассылку? Нужны дополнительные действия?
Г. Можем ли мы фильтровать события «всегда доступно»/«без времени» на стороне KudaGo?
Д. Откуда мы получаем комбинации категорий?
Это то, что сейчас точно упущено в Use Case.
Рассуждайте, пробуйте отвечать на мои вопросы и задавайте свои в комментариях 🙌 Будем улучшать его вместе!
#ИнтеграцииGA
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥17👍6🔥4❤3
🔑 5 основных способов авторизации в API и их влияние на интеграции 🔑
При проектировании интеграций, системному аналитику важно заранее продумать сценарий авторизации запросов во внешнюю систему.
Почему?
1. Без авторизации вызовы API просто не пройдут — интеграция «упадёт» уже на первом шаге.
2. Разные механизмы требуют разной логики работы и обработки ошибок.
3. Чёткое понимание процесса авторизации упрощает тестирование и облегчает отладку сценариев интеграции.
📌 Основные способы авторизации
API Key
Basic Auth
Bearer Token
JWT Token
OAuth 2.0
Mutual TLS (по сертификатам)
📌 Как оформлять в требованиях?
При работе с задачей на интеграцию, аналитик пишет требования к интеграционным API-методам или Backend-процессам для своей системы, в логике которых встроены вызовы внешних API.
👉 Не дублируйте требования к авторизации в одном и том же внешнем API в каждом Use Case, который его использует.
Вместо того, чтобы в каждом интеграционном Use Case описывать требования к авторизации во внешней системе и обработку её ошибок, достаточно вынести общие требования к авторизации в отдельную статью (+задачу) и затем ссылаться на неё.
При описании отдельных API-методов или Backend-процессов лучше фокусироваться только на специфике их работы.
📌 Обработка ошибок
Важно предусмотреть и описать требования к обработке ошибок аутентификации и авторизации в процессе работы интеграции:
❌ 401 Unauthorized — неверные или отсутствующие учётные данные. Возможна повторная фоновая аутентификация.
❌ 403 Forbidden — недостаточно прав для выполнения операции, хотя аутентификация (учётные данные) может быть верной.
❌ 419 Token Expired — срок действия токена истёк, требуется рефреш или повторная фоновая аутентификация.
❌ 429 Too Many Requests — превышен лимит запросов (для API Key/токена OAuth, учетной записи).
📌 Логирование
Логируйте и мониторьте случаи ошибок авторизации.
Если попытки повторной фоновой авторизации не приводят к успеху, то есть высокий риск, что интеграция "упала".
#ИнтеграцииGA
При проектировании интеграций, системному аналитику важно заранее продумать сценарий авторизации запросов во внешнюю систему.
Почему?
1. Без авторизации вызовы API просто не пройдут — интеграция «упадёт» уже на первом шаге.
2. Разные механизмы требуют разной логики работы и обработки ошибок.
3. Чёткое понимание процесса авторизации упрощает тестирование и облегчает отладку сценариев интеграции.
📌 Основные способы авторизации
API Key
Basic Auth
Bearer Token
JWT Token
OAuth 2.0
Mutual TLS (по сертификатам)
📌 Как оформлять в требованиях?
При работе с задачей на интеграцию, аналитик пишет требования к интеграционным API-методам или Backend-процессам для своей системы, в логике которых встроены вызовы внешних API.
👉 Не дублируйте требования к авторизации в одном и том же внешнем API в каждом Use Case, который его использует.
Вместо того, чтобы в каждом интеграционном Use Case описывать требования к авторизации во внешней системе и обработку её ошибок, достаточно вынести общие требования к авторизации в отдельную статью (+задачу) и затем ссылаться на неё.
При описании отдельных API-методов или Backend-процессов лучше фокусироваться только на специфике их работы.
📌 Обработка ошибок
Важно предусмотреть и описать требования к обработке ошибок аутентификации и авторизации в процессе работы интеграции:
❌ 401 Unauthorized — неверные или отсутствующие учётные данные. Возможна повторная фоновая аутентификация.
❌ 403 Forbidden — недостаточно прав для выполнения операции, хотя аутентификация (учётные данные) может быть верной.
❌ 419 Token Expired — срок действия токена истёк, требуется рефреш или повторная фоновая аутентификация.
❌ 429 Too Many Requests — превышен лимит запросов (для API Key/токена OAuth, учетной записи).
📌 Логирование
Логируйте и мониторьте случаи ошибок авторизации.
Если попытки повторной фоновой авторизации не приводят к успеху, то есть высокий риск, что интеграция "упала".
#ИнтеграцииGA
❤16👌10👍8❤🔥3