|
| 1 | +--- |
| 2 | +hide: |
| 3 | +- toc |
| 4 | +--- |
| 5 | +# oJobPub - Open Job Publishing Initiative |
| 6 | + |
| 7 | +JSON Schema missing a description, provide it using the `description` key in the root of the JSON document. |
| 8 | + |
| 9 | +### Type: `object` |
| 10 | + |
| 11 | +> ⚠️ Additional properties are not allowed. |
| 12 | +
|
| 13 | +| Property | Type | Required | Possible values | Deprecated | Default | Description | Examples | |
| 14 | +| -------- | ---- | -------- | --------------- | ---------- | ------- | ----------- | -------- | |
| 15 | +| version | `const` | ✅ | `1.0` | | | Version of the oJobPub schema | | |
| 16 | +| lastUpdated | `string` | ✅ | Format: [`date-time`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the oJobPub feed was last updated | | |
| 17 | +| employer | `object` | ✅ | object | | | | | |
| 18 | +| employer.name | `string` | ✅ | Length: `1 <= string <= 255` | | | | | |
| 19 | +| employer.location | `object` | ✅ | object | | | | | |
| 20 | +| employer.location.city | `string` | | string | | | City | | |
| 21 | +| employer.location.country | `string` | | Length: `2 <= string <= 2` | | | Country code as ISO 3166-1 alpha-2: see https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 | | |
| 22 | +| employer.industry | `string` | | Length: `1 <= string <= 255` | | | | | |
| 23 | +| employer.url | `string` | | Format: [`uri`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | | | |
| 24 | +| jobs | `array` | ✅ | object | | | | | |
| 25 | +| jobs[].language | `string` | ✅ | Length: `2 <= string <= 2` | | | Language of the job description as ISO 639-1:2002. See https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes | | |
| 26 | +| jobs[].publishedAt | `string` | ✅ | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the job was first published | | |
| 27 | +| jobs[].startDate | `string` | | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the job starts | | |
| 28 | +| jobs[].endDate | `string` | | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the job ends | | |
| 29 | +| jobs[].applyBefore | `string` | | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date until the job is valid | | |
| 30 | +| jobs[].category | `string` | | Length: `string <= 255` | | | Category of the job: e.g. Engineering, Marketing, Salesq | | |
| 31 | +| jobs[].referenceId | `string` | | Length: `string <= 255` | | | Employer's job reference ID | | |
| 32 | +| jobs[].title | `string` | ✅ | Length: `string <= 255` | | | Title of the job | | |
| 33 | +| jobs[].description | `string` | | Length: `string <= 1000` | | | Description of the job | | |
| 34 | +| jobs[].jobType | `string` | ✅ | `permanent` `contract` `internship` `apprenticeship` `temporary` `volunteer` `freelance` | | | | | |
| 35 | +| jobs[].experienceLevel | `string` | | `junior` `mid` `senior` `lead` `manager` `director` `executive` | | | Experience level required for the job | | |
| 36 | +| jobs[].workLoad | `object` | | object | | | Expected workload in percentage for the job | | |
| 37 | +| jobs[].workLoad.minPercentage | `number` | | `0 <= x <= 100` | | | | | |
| 38 | +| jobs[].workLoad.maxPercentage | `number` | | `0 <= x <= 100` | | | | | |
| 39 | +| jobs[].workType | `string` | | `remote` `on-site` `hybrid` | | | Type of work for the job | | |
| 40 | +| jobs[].salary | `object` | | object | | | Salary range for the job | | |
| 41 | +| jobs[].salary.min | `number` | | `0 <= x ` | | | Minimum salary to expect | | |
| 42 | +| jobs[].salary.max | `number` | | `0 <= x ` | | | Maximum salary to expect | | |
| 43 | +| jobs[].salary.currency | `string` | | Length: `3 <= string <= 3` | | | Currency as ISO 4217: see https://en.wikipedia.org/wiki/ISO_4217 | | |
| 44 | +| jobs[].salary.interval | `string` | | `hourly` `daily` `weekly` `monthly` `yearly` | | | Min/max salary interval, e.g. per hour, per month, per year | | |
| 45 | +| jobs[].tags | `array` | | Length: `string <= 28` | | | Key words for the job | | |
| 46 | +| jobs[].locations | `array` | ✅ | object | | | Locations of the job | | |
| 47 | +| jobs[].locations[].city | `string` | | string | | | City | | |
| 48 | +| jobs[].locations[].country | `string` | | Length: `2 <= string <= 2` | | | Country code as ISO 3166-1 alpha-2: see https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 | | |
| 49 | +| jobs[].url | `string` | ✅ | Format: [`uri`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | URL of the job's full description | | |
| 50 | + |
| 51 | + |
| 52 | +--- |
| 53 | + |
| 54 | +# Definitions |
| 55 | + |
| 56 | +## location |
| 57 | + |
| 58 | +No description provided for this model. |
| 59 | + |
| 60 | +#### Type: `object` |
| 61 | + |
| 62 | +| Property | Type | Required | Possible values | Deprecated | Default | Description | Examples | |
| 63 | +| -------- | ---- | -------- | --------------- | ---------- | ------- | ----------- | -------- | |
| 64 | +| city | `string` | | string | | | City | | |
| 65 | +| country | `string` | | Length: `2 <= string <= 2` | | | Country code as ISO 3166-1 alpha-2: see https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 | | |
| 66 | + |
| 67 | +## job |
| 68 | + |
| 69 | +No description provided for this model. |
| 70 | + |
| 71 | +#### Type: `object` |
| 72 | + |
| 73 | +> ⚠️ Additional properties are not allowed. |
| 74 | +
|
| 75 | +| Property | Type | Required | Possible values | Deprecated | Default | Description | Examples | |
| 76 | +| -------- | ---- | -------- | --------------- | ---------- | ------- | ----------- | -------- | |
| 77 | +| language | `string` | ✅ | Length: `2 <= string <= 2` | | | Language of the job description as ISO 639-1:2002. See https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes | | |
| 78 | +| publishedAt | `string` | ✅ | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the job was first published | | |
| 79 | +| title | `string` | ✅ | Length: `string <= 255` | | | Title of the job | | |
| 80 | +| jobType | `string` | ✅ | `permanent` `contract` `internship` `apprenticeship` `temporary` `volunteer` `freelance` | | | | | |
| 81 | +| locations | `array` | ✅ | object | | | Locations of the job | | |
| 82 | +| locations[].city | `string` | | string | | | City | | |
| 83 | +| locations[].country | `string` | | Length: `2 <= string <= 2` | | | Country code as ISO 3166-1 alpha-2: see https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 | | |
| 84 | +| url | `string` | ✅ | Format: [`uri`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | URL of the job's full description | | |
| 85 | +| startDate | `string` | | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the job starts | | |
| 86 | +| endDate | `string` | | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date when the job ends | | |
| 87 | +| applyBefore | `string` | | Format: [`date`](https://json-schema.org/understanding-json-schema/reference/string#built-in-formats) | | | Date until the job is valid | | |
| 88 | +| category | `string` | | Length: `string <= 255` | | | Category of the job: e.g. Engineering, Marketing, Salesq | | |
| 89 | +| referenceId | `string` | | Length: `string <= 255` | | | Employer's job reference ID | | |
| 90 | +| description | `string` | | Length: `string <= 1000` | | | Description of the job | | |
| 91 | +| experienceLevel | `string` | | `junior` `mid` `senior` `lead` `manager` `director` `executive` | | | Experience level required for the job | | |
| 92 | +| workLoad | `object` | | object | | | Expected workload in percentage for the job | | |
| 93 | +| workLoad.minPercentage | `number` | | `0 <= x <= 100` | | | | | |
| 94 | +| workLoad.maxPercentage | `number` | | `0 <= x <= 100` | | | | | |
| 95 | +| workType | `string` | | `remote` `on-site` `hybrid` | | | Type of work for the job | | |
| 96 | +| salary | `object` | | object | | | Salary range for the job | | |
| 97 | +| salary.min | `number` | | `0 <= x ` | | | Minimum salary to expect | | |
| 98 | +| salary.max | `number` | | `0 <= x ` | | | Maximum salary to expect | | |
| 99 | +| salary.currency | `string` | | Length: `3 <= string <= 3` | | | Currency as ISO 4217: see https://en.wikipedia.org/wiki/ISO_4217 | | |
| 100 | +| salary.interval | `string` | | `hourly` `daily` `weekly` `monthly` `yearly` | | | Min/max salary interval, e.g. per hour, per month, per year | | |
| 101 | +| tags | `array` | | Length: `string <= 28` | | | Key words for the job | | |
0 commit comments