Lo sentimos, se ha producido un error al procesar su solicitud. Por favor, inténtelo de nuevo más tarde.
Página principal ¿Cómo empezar a trabajar? Ejemplo de uso Prueba API

Prueba Jooble REST API

Si eres webmaster de un website o de un sistema de búsqueda, Jooble te da la oportunidad de aumentar la funcionalidad de tu sitio.

Hemos desarrollado el REST API especialmente para eso. Con este servicio puedes hacer las solicitudes a Jooble y publicar los resultados de busqueda de ofertas de empleo en tu propio sitio web. Con la ayuda de este instrumento ofrece a sus usuarios la oportunidad de buscar empleo por todo internet.

¿Cómo empezar a trabajar?

Para empezar a trabajar con Jooble REST API, por favor, llena el siguiente formulario. Es necesario obtener una clave de acceso.

Estaremos encantados de colaborar.

Nombre*
Puesto*
Sitio web*
Teléfono*
e-mail*

¡Gracias por tu cooperación!

Ir a la página principal

EJEMPLOS DE USO

Usa cualquiera de los códigos que te sea más cómodo. Tan sólo muestra este apartado al programador.

Elige alguna opcion

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

Para el uso de REST API es necesario enviar la solicitud HTTP POST a la dirección https://ve.jooble.org/api/<API KEY>

Ejemplo de solicitud JSON:
 {
		"keywords": "account manager",
		"location": "London",
		"radius": "80",
		"salary": "6500",
		"page": "1"
 }

Descripción de los campos de  solicitud
keywords - (obligatorio) - palabras clave para la búsqueda
location - nombre de la ciudad para la búsqueda
radius - radio de búsqueda (0, 8, 16, 24, 40, 80) kilómetros
salary - límite inferior del filtro "salario". Número en intervalo 1500 - 6500 (Bs)
page - número de página
searchMode - modo de búsqueda
	1 - Mostrar vacantes recomendadas + *JDP (La visualización de la descripción completa de las vacantes en Jooble mejora la experiencia de interacción con su sitio web)
	2 - Mostrar vacantes recomendadas 
	3 - Mostrar todas las vacantes (no se recomienda)

Ejemplo de respuesta JSON:
{
	"totalCount":651,

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

Descripción de los campos de respuesta
 totalCount - número total de resultados de búsqueda

Estructura "job"
title - puesto
location - nombre de la ciudad para la búsqueda
snippet - pequeño fragmento de la descripción
salary - salario
source - portal fuente
type - tipo de vacante (Cualquiera, Jornada completa, Jornada temporal, Jornada parcial, Prácticas, null)
link - enlace a la vacante
updated - hora de la publicación de la vacante (formato: ISO8601)

En la solicitud siempre se da el número total de los resultados, pero los detalles se dan por página, 20 vacantes por página.
var url = "https://ve.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/x-www-form-urlencoded";
//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://ve.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/x-www-form-urlencoded");
	
//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://ve.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/x-www-form-urlencoded'));

// 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 = 've.jooble.org'
key = '<YOUR_API_KEY>'

connection = httplib.HTTPConnection(host)
#request headers
headers = {"Content-type": "application/x-www-form-urlencoded"}
#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 = 've.jooble.org'
key = '<YOUR_API_KEY>'

connection = http.client.HTTPConnection(host)
#request headers
headers = {"Content-type": "application/x-www-form-urlencoded"}
#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://ve.jooble.org/api/'
key = '<YOUR_API_KEY>'
#create uri for request
uri = URI.parse(url + key)
#prepare post data
post_args = {
	'content' => "{ keywords: 'it', location: 'Bern'}"
}
#send request to the server
resp, data = Net::HTTP.post_form(uri, post_args)