API de Vagas do Procure Aqui
Publica vagas de emprego a partir de outra plataforma e consulta as vagas do Procure Aqui a partir de qualquer sistema externo, usando uma chave de API.
Cada chave de API tem um de três tipos, e só pode usar as operações desse tipo:
| Tipo | Pode | Efeito |
|---|---|---|
interno | Publicar e apagar | Vaga fica publicada de imediato |
parceiro | Publicar e apagar | Vaga fica pendente de aprovação |
consulta | Listar e ler | Só leitura, sem publicar |
As chaves são pedidas à equipa do Procure Aqui. Uma chave típica tem este aspeto:
Autenticação
Todos os pedidos exigem o cabeçalho X-API-Key. Sem ele, ou com uma chave inválida ou revogada, a API responde 401 Unauthorized.
Enviar o logótipo da empresa
Envia uma imagem e devolve o URL público onde fica hospedada no Procure Aqui. Usa esse URL a seguir no campo logo_url ao publicar a vaga. Serve para quando a plataforma de origem não tem um endereço público próprio para a imagem — envias o ficheiro diretamente, em vez de um link.
Corpo do pedido
Envio em multipart/form-data (não é JSON), com a imagem no campo file. Formatos aceites: PNG, JPEG, WEBP. Limite: 2MB.
Resposta — 201 Created
url devolvido, 2) usa esse url como logo_url no POST /jobs. Se já tiveres um URL público para a imagem, podes saltar este passo e usar esse URL diretamente.Publicar uma vaga
Cria uma vaga nova. Se enviares external_id e já existir uma vaga com esse identificador publicada pela mesma chave, a vaga é atualizada em vez de duplicada.
Chaves interno → publicado de imediato. Chaves parceiro → pendente até aprovação manual no painel.
Corpo do pedido
| Campo | Tipo | |
|---|---|---|
title | string | obrigatório |
description | string | obrigatório |
company_name | string | obrigatório |
company_email | string (email) | obrigatório |
location | string | obrigatório |
application | string | obrigatório — email ou instrução de candidatura |
company_website | string (url) | opcional |
logo_url | string (url) | opcional — imagem pública do logótipo; é descarregada e associada à vaga |
category_id | integer | opcional |
job_type_id | integer | opcional |
external_id | string | opcional — ativa a atualização em vez de duplicação |
logo_url tem de ser um endereço público (acessível sem autenticação) para uma imagem PNG, JPEG ou WEBP. O Procure Aqui descarrega-a e guarda uma cópia própria — não precisas de manter o ficheiro original disponível depois da vaga criada.Resposta — 201 Created
Apagar uma vaga
Move a vaga para o lixo. Só funciona se a vaga tiver sido publicada com a mesma chave que está a fazer o pedido — uma chave não pode apagar vagas de outra origem.
Publicar um artigo de blog
Cria um artigo no post type blog — separado das vagas de emprego. Fornecido pelo plugin Procure Aqui - API de Artigos (instalado à parte), mas usa as mesmas chaves interno/parceiro desta API. Se enviares external_id e já existir um artigo com esse identificador publicado pela mesma chave, o artigo é atualizado em vez de duplicado.
Chaves interno → publicado de imediato. Chaves parceiro → pendente até aprovação manual no painel.
Corpo do pedido
| Campo | Tipo | |
|---|---|---|
title | string | obrigatório |
content | string (HTML) | obrigatório |
category | string | opcional — slug da categoria |
tags | array de strings | opcional — nomes das tags, criadas automaticamente se não existirem |
image_url | string (url) | opcional — imagem de destaque; é descarregada e associada ao artigo |
external_id | string | opcional — ativa a atualização em vez de duplicação |
Resposta — 201 Created
Apagar um artigo
Move o artigo para o lixo. Só funciona se tiver sido publicado com a mesma chave que está a fazer o pedido.
Listar vagas
Devolve vagas publicadas, com filtros e paginação. Nunca inclui vagas pendentes ou apagadas.
Parâmetros de pesquisa
| Parâmetro | Descrição |
|---|---|
search | Pesquisa livre no título e conteúdo |
location | Filtra por localização (correspondência parcial) |
category | Slug da categoria |
job_type | Slug do tipo de contrato |
page | Página, a partir de 1 (predefinição: 1) |
per_page | Resultados por página, até 50 (predefinição: 20) |
Resposta — 200 OK
Obter uma vaga específica
Devolve o detalhe completo de uma vaga publicada, incluindo descrição e dados de candidatura.
application (contacto de candidatura). Se a plataforma que consome a API for pública, considera se esse dado deve ficar visível ou ser omitido.Códigos de erro
| HTTP | Código | Significado |
|---|---|---|
| 401 | pa_unauthorized | Chave em falta, inválida, revogada, ou sem permissão para esta operação |
| 403 | pa_forbidden | A chave não é dona do recurso (ex: tentar apagar vaga de outra origem) |
| 404 | pa_not_found | Vaga não encontrada |
| 422 | pa_missing_field / pa_invalid_email | Campo obrigatório em falta ou inválido |
Especificação OpenAPI
Para importar a API no Postman, Insomnia ou Swagger, descarrega a especificação completa no formato OpenAPI 3.0.
Descarregar openapi.yaml