jobze

Job posting API

Post jobs to Jobze programmatically from your ATS or internal tools. Jobs posted via the API are identical to jobs posted through the form: same 60-day listings, same dashboard, applicants and analytics. API access is a paid add-on; see pricing.

Authentication

Create an API key from your dashboard and send it as a bearer token. Keys are shown once at creation, stored hashed, and can be revoked at any time.

Authorization: Bearer jbz_YOUR_API_KEY

Create a job

POST /api/v1/jobs with a JSON body. Returns 201 with the new listing on success.

curl -X POST https://jobze.co.uk/api/v1/jobs \
  -H "Authorization: Bearer jbz_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Senior Software Engineer",
    "company_name": "Acme Ltd",
    "location": "London, UK",
    "category": "software_engineering",
    "work_mode": "hybrid",
    "employment_type": "full_time",
    "salary_min": 80000,
    "salary_max": 95000,
    "apply_email": "careers@acme.com",
    "company_website": "acme.com",
    "screening_questions": ["Do you have the right to work in the UK?"],
    "description": "We are hiring a senior engineer to join our platform team..."
  }'

Response

{
  "id": "3f9c1a2e-...",
  "slug": "senior-software-engineer-acme-ltd-x7k2p",
  "status": "published",
  "url": "https://jobze.co.uk/jobs/senior-software-engineer-acme-ltd-x7k2p",
  "expires_at": "2026-10-11T09:30:00.000Z"
}

Fields

Required fields apply to published jobs. Drafts ("status": "draft") only need a title.

FieldTypeRequiredNotes
titlestringYesAt least 4 characters.
company_namestringYesShown on the listing.
locationstringYese.g. "London, UK".
descriptionstringYesAt least 100 characters. Plain text or light markdown (headings, bullets, bold).
categorystringYesOne of the category slugs listed below.
work_modestringYesremote, hybrid, onsite.
employment_typestringYesfull_time, part_time, contract, internship.
apply_urlstringOne of these twoLink to your careers page or ATS. Bare domains are accepted.
apply_emailstringOne of these twoCandidates apply on Jobze with a CV and we forward applications to this address.
company_websitestringNoBare domains are accepted.
salary_minnumberNoAnnual, GBP.
salary_maxnumberNoAnnual, GBP. Must be at least salary_min.
bonusstringNoe.g. "10% annual bonus + equity".
screening_questionsstring[]NoUp to 5 pre-qualifying questions (300 characters each). Candidates must answer before applying.
statusstringNoSet to "draft" to save without publishing. Defaults to published.

Category slugs

softwarehardwaredeep-techdata-aicivil-engineeringmechanicalelectricalaerospaceenergybiotechmanufacturingfinanceaccountinglegalhealthcarepharmasciencearchitectureconstructionconsultingproduct-designmarketingsaleshroperationseducationpublic-sectortelecomsactuarialother

Errors

StatusMeaning
400Validation failed. The error message says which field to fix.
401Missing, malformed, invalid or revoked API key.
403Your account doesn't have API access.
429Rate limit exceeded: 30 requests per minute per key.
500Something went wrong on our side. Safe to retry.

Error responses are JSON: {"error": "Please enter a job title."}

Rate limits

30 requests per minute per key. Every request is logged and visible to you for auditing. Need more? Email hello@jobze.co.uk.