JazzHR Jobs API
💼 JazzHR Jobs API: поиск по всем компаниям, нанимающим на JazzHR
Быстрый старт для Python и MCP с JazzHR API на Apify. Один поиск охватывает всех работодателей платформы, поэтому вам не придётся сначала выискивать URL карьерной страницы компании.
Актор: JazzHR Jobs API on Apify
Схема входа: входные параметры
Получить бесплатный API-токен: apify.com
Большинство инструментов JazzHR требуют URL доски компании, прежде чем они начнут работать. Этот актор уже знает все такие адреса. Направьте его на всю платформу — и вы получите структурированные данные о вакансиях: название, работодателя, местоположение, тип занятости, фактическую дату публикации, ссылку для отклика и полное описание в формате Markdown, HTML или обычного текста. Он также может выдать каталог всех компаний, нанимающих на JazzHR, что полезно, когда вы ещё решаете, чью доску стоит читать целиком.

Текстовое описание
JazzHR API читает публичные карьерные доски, которые JazzHR размещает на applytojob.com. Каждый входной параметр не является обязательным: если запустить актор без значений, вы получите выборку со всей платформы, а можно сузить поиск с помощью keywords, location, employmentType, remoteOnly и postedAfter. Ключевые слова сопоставляются с URL вакансии до её открытия, поэтому такая фильтрация делает запуск и дешевле, и точнее. Каждая строка возвращается с полями title, companyName, locationText, employmentType, datePosted, validThrough, applyUrl и descriptionMarkdown. Переключите outputMode на companiesOnly — и получите по одной строке на каждого работодателя с актуальным числом открытых вакансий; так вы собираете список компаний, которые используют JazzHR. Переключите на urlsOnly — и получите весь индекс вакансий за несколько исходящих запросов; это самый дешёвый способ выяснить, что есть на платформе. Включите newJobsOnly — и каждый запуск по расписанию будет возвращать только те публикации, которые он ещё не видел.
Быстрый старт
Предпосылки: Python 3.11 и новее, uv и бесплатный API-токен Apify с apify.com.
git clone https://github.com/johnisanerd/Apify-JazzHR-Jobs-API.git
cd Apify-JazzHR-Jobs-API
uv sync
cp .env.example .env # paste your token into .env
uv run python jazzhr-jobs-api-example.pyКаждый пример — отдельный флаг:
uv run python jazzhr-jobs-api-example.py --example jobs # full job records
uv run python jazzhr-jobs-api-example.py --example companies # employer directory
uv run python jazzhr-jobs-api-example.py --example urls # job index, no descriptions
uv run python jazzhr-jobs-api-example.py --example new-jobs # delta mode
uv run python jazzhr-jobs-api-example.py --example allКаждый пример намеренно запрашивает небольшое число строк. Вы платите за каждую возвращённую строку, поэтому сначала проверим форму данных, а затем увеличивайте maxItems.
Зачем использовать этот API
URL компании не нужен. Другие инструменты заставляют указывать доску, прежде чем начать. Оставьте ввод пустым — и поиск охватит всех работодателей платформы.
Каталог, которого больше нигде нет. Режим companiesOnly возвращает каждую компанию, нанимающую на JazzHR, с живым числом открытых вакансий. Это как раз тот список, который нужен, если вы изучаете компании, использующие JazzHR.
Описания готовы для LLM. Закажите Markdown и передавайте результат сразу модели, без предварительной очистки от HTML.
Две источники для каждой вакансии. Около половины активных вакансий вообще не публикуют структурированные данные о работе. Они извлекаются из разметки страницы, поэтому приходят с названием, компанией, местом и описанием, а не полупустыми. Поле parseStatus показывает, какой тип строки у вас.
Закрытые публикации пропускаются и не оплачиваются. Примерно пятая часть индекса платформы указывает на вакансии, которые уже закрыты. Вы платите за вакансии, которые действительно получаете, а не за мёртвые ссылки.
Поток, а не просто снимок. Дельта-режим запоминает, что уже выдал, поэтому запуск по расписанию приносит только новые вакансии.
Рецепты
Для этого актора в Store пока не опубликовано примеров. Четыре скрипта выше охватывают те же задачи: фильтрованный поиск вакансий, каталог работодателей, дешёвый индекс вакансий и дельта-лента.
Совет по расписанию. Сохраните входные данные как задачу (Task) в Apify Console, включите newJobsOnly и запланируйте ежедневный или еженедельный запуск. После этого в датасет будут попадать только вакансии, появившиеся после последнего запуска, и пайплайн остаётся в актуальном состоянии без участия человека.
Примеры использования
Базовый пример, как при запуске по умолчанию:
{
"keywords": ["nurse", "registered nurse"],
"location": "TX",
"employmentType": "FULL_TIME",
"postedAfter": "2026-01-01",
"descriptionFormat": "markdown",
"maxItems": 10
}Продвинутый пример — поиск только удалённой работы, который пропускает кадровые агентства и возвращает все форматы описаний:
{
"keywords": ["software engineer"],
"remoteOnly": true,
"excludeCompanies": ["someagency"],
"descriptionFormat": "all",
"maxConcurrency": 25,
"maxItems": 100
}Входные параметры
Все параметры являются необязательными.
Параметр | Тип | По умолчанию | Описание |
| array | пусто | Доски компаний, такие как |
| array | пусто | Слова для фильтрации вакансий по названию должности. Применяются до открытия вакансии, поэтому снижают и стоимость запуска. |
| string |
|
|
| string |
|
|
| array | пусто | Включать только эти slug компаний. Для |
| array | пусто | Пропустить эти slug компаний. |
| string | пусто | Текстовое совпадение по городу, штату, почтовому индексу или стране. |
| string |
|
|
| boolean |
| Оставить только удалённые вакансии. |
| string | пусто | Формат |
| integer |
| Лимит строк. На платформе более 100 000 активных вакансий, поэтому первый запуск остаётся небольшим. |
| boolean |
| Возвращать только публикации, которых не было в предыдущих запусках. |
| string |
| При первом дельта-запуске либо возвращать всё, либо просто зафиксировать то, что существует сегодня. |
| string |
| Именованное хранилище, в котором запоминаются id вакансий. |
| integer |
| Параллельное чтение страниц, до 25. |
| object | direct | Необязательные настройки Apify Proxy. |
Формат вывода
Полная запись о вакансисях:
{
"id": "job_20260617184930_ZL9U2ROWTQWMZDDD",
"jobId": "vMHpWDZa3l",
"title": "Account Executive",
"companyName": "Ease Inc",
"companySlug": "easeinc",
"companyWebsite": "http://www.ease.io",
"boardUrl": "https://easeinc.applytojob.com",
"applyUrl": "https://easeinc.applytojob.com/apply/vMHpWDZa3l/Account-Executive",
"canonicalUrl": "https://careers.easeinc.com/apply/vMHpWDZa3l/Account-Executive",
"city": "Irvine",
"region": "CA",
"postalCode": "92618",
"country": "US",
"locationText": "Irvine, CA, US",
"isRemote": true,
"employmentType": "FULL_TIME",
"experienceLevel": "Mid Level",
"datePosted": "2026-06-17",
"validThrough": "2026-09-15",
"descriptionMarkdown": "Ease is hiring an Account Executive...",
"parseStatus": "full",
"scrapedAt": "2026-08-24T18:22:04Z"
}Каталог работодателей возвращает строку поменьше:
{
"companySlug": "10pearls",
"boardUrl": "https://10pearls.applytojob.com",
"jobCount": 21,
"sampleJobTitles": ["AI Solutions Architect", "Associate Account Executive Intern"],
"scrapedAt": "2026-08-24T18:22:04Z"
}Люди также ищут
Это парсер JazzHR?
Он читает публичные страницы как парсер, но вы получаете API: структурированный JSON, фильтры, стабильные имена полей и никакого HTML, если его не запросить. Если вы пытались парсить вакансии сами, это вариант, где разбор ада чусть поддерживает кто-то другой.
Что такое applytojob.com?
Это домен, на котором JazzHR размещает каррьер страницы своих клиентов. Компания, нанимающая через JazzHR, получает доску на company.applytojob.com, и уведомления для кандидатов тоже приходят с этого домена — поэтому многие ищут его после отклика.
Как найти компании, которые используют JazzHR?
Установите outputMode на companiesOnly. Вы получите по одной строке на компанию с URL их доски и актуальным количеством открытых вакансий. Скрипт --example companies делает ровно это.
Как использовать JazzHR API из Python?
Склонируйте этот репозиторий, выполните uv sync, положите токен Apify в .env и запустите пример. Помощник rows() показывает весь шаблон: вызываете актора, затем используете этот набор данных.
Запуск по расписанию или через MCP — это возможно?
Можно и то и другое. Сохраните входные данные как задачу (Task) в консоли Apify Console и напешите старт, желательно с newJobsOnly. Для MCP, в разделах установки ниже этот актор добавляется как инструмент в Claude, Cursor и ChatGPT.
Установка в Claud
Установка в Claude Desktop App
Cowork — это режим автоматизации настольного приложения. Чтобы добавить JazzHR Jobs API как инструмент, добавьте https://raw.githubusercontent.com/apify-mcp-server как коннектор.
Откройте настольное приложение Claude и перейдите в Настройки → Коннекторы (или Настройки → Разработчик → Изменить конфигурацию, чтобы напрямую редактировать
claude_desktop_config.json).macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Добавьте Apify MCP агент, предварительно настроенный только на этого актора:
{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr-jobs-api"
]
}
}
}В первый вызов Cowork завершите OAuth в браузере, или добавьте свой API-токен в настройки коннектора, чтобы не использовать OAuth.
В чате Cowork убедитесь, что инструмент доступен, и попросите его запустить JazzHR Jobs API.
Скачайте настольное приложение и создайте бесплатную подписку: https://claude.ai/referral/uIlpa7nPLg
О других способах: https://docs.apify.com/platform/integrations/claude-desktop
Установка в Claude Code

Claude Code — это командная строка. Добавьте его MCP-сервер одной командой:
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr-jobs-api"Используя токен вместо браузерного OAuth:
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr-jobs-api" \
--header "Authorization: Bearer YOUR_APIFY_TOKEN"Затем проверьте с помощью claude mcp list или выполните /mcp в сеансе. Попросите Claude Code вызвать JazzHR Jobs API.
Попробуйте Claude Code бесплатно: https://claude.ai/referral/uIlChampagneLP Документация Claude Code OAuth: https://code.claude.com/docs/en/mcp
Установка в Claude (веб-версия)

На claude.ai добавьте Apify как коннектор, затем включите инструмент только этого актора.
Перейдите в Настройки → Коннекторы → Обзор коннекторов и найдите Apify MCP server. Установите его (включите или обновите, при необходимости).
При подключении введите API-токен Apify, и включите мастер
johnvc/jazzhr-jobs-api.В любом чате нажмите + → Коннекторы и включите Apify.
Изберите Добавить собственный коннектор и вставьте полный URL MCP:
https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr_jobs_api, используя OAuth при запросе.Попросите Claude запустить JazzHR Jobs API.
Откройте Claude в интернете: https://claude.ai
Установка в Cursor

Cursor считывает MCP-серверы из файла .cursor/mcp.json в проекте.
Создайте в проекте
.cursor/mcp.json:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr-jobs-api"
}
}
}Если вы предпочитаете авторизацию по токену вместо браузерного OAuth, добавить header:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr-jobs-api",
"headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
}
}
}Откройте Cursor → Настройки → MCP и убедитесь, что сервер apify подключён (зелёная точка).
В Composer или Chat попросите Cursor и запустите JazzHR Jobs API.
Впервые на Cursor? Получить его можно здесь: https://cursor.com/referral?code=XQP4VBLI3NNX
Установка в ChatGPT

ChatGPT подключается к MCP-серверу Apify через режим разработчика (доступен в тарифных планах ChatGPT Pro, Plus, Business, Enterprise и Education).
Нажмите на значок профиля и перейдите в Настройки > Приложения. Если вы не видите кнопку Создать приложение, откройте Дополнительные настройки и включите Режим разработчика.
Нажмите Создать приложение и заполните форму:
Имя: Apify
URL MCP-сервера:
https://mcp.apify.com/?tools=actors,docs,johnvc/jazzhr-jobs-apiАутентификация: OAuth
Нажмите Создать и авторизуйте подключение к Apify.
Чтобы использовать приложение в диалоге, нажмите + в чате, выберите Режим разработчика и выберите Apify.
Дополнительная справка: https://docs.apify.com/platform/integrations/mcp
Сделано с заботой: johnvc на Apify.
Последнее обновление: 2026.08.24.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search a live index of millions of open jobs from employer career sites and 100+ ATS platforms.
Live job postings from 30+ ATS feeds and job boards, one schema. Live results need a Bearer key.
Semantic search over 3.5M+ live US job postings pulled straight from company ATSes. Read-only.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/johnisanerd/Apify-JazzHR-Jobs-API'
If you have feedback or need assistance with the MCP directory API, please join our Discord server