oJobPub Format
Below you find a sample, how a ojobpub.json might look like. This is really just one example and is neither exhaustive nor self-explanatory. An explanation of the fields can be found at oJobPub JSON Schema.
Note
JSON might look complicated if you're not familiar with it, but don't worry — you won't have to write it by hand. Once this format is finalized, we'll provide tools to help you generate and validate the structure.
Sample
{
"version": "1.0",
"lastUpdated": "2025-09-13T12:00:00Z",
"employer": {
"name": "Acme Corp",
"location": {
"city": "New York",
"country": "US"
},
"industry": "Software",
"url": "https://example.com"
},
"jobs": [
{
"publishedAt": "2025-08-30",
"category": "Engineering",
"title": "Software Engineer",
"referenceId": "SE-2023-001",
"applyBefore": "2026-12-31",
"language": "en",
"description": "Develop and maintain software applications.",
"jobType": "permanent",
"workType": "hybrid",
"experienceLevel": "mid",
"workLoad": {
"minPercentage": 80,
"maxPercentage": 100
},
"tags": ["python", "flask", "backend"],
"locations":
[
{
"city": "New York",
"country": "US"
},
{
"city": "San Francisco",
"country": "US"
}
],
"salary": {
"min": 70000,
"max": 120000,
"currency": "USD",
"interval": "yearly"
},
"url": "https://example.com/job/1"
}
]
}
- The
employerjson object with minimal information about the employer. - The list of
jobsobjects with meta information about the job openings.
Some of the (blue) keys (e.g. workload or description) are optional while others are required (e.g. title).
Tip
While not all properties are required for a valid file, we highly recommend you fill out as much metadata as possible.