Pedimos desculpas, um erro ocorreu e o servidor não pode processar a solicitação neste momento. Tente novamente em alguns minutos.
Ir para o início Como começar? Exemplos de uso Faça o teste do API

Use Jooble REST API

Se você é webmaster de algum portal ou motor de busca, Jooble oferece-lhe a oportunidade completar o conteúdo do seu site.

Para isso nós criamos REST API. Através deste serviço você pode fazer busca de vagas em Jooble e publicar os resultados em seu site com seu próprio design. Com este instrumento seus usuários vão ter a oportunidade de buscar vagas acumuladas dos vários portais de emprego.

Como começar?

Para começar a usar o Jooble REST API, preencha seguinte formulário. Isto é necessário para receber o acesso.

Ficamos contentes em colaborar

Nome*
Cargo*
Website*
Telefone*
Email*

Agradecemos a colaboração!

Ir para a página principal

Exemplos de uso

Pode usar um código qualquer, que achar melhor. Basta consultar seu programador.

Escolha opções

JSON
C# (.NET 4 or later)
Javascript
Php
Python 2.7
Python 3.5
Ruby

Para usar o REST API é preciso enviar solicitação HTTP POST para endereço https://br.jooble.org/api/<API KEY>

Exemplo de solicitação JSON:
{
		"keywords": "account manager",
		"location": "London",
		"radius": "80",
		"salary": "10000",
		"page": "1"
 }

Descrição dos campos de pesquisa
keywords - (obrigatório) – palavras-chaves para pesquisa
location - Localidade
radius - Distância da busca (0, 8, 16, 24, 40, 80) km
salary - Limite inferior do filtro “salário”. Número entre  1500 - 10000 (R$)
page - Número de página
searchMode - Formato de apresentação de resultados de busca
1 - Mostrar as vagas recomendadas +*JDP  (Apresentação da descrição completa das vagas em Jooble vai melhorar a experiência dos usuários em seu site) 
2 - Mostrar as vagas recomendadas 
3 - Mostrar todas as vagas  (não se recomenda)

Exemplo de resposta JSON:
{
	"totalCount":651,

	"jobs": [
		"job": {
			"title": "Account manager",
			"location": "London",
			"snippet": "... are looking for account manager in London, greate opportunity to ...",
			"salary": "10000 R$",
			"source": "barclays.co.uk",
"type": "Todos",
			"link": "https://br.jooble.org/away/...",
			"company": "Jooble",
			"id": 8240559805230395300,
			"updated": "2016-05-26T10:51:51.4720673+03:00"
		},
		"job": ...
	]
}

Descrição de campos
totalCount - Quantidade total de resultados de busca

”job”: estrutura
title - Cargo
location - Localidade
snippet - Um fragmento da descrição
salary - Salário
source - Site fonte da vaga
type - Tipo de vaga (Todos, Efetivo, Temporário, Parcial, Estágio, null)
link - Link para a vaga
updated - Data da publicação da vaga (formato: ISO8601)

Quando faz a busca sempre mostramos a quantidade total de resultados, mas os resultados da busca são representados por 20 vagas pela página.
var url = "https://br.jooble.org/api/";
var key = "<YOUR_API_KEY>";

//create request object
WebRequest request = HttpWebRequest.Create(url + key);
//set http method
request.Method = "POST";
//set content type
request.ContentType = "application/json";
//create request writer
var writer = new StreamWriter(request.GetRequestStream());
//write request body
writer.Write("{ keywords: 'it', location: 'Bern'}");
//close writer
writer.Close();
//get response reader
var response = request.GetResponse();
var reader = new StreamReader(response.GetResponseStream());
//read response
while (!reader.EndOfStream)
{
    Console.WriteLine(reader.ReadLine());
}    
var url = "https://br.jooble.org/api/";
var key = "<YOUR_API_KEY>";
var params = "{ keywords: 'it', location: 'Bern'}"

//create xmlHttpRequest object
var http = new XMLHttpRequest();
//open connection. true - asynchronous, false - synchronous
http.open("POST", url + key, true);

//Send the proper header information
http.setRequestHeader("Content-type", "application/json");
	
//Callback when the state changes
http.onreadystatechange = function() {
	if(http.readyState == 4 && http.status == 200) {
		alert(http.responseText);
	}
}
//Send request to the server
http.send(params);
<?php
$url = "https://br.jooble.org/api/";
$key = "<YOUR_API_KEY>";

//create request object
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url."".$key);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{ "keywords": "it", "location": "Bern"}');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));

// receive server response ...
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec ($ch);
curl_close ($ch);

//print response
print_r($server_output);

?>
import httplib

host = 'br.jooble.org'
key = '<YOUR_API_KEY>'

connection = httplib.HTTPConnection(host)
#request headers
headers = {"Content-type": "application/json"}
#json query
body = '{ "keywords": "it", "location": "Bern"}'
connection.request('POST','/api/' + key, body, headers)
response = connection.getresponse()
print(response.status, response.reason)
print(response.read())
import http.client

host = 'br.jooble.org'
key = '<YOUR_API_KEY>'

connection = http.client.HTTPConnection(host)
#request headers
headers = {"Content-type": "application/json"}
#json query
body = '{ "keywords": "it", "location": "Bern"}'
connection.request('POST','/api/' + key, body, headers)
response = connection.getresponse()
print(response.status, response.reason)
print(response.read())
require 'net/http'
url = 'https://br.jooble.org/api/'
key = '<YOUR_API_KEY>'
#create uri for request
uri = URI.parse(url + key)
#prepare post data
post_args = { 'keywords': 'it', 'location': 'Bern'}
#send request to the server
http = Net::HTTP.new(uri.host, uri.port)
#for https
http.use_ssl = true
request = Net::HTTP::Post.new(uri.request_uri, 'Content-Type' => 'application/json')
request.body = post_args.to_json
#send request to the server
response = http.request(request)