Что это
Linear API позволяет читать задачи, команды и проекты, а при соответствующих правах - выполнять изменения. Он построен на GraphQL: в запросе вы выбираете только нужные поля. Для типизированного кода есть официальный TypeScript SDK.
Для первого сценария подойдет сводка по доступным задачам. Если текст сводки пишет модель, ее подключают отдельно. GraphQL API сам по себе не анализирует приоритеты и не принимает решения за продуктовую команду.
Отчет должен учитывать страницы списка и ошибки ответа. Даже HTTP 200 не доказывает, что все поля получены: GraphQL может вернуть одновременно частичные данные и errors. Изменение статуса или комментария лучше включать после проверенного чтения и согласования человеком.
Ключевые параметры
- Категория: Операционные задачи
- Сложность: Для разработчика
- Запуск: Около 30 минут
- Open-source: Нет
- Данные: Не известно
- Чувствительные данные: Только с настройками
Сильные стороны
- GraphQL позволяет запрашивать только нужные поля.
- Официальный TypeScript SDK дает типизированные операции.
- Личные ключи и OAuth подходят для разных сценариев подключения.
- Cursor-пагинация и webhooks помогают строить контролируемую синхронизацию.
Ограничения
- Результат зависит от прав пользователя или приложения в workspace.
- HTTP 200 может содержать errors и частичные данные.
- Списки требуют пагинации; слишком объемные запросы расходуют лимит сложности.
- Операции записи требуют проверки правил проекта, дублей и разрешенного действия.
Как использовать
1. Подготовка. Выберите учебный workspace или согласованный набор задач. Запишите ожидаемые ID и названия нескольких задач. Нужен только доступ на чтение.
2. Настройка. Создайте личный API-ключ в Security & access, если это разрешено администратором, и храните его на сервере. Для своего скрипта передавайте Authorization: KEY; для OAuth-токена - Authorization: Bearer TOKEN.
3. Первый результат. Отправьте POST https://api.linear.app/graphql с Content-Type: application/json и JSON-полем query: { issues(first: 5) { nodes { id title } pageInfo { hasNextPage endCursor } } }. Получите пять задач или меньше, если их меньше доступно.
4. Проверка. Сначала проверьте errors, затем сравните data.issues.nodes с интерфейсом. Если hasNextPage=true, продолжайте с after равным endCursor. Обработайте RATELIMITED и лимиты сложности; не вызывайте mutations, пока чтение и права не проверены.
Доступ и оплата
- Модель оплаты: Бесплатный тариф + платные возможности
- Бесплатный тариф: Да
- Работа в РФ: Нужно проверять
- VPN: Не известно
- Русский интерфейс: Не известно
- Русский язык: Не известно
У Linear есть бесплатный и платные планы; возможности workspace и административные ограничения различаются. Наличие бесплатного плана не означает безлимитный API или доступ к чужим командам. Условия РФ и российских карт не подтверждены.
Когда не подходит
- Закрывать задачи только по догадке модели
- Считать первую страницу полным отчетом
- Выдавать личный ключ публичному интерфейсу
Альтернативы
Jira REST API, Asana API и ClickUp API нужны для соответствующих систем задач. Они не являются подключаемым клиентом Linear. Сравнивайте права, структуру проекта и привычный процесс команды.