How can we help?

Integrations

Ethical Jobs - XML API

Last updated on 01 Mar, 2026

Introduction

The Ethical Jobs XML API is designed to translate from XML input to JSON output to maintain compatibility with a wide range of job posting distribution systems.

Our API has predictable, resource-oriented URLS and uses standard HTTP response codes to indicate API errors.

We use simple API Key based authentication and only the HTTP POST verb to create new Job ads. JSON is returned by all API responses including errors.

Authentication

Authenticate your account when using the API by including your secret API key in the request. API keys can be organised by contacting your relationships manager. Do not share your secret API key in any publicly accessible areas such as GitHub, client-side code or public repositories.

Authentication to the API is performed by simply including the X-EJ-Authorization header in your request with your API key as the value. All requests to the API must also include your organisation username in the body of the request as the employerid.

All API requests must be made over HTTPS. Please not that calls made over plain HTTP will fail. API requests without any authentication headers will also fail with a 403 Forbidden error.

Errors

Ethical Jobs uses conventional HTTP response codes to indicate the success or failure of an API request. In general, codes in the 2xx range indicate success, codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted), and codes in the 5xx range indicate an error with Ethical Jobs' servers.

HTTP status code summary

Status Code

Summary

201 Created

Success, a new job was created.

403 Forbidden

The API key was not provided or is invalid.

404 Not Found

The XML API url is wrong.

422 Unprocessable Entity

Unable to process the entity in question. Could be due to not setting the content type or due to providing a source ID.

500, 502, 503, 504 - Server Errors

Something went wrong on Ethical Job's end



Core Resources

POST /xml/jobs


https://api.ethicaljobs.com.au/xml/jobs

Jobs

To create a new advertisement with Ethical Jobs, you create a Job object. You can only create objects and not retrieve or edit them. Jobs are uniquely identified by their provided jobid.

The Job Object

Attributes

Attribute

Description

jobid (string) required

A unique identifier for your job ad.

employerid (string) required

A unique username for your organisation, is provided by your relationships manager.

title (string)

The title for your job ad.

description (string)

The description of your job ad.

body (string)

The main body of the job ad, can contain HTML.

toapply

Instructions for how to apply for the job ad, can contain HTML.

hide-expiry (boolean)

Flag indicating if you want the expiry date hidden or shown

featured (boolean)

Flag indiciating if you would like your job ad to be featured. Featuring an ad costs an extra job credit.

closingdate (timestamp)

Time at which the job ad should close. The timestamp must be provided in the UTC timezone without any timezone offset. Use the ISO 8601 format for the timestamp, e.g., 2024-03-27T20:35:00

location (string)

The location for the job

worktype (string)

The type of work e.g. parttime, fulltime

classification (string)

The classification for the job ad e.g. socialenterprise

sector (string)

The sector that your job ad is in. Can be one of: socialenterprise, notforprofit, forprofit


Vocabularies

It is best to use the slug in your XML to ensure data integrity.

classification

Title

Slug

Administration

administration

Advocacy and Campaigns

advocacy

Aged Care and Seniors Rights

agedcare

Alcohol and Other Drugs

alcoholandotherdrugs

Animal Welfare and Protection

animalwelfareandprotection

Business Development and Sales

businessdevelopment

Care and Support Work

careandsupportservices

Co-ops and Credit Unions

coopsandcreditunions

Communications and Marketing

communicationsandmarketing

Community Development

communityanddevelopment

Conservation and Land Management

conservationandmanagement

Corporate Social Responsibility

corporatesocialresponsibility

Disability Services

disabilityservices

Early Childhood

earlychildhood

Eco-Tourism

ecotourism

Education and Training

educationandtraining

Environment and Sustainability

environmentandsustainability

Executive and Senior Management

executiveseniormanagement

Family Services

familyservices

FairTrade and Organic

fairtradeorganicandecoretail

Finance and Accounting

financeandaccounting

Fundraising

fundraising

LGBTQIA+

glbt

Green Architecture/Property

greenarchitectureandproperty

Green Energy

greenenergy

Green Products and Services

greenproductsandservices

Health Care and Allied Health

healthcare

Health Promotion

healthpromotion

Housing and Homelessness

housing

Retail and Hospitality

retailandhospitality

HR and Employment Services

hrandemploymentservices

Indigenous

indigenous

International Aid and Development

internationalaidandevelopment

Information Technology & Digital

itandcommunicationtechnology

Legal and Human Rights

legalandhumanrights

Management

management

Media and Arts

mediaartsandentertainment

Medical Research

medicalresearch

Mental Health and Counselling

mentalhealthandcounselling

Multiculturalism and Diversity

multiculturalismdiversity

Nursing

nursing

Operations and Risk Management

operationsriskmanagement

Organic Farming and Gardening

organicfarmingandgardening

Policy and Research

policyandresearch

Project Management

projectmanagement

Recycling and Waste Management

recyclingandwastemanagement

Social Work

socialwork

Sustainable Transport

sustainabletransport

Trades and Services

tradesandservices

Unions and Workers Rights

unionsandworkersrights

Volunteer Management

volunteermanagement

Womens Organisations and Services

womensorganisationsandservices

Youth

youthservices

Domestic & Family Violence

domesticfamilyviolence

Events Management

events


location

Title

Slug

Melbourne

VIC

Regional VIC

REGVIC

Sydney

NSW

Regional NSW

REGNSW

Brisbane & Gold Coast

QLD

Regional QLD

REGQLD

Perth

WA

Regional WA

REGWA

Adelaide

SA

Regional SA

REGSA

Hobart

TAS

Regional TAS

REGTAS

Darwin

NT

Regional NT

REGNT

Canberra & ACT

ACT

International

INTERNATIONAL


worktype

Title

Slug

Casual

CASUAL

Contract

CONTRACT

Full Time

FULLTIME

Graduate

GRADUATE

Part Time

PARTTIME

Volunteer

VOLUNTEER

Board Member

BOARDMEMBER

Remote / Work from home

REMOTE


sector

Title

Slug

Business/Private Sector

Business and Private Sector

Federal Government

Federal Government

Local Government

Local Government

Not For Profit (NFP)

Not For Profit (NFP)

Social Enterprise

socialenterprise

State Government

State Government

University & Higher Education

university


HEADERS

Content-Type application/xml

X-EJ-Authorization your-api-key

Body raw

Screenshot 2026-02-20 at 4.01.56 PM.png

POST Staging - XML API - Post Example

https://api.staging.ethicalstg.com.au/xml/jobs

Jobs

See above.

HEADERS


Content-Type application/xml

X-EJ-Authorization qweqweasdasdzxczxc

Body raw

Screenshot 2026-02-20 at 4.15.00 PM.png

Example request

Screenshot 2026-02-20 at 4.21.13 PM.png

Example response

Screenshot 2026-02-20 at 4.25.59 PM.png

Making edits to a job ad already live on EthicalJobs.com.au

Jobs that were previously sent to EthicalJobs.com.au via the XML API, which are currently live on the site, can be updated on the original platform and re-submitted with the updates to EthicalJobs.com.au via the XML API.

When updating a live job ad with edits, ensure the submitted job:

  • Has all required fields complete (not just the updated fields)

  • Has the same EmployerID and JobID as the live job

This will not result in additional job ad credit charges. Unless the update is to Feature the job ad, or adding additional locations.

Did you find this article helpful?
Previous

Using our Applicant Management System

Next