v2.4.0 Stable

Build on the JobSphere API

Access millions of jobs, candidate profiles, and recruitment tools through our RESTful API. Fast, reliable, and developer-friendly.

Read Documentation

Authentication & Setup

Secure access with API keys. Rate limited and monitored for safety.

API Authentication

All requests require a valid API key passed in the `Authorization` header as a Bearer token.

Authorization: Bearer YOUR_API_KEY_HERE
Content-Type: application/json

Base URL & Limits

All endpoints are relative to the base URL. Rate limits vary by plan.

Base URLapi.jobsphere.com/v1
Rate Limit (Free)1,000 req/hr
Rate Limit (Pro)10,000 req/hr
Status Operational

Core Endpoints

Search, post, and manage job listings programmatically.

GET /jobs
Rate: 100 req/min

Search Jobs

Retrieve a paginated list of active job listings. Supports filtering by location, role, salary, and company.

curl -X GET \
  https://api.jobsphere.com/v1/jobs?remote=true\&location=NYC \
  -H "Authorization: Bearer YOUR_KEY"
const res = await fetch('https://api.jobsphere.com/v1/jobs', {
  headers: { 'Authorization': `Bearer ${process.env.API_KEY}` }
});
const jobs = await res.json();
import requests
resp = requests.get('https://api.jobsphere.com/v1/jobs',
  headers={'Authorization': f'Bearer {KEY}'})
jobs = resp.json()
n
POST /jobs
Rate: 50 req/min

Post a Job

Create a new job listing. Requires employer verification. Returns job ID and public URL on success.

curl -X POST https://api.jobsphere.com/v1/jobs \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title": "Dev", "remote": true}'
const res = await fetch('https://api.jobsphere.com/v1/jobs', {
  method: 'POST',
  headers: { 'Authorization': `Bearer ${KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ title: 'Dev', remote: true })
});
import requests
resp = requests.post('https://api.jobsphere.com/v1/jobs',
  headers={'Authorization': f'Bearer {KEY}'},
  json={'title': 'Dev', 'remote': True})
PUT /jobs/:id/status
Rate: 30 req/min

Update Job Status

Change a job's visibility status (active, closed, archived). Useful for automated pipelines.

curl -X PUT https://api.jobsphere.com/v1/jobs/jb_9482/status \
  -H "Authorization: Bearer YOUR_KEY" \
  -d '{"status": "closed"}'
const res = await fetch(`https://api.jobsphere.com/v1/jobs/${id}/status`, {
  method: 'PUT',
  headers: { 'Authorization': `Bearer ${KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ status: 'closed' })
});
import requests
resp = requests.put(f'https://api.jobsphere.com/v1/jobs/{id}/status',
  headers={'Authorization': f'Bearer {KEY}'},
  json={'status': 'closed'})

Official SDKs & Integrations

Speed up development with our officially maintained client libraries.

Node.js

NPM package with TypeScript support

npm install @jobsphere/sdk

Python

Async & synchronous client

pip install jobsphere-api

Go

Lightweight HTTP client

go get jobsphere.com/sdk