Обновить
22.07

Проектирование API *

О создании API

Сначала показывать
Порог рейтинга
Уровень сложности

Как сделать SMS-оповещение о землетрясениях с GeoJSON и SMS API

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров827

Привет, Хабр! Слышали о землетрясениях, которые происходят каждый день по всему миру? Как правило, если вы не сейсмолог или не живёте рядом с тектоническим разломом, то вам всё равно. Но информировать людей о реальных катастрофах в их регионе очень важно, покажем пример такой системы оповещения через SMS.

Читать далее

Работа с API: 17 полезных ссылок для системного аналитика

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров12K

Привет! Это команда Яндекс Практикума. Делимся подборкой экспертов курса «Системный аналитик» — со статьями, курсами, книгами, видео и инструментами для аналитиков, разработчиков, тестировщиков и других специалистов, работающих с API.

Читать далее

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

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2K

Как студенческое исследование по оценке репутации контрагентов с использованием открытых данных переросло в ИТ-решение представителя среднего бизнеса.

История моей ИТ-инициативы началась с университетского проекта по управлению рисками, выполненного на кафедре «Бизнес-информатика» Финансового университета. Совмещая приятное с полезным, одновременно с учебным проектом занимался оценкой благонадежности контрагентов и рисков сотрудничества с ними в реальном бизнесе.

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

Руководству были представлены результаты исследования взаимосвязей между репутацией и благонадёжностью контрагентов. На основе проведённого исследования было принято решение внедрить ИТ-решение по автоматизации анализа и визуализации данных с использованием открытых данных из источников, таких как ФНС, Право.ру и СКБ Контур, доступных через открытые API. Так, функционал этих инструментов начал применяться в реальном бизнесе для оценки благонадёжности контрагентов.

Читать далее

Руководство по восстановлению удаленных сообщений и медиаданных в Telegram

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров46K

Удаление сообщений и файлов в Telegram часто воспринимается как необратимый процесс, но способ вернуть потерянные данные все же есть.

В статье подробно описан процесс восстановления удаленной информации, включая ключевые шаги и инструменты, которые помогут в этом.

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

Восстановить!

Как из R-Keeper получать регулярную сводку по продажам заведения

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров858

В этой статье мы покажем простое решение, которое поможет отслеживать финансовые показатели своего заведения, работающего на R-Keeper. Материал даст представление о том, как может выглядеть серверная интеграция с внешними сервисами, и, надеемся, натолкнёт на новые мысли.

Читать далее

Автотесты: что есть 100% покрытие API?

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров9.5K

Ку! Меня зовут Евген, и я Автоматизатор тестирования на Python. В этой статье я расскажу как из вопроса ко мне «на сколько% у нас покрыта API автотестами?» Я выдал базу в виде регламента по автоматизации API.

Читать далее

Как уведомлять клиентов о снижении цен на избранные товары в 1С-Битрикс

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров794

Когда клиент откладывает покупку, ожидая скидки, важно не потерять его интерес. Уведомления о снижении цен на избранные товары помогают вовремя сообщать пользователям о выгодных предложениях, возвращая их на сайт и стимулируя продажи. В статье мы расскажем, как настроить такую функцию в 1С-Битрикс.

Читать далее

Интеграция API — это кошмар

Время на прочтение4 мин
Количество просмотров2.5K
А вам казалось, что соединение API друг с другом — это нескончаемая битва?

Сейчас у нас уже есть машины, которые умнее людей. Но мы до сих пор не можем как следует справиться с интеграцией API. Что не так с API, которые часто становятся для разработчиков камнем преткновения? Интернету примерно 55 лет. Всемирной Паутине — 34 года. Даже JSON уже 18, я не шучу. За всё это время так и не найден простой способ соединять API. Почему так складывается, и почему мы общими силами не можем этого исправить? Читайте дальше.
Читать дальше →

FastAPI и Vue.js 3: телеграм-бот с MiniApp для записи и автоматических уведомлений. Пишем бэкенд

Время на прочтение41 мин
Количество просмотров16K

Сегодня я рад представить новый масштабный проект, в рамках которого мы подробно рассмотрим технологии и подходы, ранее не освещенные в моих статьях.

На этот раз мы создадим телеграм-бота с MiniApp (ранее известным как WebApp) — это будет бот с интегрированным мини-сайтом прямо в Telegram. Для реализации проекта мы используем два основных фреймворка:

1. FastAPI — мощный Python-фреймворк, который мы задействуем для разработки API нашего телеграм-бота. Мы рассмотрим уникальный подход, позволяющий создать полноценный бэкенд, который будет закрывать как API-методы, так и функционал телеграм-бота.

2. Vue.js 3 — JavaScript-фреймворк, выбранный за его удобство разработки и возможности создания сложных визуальных элементов.

В этой статье мы сосредоточимся на описании бэкенда, а создание приложения на Vue.js 3 будет вынесено на следующую статью.

Читать далее

Баг в дизайне коллекций

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.9K

В этой статье речь пойдёт о фреймворке коллекций в Java. Относительно недавно (в 3 кв. 2023 года) эта библиотека вновь слегка обновилась. Я ознакомился с обновлениями, и скажу, что они меня разочаровали.

Далее идёт разбор того, что именно я считаю концептуально неверными архитектурным решением в коллекциях, и предложение своего способа их организации.

Итак случившееся обновление - добавление последовательных версий интерфейсов в коллекции, а именно SequencedCollection, SequencedSet и SequencedMap. Такие последовательные коллекции ещё во времена Рапиры, кажется, называли кортежами.

Читать далее

Почему текстовые форматы не идеальны в разработке: пример на JSON

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров13K

JSON - наш повседневный помощник, но вместе с другими текстовыми форматами он может преподнести неприятные сюрпризы: потеря точности чисел, громоздкие файлы, путаница с датами. Рассказываю, как этих проблем избежать и повысить эффективность с помощью стриминга в Node.js, а также MessagePack и Protobuf. Узнайте, где подводные камни и как их обходить на практике!

Если хотите понять, в чём именно проблема на иллюстрации, загляните в статью — там всё разобрано :-)

Читать далее

Как отправлять SMS из Google Таблиц с использованием Google Apps Script: 2 способа

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.6K

Всем привет! У платформы МТС Exolve есть сообщество, которое часто делится полезными гайдами от прокачки серверов до создания своих приложений. Наиболее интересные и подробные продолжаем размещать в нашем хабе.

Google Таблицы — мощный инструмент для работы с данными. Их потенциал значительно расширяется с помощью Apps Script. 

В этом и этом гайдах пользователи рассмотрели два способа отправки SMS прямо из таблиц: индивидуальные разовые уведомления и массовые рассылки. Мы чуть дополнили гайд.

Читать далее

Выгрузка карточек товаров на Озон через API

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6.8K

При разработке нашей системы OpenPIM мы столкнулись с необходимостью выгружать карточки товаров на Озон. У Озона есть официальная документация по АПИ, но при этом существует масса мелочей которые не всегда ясны и мы потратили много времени чтобы со всем этим разобраться. Поэтому мы решили поделиться с вами техническими деталями работы с API Озон.

При этом, надо учитывать, что мы занимаемся только созданием или обновлением карточек товаров со всей необходимой информацией, но не занимаемся вопросами цен, остатков и т.д. Поэтому в данной статье мы остановимся только на этом.

Читать далее

Ближайшие события

Часть 1: Как я создал идеальный REST API — микросервис инцидентов на Java и Spring

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров24K

В этой статье вы узнаете, как спроектировать и реализовать REST API для микросервиса на Java с использованием Spring Framework.

Рассмотрим лучшие практики, принципы архитектуры, реализацию CRUD-операций и удобные инструменты, такие как Lombok, ControllerAdvice, MapStruct. Эта статья будет полезна как начинающим разработчикам, так и тем, кто хочет улучшить свои навыки в проектировании REST API.

Читать далее

Контекст диалога в pytelegrambotapi

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров54K

Контекст в чат-ботах играет ключевую роль в создании удобных и интерактивных взаимодействий с пользователем. Без него бот теряет связь с предыдущими сообщениями, что усложняет диалог. В этой статье мы рассмотрим, как реализовать систему контекстных диалогов на Python с использованием библиотеки telebot. Мы покажем, как управлять состоянием диалога, сохранять контекст и обрабатывать несколько пользователей одновременно, делая бота более умным и персонализированным.

Читать далее

Следим за Telegram по-деловому

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров12K

Прошло полгода с момента введения бизнес-режима в Telegram.

Суммарно за это время им воспользовались около 300.000 раз (в приложении, где миллионы сообщений отправляются ежедневно).

В статье я расскажу, как можно классно использовать использовать эту фичу и не потерять свой аккаунт.

Прочитать

Один год с GraphQL: как технология работает на длинной дистанции?

Время на прочтение8 мин
Количество просмотров14K

Предновогодний кодфриз — это время для полезных открытий: есть возможность поковыряться в имеющихся системах и что-нибудь исправить.

В Сравни у нас много продуктов, включая сервисы подбора и покупки полиса ОСАГО, подбора кредита, образовательных курсов, онлайн-оформления ипотеки. Информация о пользователях хранится и обрабатывается в специальном центральном сервисе (Profile Service). На текущий момент сервис содержит миллионы объектов пользователей, а нагрузка в пиковые моменты там до 180 запросов в секунду.

Исходная реализация Profile Service была построена на микросервисах и, как казалось нам ранее, полностью покрывала наши потребности: в плане гибкости взаимодействия с продуктами и работы с существующей нагрузкой. Изменения назрели под конец прошлого года, когда продуктовые команды стали настойчиво обращаться в команду сервиса для решения срочных задач. Здесь им регулярно требовалась помощь разработчиков — и команда Profile Service около месяца занималась только обработкой продуктовых запросов.

В попытках исправить ситуацию мы пришли к идее задействовать GraphQL. Под катом рассказываем, как провели год с GraphQL, и как за это время нам удалось облегчить жизнь и технологическим, и продуктовым командам.

Читать далее

Контракт REST API: Пригладим названия

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.6K

А сколько у вас в компании во внутренних системах используется наименований одного и того же поля в API? А сколько способов назвать поле, которое перечисляет список id?

Я часто сталкиваюсь с тем, что при проектировании и разработке HTTP REST API команды (чаще неосознанно) собирают целый семантический и лексический зоопарк наименований. Потом бывает сложно разобраться, что нужно записать в определенное поле, или какое название поля выбрать для перечисления списка ID из уже существующих.

Поэтому я однажды собрала для себя и коллег гайд–чек-лист под названием “Приглаживаем названия в API” и теперь публикую его для широкой аудитории. Уверена, что он кому-то да пригодится.

Читать далее

Как за 10 минут создать тестировщик нагрузки для API на Node.js

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.5K

Приветствую Хабр!

Решил поделиться своим проектом, который позволяет быстро создать инструмент для тестирования нагрузки HTTP-запросов (GET и POST) к заданному API. Этот инструмент идеально подходит для разработчиков и тестировщиков, которые хотят проверить производительность своих API с минимальными затратами времени на настройку.

Читать далее

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

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1.6K

Утро, аромат свежесваренного кофе, и телефон тихонько напоминает вам о приеме важного лекарства. «Привет! Не забудь принять лекарство!» Такую систему можно реализовать самостоятельно с помощью Golang и Exolve API.

В этой статье я покажу, как клиники и медцентры могут построить надежную систему SMS-напоминаний.

Читать далее

Вклад авторов