Платформа
API для ваших агентов
Ключ, который создаёт ваша компания, позволяет вашим агентам (Claude или любому другому) и скриптам читать и, по мере запуска эндпоинтов, действовать в вашем HR Suite и аккаунте findjobs.ge. С правами, журналом, отзывом и машинным описанием, чтобы агент мог разобраться сам.
Для кого
Для компаний, которые хотят, чтобы ассистент делал рутину: отвечал «что предложить начальнику смены склада», перечислял слишком долго ждущих кандидатов, публиковал вакансию по краткому описанию, утверждал расчёт после того, как человек прочитал проверки. API — тот же сервисный слой, которым пользуются страницы, так что всё, что делает система, будет доступно, с теми же правилами и теми же ограничениями ролей.
Это и честный ответ на «можно ли это автоматизировать»: эндпоинты чтения работают уже сейчас; эндпоинты записи перечислены со статусом «planned» и отвечают 501, пока не запущены, так что агент никогда не гадает.
Создание ключа
- Откройте Настройки › Ключи API. Создавать может только владелец компании; сначала попросят свежий второй замок.
- Назовите ключ по назначению («агент Claude», «скрипт зарплаты»), выберите самые узкие права, которых хватает для задачи, и срок действия.
- Прочитайте риски и отметьте подтверждение. Ключ показывается один раз; скопируйте его в хранилище секретов агента и никуда больше.
- Отзовите его на той же странице, как только он больше не нужен. Отзыв мгновенный.
В демо любой может создать демо-ключ (fjhr_demo_…). Он действует только на вашу демо-компанию и исчезает вместе с ней.
Риски, прямо
- Ключ — это пароль от компании. Любой, у кого он есть, может всё, что разрешают его права, без второго замка.
- Агент действует от вашего имени. Неверная инструкция может закрыть вакансию, отклонить кандидата или изменить карточку. Начните с прав чтения; добавьте запись, когда агент её заслужит.
- Никогда не вставляйте ключ в публичный чат, репозиторий или промпт, который может прочитать кто-то ещё. Сомневаетесь — замените.
- Каждый вызов записывается с ключом, маршрутом, статусом и временем. Владелец читает журнал на той же странице.
Права
- market:read: диапазоны зарплат и сложность найма.
- company:read: компания, Главная и счётчики.
- jobs:read и jobs:write: чтение, публикация, правка, закрытие и поднятие вакансий.
- applications:read и applications:write: чтение откликов и оценок; смена этапов, ответы, назначение собеседований.
- people:read и people:write: карточки сотрудников без личных данных; добавление и изменение людей, решения по отпускам.
- money:read и money:write: расчёты и правила; утверждение расчёта (файлы готовятся; деньги не движутся).
- settings:write: вебхуки и настройки. Сами ключи никогда не могут быть созданы или изменены ключом.
- all: всё перечисленное.
Вызов
Базовый адрес https://hr.findjobs.ge/hr/api/v1. Отправляйте ключ как Authorization: Bearer fjhr_live_… в каждом запросе. Ответы в JSON. Добавьте ?hl=ka, ru или tr, чтобы получать описания на этом языке там, где API говорит.
Лимиты: 60 вызовов в минуту и 20 записей в минуту на ключ. 429 содержит Retry-After в секундах.
Ошибки — JSON со стабильным кодом и предложением: missing_key, invalid_key, scope, rate_limited, not_yet (спроектировано, не запущено), not_found, server_error, и ссылка на документацию.
Для LLM-агента
- Дайте агенту https://hr.findjobs.ge/hr/api/v1/llms.txt: он описывает API, лимиты и правила простым текстом.
- Дайте ему документ OpenAPI по адресу https://hr.findjobs.ge/hr/api/v1/openapi.json для генерации инструментов.
- Храните ключ в хранилище секретов агента, никогда в промпте.
- Скажите ему, какие права у ключа, чтобы он не пытался делать то, чего не может.
Пример: curl -H "Authorization: Bearer $KEY" "https://hr.findjobs.ge/hr/api/v1/market/pay-check?city=tbilisi&family=sales&offer=1200"
Чего ключ никогда не может
- Читать данные другой компании или личные данные соискателей сверх того, что компания уже видит на findjobs.ge.
- Перемещать деньги, входить в банк или подавать в Службу доходов.
- Создавать или менять ключи, ослаблять второй замок.
- Узнавать, есть ли у сотрудника профиль на findjobs и откликается ли он где-то.
MCP-сервер
Тот же API доступен как сервер Model Context Protocol по адресу https://hr.findjobs.ge/hr/api/mcp (Streamable HTTP). Добавьте его как удалённый MCP-сервер в Claude, ChatGPT, Cursor или любой MCP-хост с ключом компании в качестве bearer-токена; каждый эндпоинт появится как инструмент из того же реестра, с теми же скоупами, лимитами и журналом.
Эндпоинты
Таблица ниже генерируется из того же списка, по которому маршрутизирует API, поэтому расхождений быть не может. Каждый перечисленный эндпоинт отвечает уже сегодня; скоупы говорят, что может ключ.
| hr.findjobs.ge/hr/api/v1 | scope | status | ||
|---|---|---|---|---|
GET | /me | company:read | live | Кто вы: компания, права этого ключа и лимиты |
GET | /home | company:read | live | Очередь Главной: что требует решения |
GET | /market/pay-check | market:read | live | Сколько платит сфера в городе: нижняя четверть, середина, верхняя четверть |
GET | /market/difficulty | market:read | live | Сложность найма в городе: объявлений на соискателя, дни |
GET | /market/radar | market:read | live | Радар конкурентов: ваши открытые роли, объявления конкурентов, зарплаты, кто ищет больше всех |
GET | /market/survey | market:read | live | Группы опроса зарплат в городе: компании, люди, середина реальной зарплаты |
POST | /market/survey | money:write | live | Запись зарплат вашей компании по сфере: люди, низкая, средняя, высокая |
GET | /jobs | jobs:read | live | Ваши вакансии на findjobs.ge |
GET | /jobs/{id} | jobs:read | live | Одна вакансия полностью |
GET | /jobs/{id}/doctor | jobs:read | live | Проверка объявления: оценка 0–100, все проверки и что исправить |
POST | /jobs | jobs:write | live | Опубликовать вакансию (идёт на модерацию, как на сайте) |
PATCH | /jobs/{id} | jobs:write | live | Изменить вакансию |
POST | /jobs/{id}/close | jobs:write | live | Закрыть вакансию |
POST | /jobs/{id}/bump | jobs:write | live | Поднять вакансию (Pro) |
GET | /applications | applications:read | live | Отклики на ваши вакансии |
POST | /applications | applications:write | live | Отклик с вашего сайта: в воронку и во входящие, без писем кандидату |
GET | /applications/{id} | applications:read | live | Один отклик: сообщение, ответы, оценки |
GET | /people | people:read | live | Карточки сотрудников (без приватных полей) |
POST | /people | people:write | live | Добавить карточку |
GET | /people/{id} | people:read | live | Одна карточка с историей и остатком отпуска |
PATCH | /people/{id} | people:write | live | Изменить карточку; изменения зарплаты, роли и отдела попадают в историю |
GET | /people/{id}/earnings | people:read | live | Доход, сообщённый извне, по месяцам |
POST | /people/{id}/earnings | people:write | live | Сообщить доход за месяц для работника с оплатой за заказ (тот же месяц и источник обновляют запись) |
POST | /people/{id}/leaving | people:write | live | Назначить последний день |
GET | /timeoff | people:read | live | Отпуска: запрошенные и одобренные |
POST | /timeoff | people:write | live | Добавить отсутствие (запрос или сразу одобрено) |
POST | /timeoff/{id}/decide | people:write | live | Решить: approved, declined, cancelled |
GET | /payrun | money:read | live | Расчёт за месяц: строки и итоги |
POST | /payrun/{period}/approve | money:write | live | Утвердить месяц (сначала снимается снимок) |
GET | /payrun/{period}/file | money:read | live | Файл утверждённого месяца: oris, fina, 1c, excel, journal, tbc, bog, liberty, bank-excel, rsge |
GET | /rules | money:read | live | Правила и ставки с подтвердившим |
POST | /rules/{id}/confirm | money:write | live | Подтвердить правило именем |
GET | /snapshots | settings:write | live | Список снимков |
POST | /snapshots | settings:write | live | Снять снимок сейчас |
POST | /snapshots/{id}/restore | settings:write | live | Восстановить снимок (сначала снимается снимок текущего) |
GET | /pipeline | applications:read | live | Доска одной вакансии: этапы, карточки, часы ответа, оценочные листы |
POST | /applications/{id}/status | applications:write | live | Переместить карточку на этап: seen, shortlisted, hold, hired, rejected |
POST | /applications/{id}/scorecard | applications:write | live | Сохранить оценочный лист: четыре оценки 1–5 и заметка |
POST | /applications/{id}/message | applications:write | live | Ответить кандидату в том же чате, что на сайте |
POST | /applications/{id}/interview | applications:write | live | Назначить собеседование |
GET | /keys | settings:write | live | Ключи этой компании (ключ не может создавать ключи) |
GET | /webhooks | settings:write | live | Подписки на вебхуки |
GET | /shifts | people:read | live | Неделя графика: смены, открытые, обмены, покрытие |
POST | /shifts | people:write | live | Добавить смену (без person_id = открытая) |
POST | /shifts/{id}/assign | people:write | live | Отдать смену сотруднику или сделать открытой |
DELETE | /shifts/{id} | people:write | live | Удалить смену |
GET | /reviews | people:read | live | Раунд оценок: баллы, средние, цели |
POST | /reviews/open | people:write | live | Открыть раунд для всех или отдела |
POST | /reviews/{id}/score | people:write | live | Сохранить баллы (менеджер, или side: self) |
POST | /reviews/{id}/goals | people:write | live | Сохранить цели |
GET | /pay-vs-market | people:read | live | Зарплата каждого относительно рынка города |
GET | /permits | people:read | live | Дела о разрешениях на работу |
POST | /permits | people:write | live | Открыть дело |
POST | /permits/{id}/move | people:write | live | Изменить этап, дату, документ |
GET | /leaving | people:read | live | Уходящие: чеклист, расчёт, справка |
POST | /leaving/{id}/tick | people:write | live | Отметить пункт чеклиста |
POST | /leaving/{id}/settle | money:write | live | Посчитать и сохранить окончательный расчёт |
GET | /onboarding | people:read | live | Новички: чеклист, статус договора |
POST | /onboarding | people:write | live | Добавить новичка |
POST | /onboarding/{id}/tick | people:write | live | Отметить пункт чеклиста |
POST | /onboarding/{id}/contract | people:write | live | Отправить договор с кодом |
POST | /onboarding/{id}/record | people:write | live | Создать запись из строки |
GET | /automations | settings:write | live | Переключатели автоматизаций и журнал |
POST | /automations/run | settings:write | live | Запустить автоматизации компании сейчас |
POST | /automations/{key} | settings:write | live | Включить или выключить |
GET | /connections | settings:write | live | Программа, банк, календарная лента |
PATCH | /connections | settings:write | live | Изменить подключения |
POST | /webhooks | settings:write | live | Добавить вебхук (секрет возвращается один раз) |
DELETE | /webhooks/{id} | settings:write | live | Удалить вебхук |
GET | /accountants | money:read | live | Бухгалтеры со входом |
POST | /accountants | money:write | live | Добавить и пригласить бухгалтера |
DELETE | /accountants/{id} | money:write | live | Убрать бухгалтера |
GET | /reports/twelve-months | people:read | live | Двенадцать месяцев: люди, расчёты, отсутствия, найм |