Что это
Microsoft Graph API объединяет программный доступ к нескольким сервисам Microsoft через один адрес. Например, приложение может прочитать профиль вошедшего пользователя или получить разрешенные файлы. Разные ресурсы имеют свои методы, права и ограничения.
Доступ подтверждается OAuth-токеном Microsoft Entra ID. Делегированный доступ работает от имени вошедшего пользователя; доступ приложения без пользователя поддерживается не каждым методом. В частности, /me требует вошедшего пользователя и не подходит для app-only авторизации.
AI-ассистент может использовать Graph через ваш код. Но API сам не выбирает задачи, не пишет ответы и не проверяет вывод модели. Какие данные читать, какие действия разрешить и когда запросить подтверждение, определяет приложение.
Ключевые параметры
- Категория: Операционные задачи
- Сложность: Для разработчика
- Запуск: Около 30 минут
- Open-source: Нет
- Данные: Не известно
- Чувствительные данные: Только с настройками
Сильные стороны
- Единый адрес API упрощает работу приложения с несколькими сервисами Microsoft.
- Делегированные разрешения позволяют действовать в пределах доступа пользователя.
- Выбор полей через $select помогает получать только нужные сведения там, где метод это поддерживает.
- Обычные HTTP-запросы и SDK позволяют подключить API к собственному приложению.
Ограничения
- У каждого метода свои permissions; действующий токен не гарантирует доступ к нужным данным.
- Некоторые разрешения требуют согласия администратора, а часть методов не поддерживает app-only.
- Большие списки могут возвращаться страницами; первая страница не равна всей выборке.
- При ограничении частоты запросов API возвращает 429; повторы нужно планировать по Retry-After.
Как использовать
1. Подготовка. Выберите учебную учетную запись Microsoft и тест только на чтение своего профиля. Заранее запишите ожидаемое отображаемое имя. Не подключайте рабочую почту или файлы для первого запроса.
2. Настройка. В Graph Explorer войдите учебным пользователем и проверьте делегированное разрешение User.Read. Если организация требует согласия администратора, получите его без расширения прав на всякий случай. Демонстрационные данные без входа не считаются проверкой вашего аккаунта.
3. Первый результат. Выполните GET https://graph.microsoft.com/v1.0/me?$select=id,displayName. Получите id и displayName пользователя. При работе из своего приложения передавайте действующий OAuth access token в Authorization: Bearer, а не пароль.
4. Проверка. Сравните имя с профилем и убедитесь, что запрос не менял данные. Не сохраняйте токен в промптах, открытом коде и логах. Для следующих методов отдельно проверьте права, а для списков используйте возвращенный @odata.nextLink; при 429 соблюдайте Retry-After.
Доступ и оплата
- Модель оплаты: Не уточнено
- Работа в РФ: Нужно проверять
- VPN: Не известно
- Русский интерфейс: Не известно
- Русский язык: Не известно
Graph - интерфейс исходных сервисов. Условия лицензий, специальных платных API и доступа организации проверяются отдельно. Один токен не дает универсальный бесплатный доступ к Microsoft 365.
Когда не подходит
- Получить все данные компании с правом чтения профиля
- Использовать /me без вошедшего пользователя
- Заменить авторизацию обычным API-ключом
Альтернативы
Google Drive API работает с файлами Google, Gmail API - с почтой Gmail, Slack API - со Slack. Это альтернативы для отдельных задач, а не способы прочитать ресурсы Microsoft или заменить весь Graph.