Вибачте, сталася помилка і сервер не може обробити ваш запит на даний момент. Спробуйте ще раз через декілька хвилин.
На головну Як почати працювати Приклад Протестувати API

Спробуйте Jooble REST API

Якщо Ви вебмайстер інтернет-порталу або пошукової системи, jooble надасть Вам можливість розширити функціональність Вашого сайту.

Ми спеціально розробили REST API для цього. Завдяки цьому сервісу, Ви можете робити пошукові запити до jooble і публікувати його відповіді у себе на сайті у власному дизайні. За допомогою цього механізму Ви надаєте можливість Вашим користувачам шукати роботу по всьому Інтернету.

Як почати працювати?

Для того, щоб почати працювати з Jooble REST API, будь ласка, заповніть наступну форму. Це необхідно для отримання ключа.

Будемо раді нашій співпраці

Ім'я*
Посада*
Веб сайт*
Телефон*
Email*

Дякуємо за співпрацю!

Головна сторінка

Приклади використання

Використовуйте будь-який зручний код на ваш розсуд. Просто покажіть цю частину вашому програмісту.

Вибирайте опції

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

Для використання REST API потрібно відправити HTTP POST запит за адресою https://ua.jooble.org/api/<API KEY>

Приклад JSON запиту:
{
		"keywords": "account manager",
		"location": "London",
		"radius": "80",
		"salary": "20000",
		"page": "1"
 }

Опис полів запиту
keywords - (обов'язкове) - ключові слова для пошуку
location - назва міста для пошуку
radius - радіус пошуку (0, 8, 16, 24, 40, 80) км
salary - нижня межа фільтра по зарплаті. Число в діапазоні 3500 - 20000 (грн.)
page - номер сторінки
searchMode - режим пошуку
1 - Показувати рекомендовані вакансії + *JDP (Відображення повного опису вакансій на Jooble покращує досвід взаємодії з Вашим сайтом)
2 - Показувати рекомендовані вакансії
3 - Показувати всі вакансії (не рекомендується)

Приклад JSON відповіді:
{
	"totalCount":651,

	"jobs": [
		"job": {
			"title": "Account manager",
			"location": "London",
			"snippet": "... are looking for account manager in London, greate opportunity to ...",
			"salary": "20000 грн.",
			"source": "barclays.co.uk",
"type": "Будь-який",
			"link": "https://ua.jooble.org/away/...",
			"company": "Jooble",
			"id": 8240559805230395300,
			"updated": "2016-05-26T10:51:51.4720673+03:00"
		},
		"job": ...
	]
}

Опис полів відповіді
totalCount - загальна кількість результатів за запитом

Структура "job"
title - посада
location - назва міста для пошуку
snippet - невеликий фрагмент опису
salary - зарплата
source - сайт-джерело
type - тип вакансії (Будь-який, Повний робочий день, Тимчасова зайнятість, Часткова зайнятість, Стажування, null)
link - посилання на вакансію
updated - час публікації вакансії на сайті (формат: ISO8601)

При запиті завжди повертається загальна кількість результатів, але деталі віддаються посторінково, по 20 вакансій на сторінку.
var url = "https://ua.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://ua.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://ua.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 = 'ua.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 = 'ua.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://ua.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)