Você precisa buscar programaticamente detalhes completos de empregos (título, empregador, descrição, links de aplicação e contexto salarial) de uma fonte confiável e entregar isso esta semana. Ao final deste artigo, você será capaz de pesquisar empregos, puxar o perfil detalhado de um emprego pelo ID e buscar salários estimados em torno de uma localização usando uma única chave via Zyla API Hub.
O que você pode construir com esta API
A API JSearch agrega empregos da web (incluindo Google for Jobs) e expõe:
- Pesquisa: consulte empregos com opções de filtragem extensivas disponíveis no Google for Jobs.
- Detalhes do Emprego: expanda um job_id em detalhes completos, incluindo opções adicionais de aplicação, contexto de avaliações de empregadores e salários estimados para funções similares.
- Salário Estimado: obtenha faixas salariais para um título de emprego em torno de uma localização.
Equipes usam isso para alimentar quadros de empregos, automação de recrutamento, integrações de rastreamento de candidatos e ferramentas internas de sourcing.
Começando no Zyla API Hub
Abra a página da API JSearch no Zyla API Hub e inscreva-se. O hub usa uma assinatura com cota (não pagamento por chamada). Para uma primeira integração, você pode iniciar um teste de 7 dias ou 50 solicitações, dependendo da disponibilidade. Você receberá uma única chave de API que autoriza chamadas para esta e qualquer outra API à qual você se inscrever no hub.
Iniciar teste de 7 dias na API JSearch
Autenticação
Envie sua chave no cabeçalho Authorization para cada solicitação:
- Authorization: Bearer SUA_CHAVE_API
Endpoints
1) Pesquisa
Pesquise por empregos postados em sites de empregos na web no maior agregador de empregos do mundo (Google for Jobs). URL e método:
- Método: GET
- URL: https://zylalabs.com/api/2526/jsearch-api/2516/search
Parâmetro de consulta obrigatório:
- query (string): por exemplo, “desenvolvedor javascript”
exemplo de cURL (copiar/colar):
curl -s -X GET "https://zylalabs.com/api/2526/jsearch-api/2516/search?query=javascript+developer" \
-H "Authorization: Bearer SUA_CHAVE_API"
Exemplo de resposta JSON:
{
"status": "OK",
"request_id": "9d5b1504-e1c0-43dc-ba08-7cd4ef1de4a6",
"parameters": {
"query": "desenvolvedor javascript",
"page": 1,
"num_pages": 1,
"country": "br",
"language": "pt"
},
"data": [
{
"job_id": "NWFBUzhCZkdmOVBVbVdKYUFBQUFBQT09OkVzc0JDb3dCUVVwcFZEUjBTMnBvWlhWUk1qUkdSRmx5TUVKNWNUSTBSRmhLTVZBdGRXeFRMVWd0ZUdwUmRtVnlNVXRYYUVOM2JIRk9jWE16ZUVka2F6a3dORmRWV2xVNFYzbHhSRGRaV1VrdE0wbFdkMHBIZGxoaU5UTkNUazVxUmpOUE5XVmlYM0E0ZEZWQk1sWnlRbWwwV2tSMGMxcE1RVTFEYUdoblVteGpTRUpXVGtjNVNtazFUMmhZUVc1R1dYb1NGbEo0TlRkaGRXbExRbEJEYTJ0UVNWQTVjVVJLU1ZFYUlrRkVjM0k1WmxJdFlsSkpkbVJRY204MFV6UTVjSEJTTkhCcmJXd3lRbU41YkVF",
"job_title": "Desenvolvedor Full Stack JavaScript - Autorização Secreta",
"employer_name": "Metric5",
"employer_logo": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRTpqtlYyQWQ7NZ_F3cBFi24PFec2gdiTaCd_CJ&s=0",
"employer_website": "https://www.metric5.com",
"job_publisher": "LinkedIn",
"job_employment_type": "Tempo integral",
"job_employment_types": [
"FULLTIME"
],
"job_apply_link": "https://www.linkedin.com/jobs/view/full-stack-javascript-developer-top-secret-clearance-at-metric5-4447358729",
"job_apply_is_direct": false,
"apply_options": [
{
"apply_link": "https://www.linkedin.com/jobs/view/full-stack-javascript-developer-top-secret-clearance-at-metric5-4447358729",
"is_direct": false,
"publisher": "LinkedIn"
}
],
"job_description": "Localização: Springfield, VA - presencial
Metric5 está procurando um Desenvolvedor Full Stack JavaScript motivado para trabalhar em um projeto altamente visível para nosso cliente NGA/DoD.
O Desenvolvedor Full Stack JavaScript ideal tem experiência prática trabalhando em um verdadeiro ambiente ágil realizando tarefas de engenharia de software em várias equipes, com expertise abrangendo desenvolvimento front-end e back-end. Nossos engenheiros de software desempenham papéis críticos para projetar, construir, testar e manter produtos de software para garantir forte funcionalidade e otimização.
Como engenheiro de software na Metric5, você será responsável pelo design técnico, desenvolvimento, documentação e engenharia de soluções de software usando React, NestJS, Node.js, TypeScript e Vite dentro de um ecossistema moderno nativo da nuvem. Sua resp…
O que usar:
- data[].job_id: passe isso para Detalhes do Emprego para expandir uma listagem.
- data[].job_title, employer_name: mostre na sua lista de UI.
- data[].job_apply_link e apply_options: construa botões “Aplicar”.
- parameters: útil para registro e lógica de paginação onde aplicável.
Exemplo em Python para Pesquisa
Este trecho pesquisa por “desenvolvedor javascript” e imprime campos-chave que você mostrará em uma página de resultados, depois captura um job_id para detalhes.
import requests
API_KEY = "SUA_CHAVE_API"
BASE_URL = "https://zylalabs.com/api/2526/jsearch-api/2516/search"
headers = {
"Authorization": f"Bearer {API_KEY}"
}
params = {
"query": "javascript developer"
}
resp = requests.get(BASE_URL, headers=headers, params=params, timeout=30)
resp.raise_for_status()
payload = resp.json()
print("Status:", payload.get("status"))
for i, job in enumerate(payload.get("data", []), start=1):
print(f"{i}. {job.get('job_title')} — {job.get('employer_name')}")
print(" Aplicar:", job.get("job_apply_link"))
print(" Publicador:", job.get("job_publisher"))
print()
# Capture um job_id para buscar detalhes depois
first_job_id = payload.get("data", [{}])[0].get("job_id")
print("Primeiro job_id para detalhes:", first_job_id)
2) Detalhes do Emprego
Obtenha todos os detalhes do emprego, incluindo opções/links de aplicação adicionais, contexto de avaliações de empregadores e salários estimados para empregos similares.
- Método: GET
- URL: https://zylalabs.com/api/2526/jsearch-api/2517/job-details
Parâmetro de consulta obrigatório:
- job_id (string)
exemplo de cURL:
Exemplo de resposta JSON:
O que usar:
- data[].job_uid e data[].job_id: identificadores estáveis para deduplicação e armazenamento.
- Descrição completa e opções de aplicação adicionais para renderizar sua página de detalhes.
3) Salário Estimado
Obtenha salários estimados para um emprego em torno de uma localização.
- Método: GET
- URL: https://zylalabs.com/api/2526/jsearch-api/2518/estimated-salary
Parâmetros:
- job_title (string, obrigatório)
- location (string, obrigatório)
- radius (string, opcional)
exemplo de cURL:
Exemplo de resposta JSON:
O que usar:
- median_salary: referência rápida para bandas salariais.
- salary_period e salary_currency: mostre as unidades corretas (anual em USD neste exemplo).
- salaries_updated_at: timestamp que você pode exibir ou usar para invalidação de cache. O timestamp é ISO 8601.
Fluxo de ponta a ponta: pesquisa para detalhes para salário
- Chame a Pesquisa com uma consulta de texto para obter uma lista de empregos e valores de job_id.
- Escolha um job_id e chame Detalhes do Emprego para enriquecer sua página de detalhes com conteúdo completo e opções de aplicação.
- Opcionalmente, chame Salário Estimado para o papel e localização que o usuário está visualizando para adicionar contexto salarial.
Armazene job_id e job_uid para evitar duplicatas. A resposta da Pesquisa inclui um bloco de “parameters” que você pode registrar para rastrear o contexto da consulta. Considere armazenar em cache as respostas de Pesquisa e Salário por um curto TTL para reduzir chamadas redundantes e manter sua experiência do usuário ágil.
Notas práticas de implementação
- Autenticação: sempre “Authorization: Bearer SUA_CHAVE_API”.
- Unidades e moeda: Salário Estimado retorna salary_period (por exemplo, ANO) e salary_currency (por exemplo, USD). Exiba ambos com os valores.
- Timestamps: salaries_updated_at é ISO 8601; converta para o formato de exibição local na sua UI, se necessário.
- Modelo de cota: Zyla usa assinatura + cota, não pagamento por chamada. Para o primeiro uso, espere um teste de 7 dias ou 50 solicitações, dependendo da disponibilidade. Verifique a página da API para opções de acesso e preços atuais.
- Paginação e filtragem: a resposta do exemplo de Pesquisa inclui page e num_pages; siga a página da API para opções de filtragem adicionais suportadas no Google for Jobs.
- Tratamento de erros: verifique status e códigos HTTP; registre request_id para correlacionar problemas com o suporte.
Chamando a API de agentes de IA via MCP
Toda API no Zyla também pode ser chamada de agentes de IA e copilotos de IDE que suportam o Protocolo de Contexto de Modelo (MCP). Aponte seu cliente para:
https://mcp.zylalabs.com/mcp?apikey=SUA_CHAVE_API
Uma vez conectado, ferramentas como Claude Code, Cursor e Windsurf podem chamar a API JSearch usando sua mesma chave. Para detalhes de configuração do cliente, veja as informações do endpoint MCP.
Casos de uso do mundo real
- Pesquisa em quadro de empregos: implemente um feed de “Desenvolvedor JavaScript” chamando Pesquisa e renderizando job_title, employer_name e job_apply_link.
- Enriquecimento de ATS: dado um link de emprego raspado, pesquise por palavras-chave de função, depois chame Detalhes do Emprego para normalizar campos e armazenar job_uid para deduplicação.
- Bandas salariais: chame Salário Estimado por job_title e cidade escolhida pelo usuário para definir expectativas ao lado do CTA de aplicação.
- Alertas e resumos: execute consultas de Pesquisa agendadas e envie resumos de e-mail personalizados com job_apply_link e employer_website.
Lista de verificação de produção
- Armazene a chave da API de forma segura; nunca a comite no controle de versão.
- Registre request_id e parâmetros para observabilidade e auditorias.
- Respeite a cota de assinatura; implemente retrocesso exponencial em novas tentativas.
- Armazene em cache as respostas de Salário Estimado por (job_title, location, radius) por algumas horas.
- Normalize os nomes dos empregadores e persista job_uid para evitar duplicatas entre execuções.
FAQ
Como eu obtenho um job_id para chamar Detalhes do Emprego?
Use o endpoint de Pesquisa primeiro. Cada item em data[] inclui um job_id que você pode passar para Detalhes do Emprego.
Posso filtrar a Pesquisa além da string de consulta?
O endpoint de Pesquisa suporta filtragem extensiva semelhante ao Google for Jobs. Consulte a página da API no Zyla para o conjunto completo de parâmetros suportados.
Que moeda e unidades os salários usam?
Salário Estimado retorna salary_currency e salary_period por registro. No exemplo acima, os valores são anuais em USD.
Há um plano gratuito?
Não. A Zyla usa assinatura + cota. Verifique a página da API para opções de acesso atuais. Para o primeiro uso, você pode iniciar um teste de 7 dias ou 50 solicitações, dependendo da disponibilidade.
Posso chamar esses endpoints de um agente de IDE?
Sim. Use o endpoint MCP em https://mcp.zylalabs.com/mcp?apikey=SUA_CHAVE_API com sua IDE ou agente que suporta MCP.
Pronto para enviar sua integração? Inscreva-se e obtenha sua chave de API na página da API JSearch, depois conecte os endpoints de Pesquisa, Detalhes do Emprego e Salário Estimado para alimentar seus feeds de empregos e páginas de detalhes. Iniciar teste de 7 dias na API JSearch