Public API
Интегрируйте свои приложения с Workify с помощью нашего RESTful Public API. Создавайте собственные интеграции, автоматизируйте рабочие процессы и подключайте Workify к вашим существующим инструментам и системам.
Обзор
Public API Workify предоставляет программный доступ к вашим ключевым бизнес-данным, включая проекты, задачи, доски, клиентов, контакты и тикеты. Используйте стандартные HTTP-методы для создания, чтения, обновления и удаления ресурсов, обеспечивая мощные возможности автоматизации и интеграции.
Начало работы
Создайте свой API-ключ
- Перейдите в Настройки → Интеграции
- Прокрутите до раздела Public API
- Нажмите Создать API-ключ
- Немедленно скопируйте ваш API-ключ — из соображений безопасности он показывается только один раз
- Храните его надёжно — он понадобится для всех API-запросов
Управление API-ключами
Вы можете управлять несколькими API-ключами со страницы «Интеграции»:
- Создание новых ключей — создавайте дополнительные ключи для разных приложений или окружений
- Активация/деактивация — включайте и выключайте ключи без их удаления
- Удаление ключей — навсегда удаляйте ключи, которые больше не нужны
Рекомендация: создавайте отдельные API-ключи для разных приложений или окружений (разработка, стейджинг, продакшн), чтобы лучше управлять доступом и безопасностью.
Базовый URL
Все API-запросы должны отправляться на:
https://workify.ru/api/v1
Для окружений разработки/тестирования используйте ваш конкретный домен:
https://your-domain.com/api/v1
Аутентификация
Включайте ваш API-ключ в каждый запрос с помощью заголовка Authorization:
Authorization: Bearer YOUR_API_KEY_HERE
Пример запроса:
curl -X GET "https://workify.ru/api/v1/projects" \
-H "Authorization: Bearer YOUR_API_KEY_HERE" \
-H "Accept: application/json"
Доступные эндпоинты
Public API предоставляет полный доступ CRUD (Create, Read, Update, Delete) к вашим ключевым бизнес-ресурсам, включая проекты, задачи, доски, клиентов, контакты и тикеты. Каждый ресурс поддерживает стандартные REST-операции с возможностями фильтрации, поиска и пагинации.
Полную документацию по эндпоинтам, примеры запросов/ответов и подробные спецификации параметров смотрите в интерактивной документации API:
https://workify.ru/api/v1/docs
Интерактивная документация предоставляет:
- Полный список всех доступных эндпоинтов
- Подробные примеры запросов и ответов
- Описания параметров и правила валидации
- Требования к аутентификации
- Возможность тестировать вызовы API прямо из браузера
Формат запроса
Заголовки
Все запросы должны включать:
Authorization: Bearer YOUR_API_KEY— обязательно для аутентификацииAccept: application/json— указывает формат ответа JSONContent-Type: application/json— обязательно для POST/PUT-запросов с телом
Параметры запроса
Большинство эндпоинтов со списками поддерживают фильтрацию, поиск и пагинацию:
search— поиск по имени или другим полям, доступным для поискаper_page— количество результатов на страницу (по умолчанию: 30, максимум: 100)page— номер страницы для пагинацииsort— колонка для сортировки (например,name,created_at)direction— направление сортировки:ascилиdesc
Пример: GET /api/v1/projects?search=onboarding&per_page=50&sort=created_at&direction=desc
Формат ответа
Успешные ответы возвращают JSON со следующей структурой:
{
"data": [
{
"id": 1,
"name": "Project Name",
...
}
],
"links": {
"first": "...",
"last": "...",
"prev": null,
"next": "..."
},
"meta": {
"current_page": 1,
"per_page": 30,
"total": 100
}
}
Ответы с ошибками содержат подробности о том, что пошло не так:
{
"message": "Validation error",
"errors": {
"field_name": ["Error message 1", "Error message 2"]
}
}
Частые сценарии использования
Автоматизация создания проектов
Создавайте проекты автоматически при добавлении новых клиентов в вашу CRM:
curl -X POST "https://workify.ru/api/v1/projects" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Onboarding Project",
"client_id": 5,
"user_id": 12,
"billable": true
}'
Синхронизация задач из внешних инструментов
Импортируйте задачи из инструментов управления проектами или создавайте задачи на основе внешних событий:
curl -X POST "https://workify.ru/api/v1/tasks" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Review design mockups",
"board_id": 3,
"user_id": 8
}'
Создание пользовательских дашбордов
Получайте данные для создания собственных дашбордов отчётности или интеграции с инструментами бизнес-аналитики:
curl -X GET "https://workify.ru/api/v1/projects?per_page=100" \
-H "Authorization: Bearer YOUR_API_KEY"
Интеграция через вебхуки
Используйте API для синхронизации данных при срабатывании вебхуков из внешних систем, автоматически поддерживая данные Workify в актуальном состоянии.
Ограничения по частоте запросов
API-запросы подвержены ограничению частоты для обеспечения справедливого использования и стабильности системы. Если вы превысите лимит, вы получите ответ 429 Too Many Requests.
Рекомендация: реализуйте экспоненциальную задержку и логику повторных попыток в вашей интеграции, чтобы корректно обрабатывать ограничения частоты.
Обработка ошибок
API использует стандартные HTTP-коды состояния:
200 OK— запрос выполнен успешно201 Created— ресурс успешно создан400 Bad Request— неверные параметры запроса401 Unauthorized— неверный или отсутствующий API-ключ403 Forbidden— у API-ключа нет прав404 Not Found— ресурс не существует422 Unprocessable Entity— ошибки валидации429 Too Many Requests— превышен лимит запросов500 Internal Server Error— ошибка сервера
Всегда проверяйте код состояния ответа и корректно обрабатывайте ошибки в вашей интеграции.
Изоляция команды
Все API-запросы автоматически ограничены рамками вашей команды. Вы можете получить доступ только к ресурсам (проектам, задачам, клиентам и т. д.), которые принадлежат вашей команде. Это обеспечивает безопасность данных и предотвращает межкомандный доступ к данным.
Рекомендации по безопасности
- Храните API-ключи надёжно — никогда не коммитьте API-ключи в систему контроля версий и не раскрывайте их в клиентском коде
- Используйте переменные окружения — храните ключи в переменных окружения или защищённых конфигурационных файлах
- Регулярно меняйте ключи — периодически создавайте новые ключи и отзывайте старые
- Используйте отдельные ключи для каждого приложения — не используйте один и тот же ключ в нескольких интеграциях
- Отслеживайте использование ключей — регулярно проверяйте, какие ключи активны, и удаляйте неиспользуемые
- Используйте только HTTPS — всегда отправляйте API-запросы по HTTPS, никогда по HTTP
Поддержка
Нужна помощь с API? Ознакомьтесь с интерактивной документацией по адресу /api/v1/docs или обратитесь в нашу службу поддержки. Мы поможем вам создавать мощные интеграции, которые упрощают ваш рабочий процесс.