Одной унылой ночью мне стало скучно разгребать БИНы российских банков, отчего я решил сделать дублирование операций из своего ныне основного банка в телеграм. Тем более, что качество обновлений оставляет желать лучшего (или это просто я избалован лучшим мобильным приложением от одного там небанка)
Отрицание. Что делают хоть немного люди, когда хотят попользоваться непубличным API? Наверное, идут на GitHub и вводят в строку поиска что-то типа "api service_name". Много что уже заревёр(с/ш)ено, посему велик шанс найти полноценный враппер. Но нет, обнаруживаю только всяку каку с хакатонов.
Гнев. DuckDuckGo'инг тоже не даёт результатов. Неужели никто не пытался автоматизировать работу с Райфом?
Торг. Открываю веб-банк и смотрю через монитор сети (ctrl+shift+e в лисе), куда шлются запросы после каких-либо действий. Ага. Ищу по доменам на гитхабе. Опять ничего. ВАААУ. Уже становится страшно.
Депрессия. Расковырял APK'шку и судорожно ищу по всем файлам наличие "raiffeisen.ru", однако kFind ничего сверхъестественно-полезного не выдаёт. Как и по запросу "api".
Смирение. Достаю свой прошлый телефончик с Android 8.1 на борту, ставлю купленный несколько лет назад для решения похожей задачи с одним там небанком HttpCanary — шикарный клиент для анализа http(s), tcp, udp и web-socket трафиков. Ставлю доверенный сертификат, ля-ля-ля тополя, бюрократия, в общем. Теперь активирую self-vpn и запускаю заветный Raiffeisen.
Принятие. В PiP-окошко с логом всех http-запросов летит первый мусор на всякие уведомления. Прикладываю палец к сканеру, дабы войти в приложение. Ага. Вижу запрос, содержащий "oauth/token". Чую, что что-то связанное с авторизацией. Пускает в приложение. Но вот незадача, никакие данные не отобржаются, типа баланса счетов или истории операций. Окей, смею в тот момент предположить, что это как-то связано с доверенным сертификатом. Тыкаю в раздел операций. Тоже не отображаются данные, но запрос ушёл успешно. Можно отключать анализ и идти разгребать урылы, заголовки и содержимое.