Job Post

Prev Next

Post a new job to carehome.co.uk. Each job uses one job credit and stays live for 30 days.

Who can use it: Enhanced and Platinum subscribers with at least one job credit. Partners post with the subscriber's API key and their own partner_key.

Post a job

POST /index.cfm/jobs

Base URL https://api.carehome.co.uk. Authentication, errors and support are covered in the Jobs API overview.

Send the fields as a JSON object with the header Content-Type: application/json. IDs can be sent as numbers or strings.

Body parameters

ParameterTypeRequiredDescription
api_keystringYesYour API key. Partners send the API key of the customer the job is for.
job_titlestringYesJob title, up to 60 characters.
job_category_idintegerYesFrom /jobs/categories.
job_setting_idintegerYesThe kind of workplace, from /jobs/settings.
job_type_idintegerYesFor example Full Time, from /jobs/types.
job_descriptionstringYesJob description, as plain text or simple HTML. Up to 8,000 characters of text, not counting HTML tags. See Job description.
job_contact_namestringYesContact name for the job, up to 255 characters.
job_contact_emailstringOne of these twoEmail address applications are sent to, up to 255 characters.
job_contact_urlstringOne of these twoWeb address of this job's application page, up to 1,000 characters. Applicants are sent there to apply. Use the page for this job, not a general jobs page. If you send both, the URL is used and the email address is ignored.
job_admin_emailstringYesEmail address we remind before the job expires, up to 300 characters. Not shown to applicants.
job_processed_bystringYesName of the person posting the job, up to 100 characters. For our records; not shown to applicants.
job_pay_type_idintegerSee Salary1 per annum, 2 per hour, 5 non-specific. From /jobs/pay_types.
job_salary_fromstringSee SalaryLowest pay, for example "24000" or "12.50". Up to 7 digits and 2 decimal places, with no commas or currency sign.
job_salary_tostringSee SalaryHighest pay, in the same format. For a fixed amount, send the same value as job_salary_from.
job_salarystringSee SalarySalary details as text, for example "Plus overtime", up to 60 characters.
job_town_idintegerSee descriptionWhere the job is, from /jobs/towns. If you leave it out, we use the town of the setting the job is branded as. If we can't find one, the request fails with Please provide job_town_id.
job_member_idintegerNo (recommended)The setting or group the job is shown as. If you leave it out, the job is branded as the setting or group your API key belongs to. Sending it links the job to the right setting and gets better application rates. See Branding.
job_referencestringNoYour own reference for the job, up to 255 characters. Returned with the job and its applications.
uniqueReferencebooleanNotrue to refuse the job if one of your open jobs already has the same job_reference. See Duplicate references.
job_skillsstringNoSkills and qualifications, as a comma-separated list, up to 1,000 characters.
job_accept_applicant_uk_onlyintegerNo1 to accept applicants based in the UK only. Default 0.
partner_keystringPartners onlyYour partner key.

Salary

Give the pay in one of these ways:

PaySend
Per annumjob_pay_type_id 1, job_salary_from of at least 1000, and job_salary_to. job_salary is optional.
Per hourjob_pay_type_id 2, job_salary_from, and job_salary_to below 1000. job_salary is optional.
Non-specificjob_pay_type_id 5 and job_salary. Don't send job_salary_from or job_salary_to.
Text onlyjob_salary only. Supported for integrations built before February 2017; use a pay type for new integrations.

job_salary_from must not be higher than job_salary_to, and both need a job_pay_type_id.

Branding

A job is shown on carehome.co.uk as posted by a setting or group. That is its branding, and you set it with job_member_id.

job_member_id is optional. If you leave it out, the job is branded as the setting or group your API key belongs to. We recommend always sending it: it links the job to the right setting, which helps it reach the right candidates and gets better application rates.

  • Your own setting: send your own ID.
  • Another setting in your group: send that setting's ID. A group can brand jobs as any of its settings.

Get the IDs you can use from /jobs/members. Any other ID fails with valid job_member_id is required.

Job description

We clean up job_description before it is shown:

  • Use simple HTML: p, br, b, strong, i, em, u, ul, ol and li. Attributes are removed, and other tags may be removed.
  • Sentences containing contact details are removed: email addresses, web addresses, and phone numbers.
  • Empty paragraphs and repeated spaces are removed.

Applicants apply through carehome.co.uk, using job_contact_email or job_contact_url, so contact details aren't needed in the description.

Duplicate references

If you send "uniqueReference": true with a job_reference, we check your open jobs, and those of your group, for the same reference. If there is one, the job is not posted and no credit is used. The response is 409:

{
  "data": {},
  "error": [],
  "warn": [
    "There is an existing job with the reference EXAMPLE-001"
  ]
}

Example request

curl -X POST "https://api.carehome.co.uk/index.cfm/jobs" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "YOUR_API_KEY",
    "job_title": "Care Assistant (example)",
    "job_category_id": 5,
    "job_setting_id": 10,
    "job_type_id": 1,
    "job_description": "<p>An example job description.</p>",
    "job_skills": "Example skill, another example skill",
    "job_contact_name": "Example Name",
    "job_contact_email": "example@example.com",
    "job_admin_email": "example@example.com",
    "job_processed_by": "Example Name",
    "job_pay_type_id": 2,
    "job_salary_from": "12.50",
    "job_salary_to": "13.50",
    "job_town_id": 12345,
    "job_reference": "EXAMPLE-001"
  }'

Example response

201 Created. data is the new job, in the same format as the job list. Keep job_id: you need it to edit or close the job.

{
  "data": {
    "job_id": 96000000001,
    "job_title": "Care Assistant (example)",
    "job_posted_date": "2026-10-01 09:30:00",
    "job_expiry_date": "31-Oct-2026 00:00:00",
    "job_link": "https://www.carehome.co.uk/jobs/job.cfm/id/96000000001",
    "...": "other job fields"
  },
  "error": [],
  "warn": []
}

Errors

Validation errors return 400 with the reasons in error. Common messages:

errorWhat to do
Please either provide both job_salary_from & job_salary_to, or provide job_salaryAdd pay details; see Salary.
When entering job_salary_from & job_salary_to, job_pay_type_id is a required fieldAdd job_pay_type_id.
Please enter a value higher than 1000 for job_salary_from if submitting job_pay_type_id=1Annual pay must be at least 1000.
Please enter a value lower than 1000 for job_salary_to if submitting job_pay_type_id=2Hourly pay must be below 1000.
Please provide job_town_idSend job_town_id.
Please pass Contact Email or Contact URLSend job_contact_email or job_contact_url.
job_title is required (and similar)Send the required field.
Invalid job_category_id: 0 (and similar)Use an ID from the lookup endpoints.
valid job_member_id is requiredUse an ID from /jobs/members.
Insufficient Job CreditsBuy more credits. Check your balance with /jobs/credits.