Adzuna API
api.adzuna.com · Company
Job listings and employment data across 50+ countries — search jobs by keyword and location, get salary benchmarks, and access historical employment trends. Free tier available.
Authentication
API Key
Free app ID and key at developer.adzuna.com. Pass as ?app_id= and ?app_key= query parameters.
Sample Requests
GET
Search jobs
Search for Python developer jobs in New York.
https://api.adzuna.com/v1/api/jobs/us/search/1?what=python developer&where=new york&app_id=YOUR_APP_ID&app_key=YOUR_APP_KEY&results_per_page=5
Hover any highlighted part to learn what it does
curl -X GET "https://api.adzuna.com/v1/api/jobs/us/search/1?what=python%20developer&where=new%20york&app_id=YOUR_APP_ID&app_key=YOUR_APP_KEY&results_per_page=5"
import requests
params = {
"what": "python developer",
"where": "new york",
"app_id": "YOUR_APP_ID",
"app_key": "YOUR_APP_KEY",
"results_per_page": "5"
}
response = requests.get(
"https://api.adzuna.com/v1/api/jobs/us/search/1",
params=params,
)
print(response.json())const url = new URL('https://api.adzuna.com/v1/api/jobs/us/search/1');
url.searchParams.set('what', 'python developer');
url.searchParams.set('where', 'new york');
url.searchParams.set('app_id', 'YOUR_APP_ID');
url.searchParams.set('app_key', 'YOUR_APP_KEY');
url.searchParams.set('results_per_page', '5');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.adzuna.com/v1/api/jobs/us/search/1")
q := baseURL.Query()
q.Set("what", "python developer")
q.Set("where", "new york")
q.Set("app_id", "YOUR_APP_ID")
q.Set("app_key", "YOUR_APP_KEY")
q.Set("results_per_page", "5")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.adzuna.com/v1/api/jobs/us/search/1")
uri.query = URI.encode_www_form({
"what" => "python developer",
"where" => "new york",
"app_id" => "YOUR_APP_ID",
"app_key" => "YOUR_APP_KEY",
"results_per_page" => "5"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.adzuna.com/v1/api/jobs/us/search/1?" . http_build_query([
"what" => "python developer",
"where" => "new york",
"app_id" => "YOUR_APP_ID",
"app_key" => "YOUR_APP_KEY",
"results_per_page" => "5"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- Register at developer.adzuna.com for a free app_id and app_key
- Pass both as query params on every request
- Countries: us, gb, ca, au, de, fr, in, etc.
- Try GET /api/jobs/gb/search/1?app_id=ID&app_key=KEY&what=data+scientist&where=london