- Overview
-
Rest API Schemas
- Application schema
- Application message request
- Application message response
- Application reject request
- Application reject response
- Candidate schema
- Candidate get response
- Candidate search request
- Candidate search response
- Dossier schema
- Dossier get response
- Dossier search request
- Dossier search response
- Profile schema
- Profile get response
- Publication schema
- Publication publish request
- Publication publish response
- Publication get response
- Publication abort response
-
Integration API Schemas
- Application schema
- Application apply request
- Application apply response
- Application message request
- Application message response
- Application retract request
- Application retract response
- Application update request
- Application update response
- Publication schema
- Publication fetch response
- Publication fetched response
- Resource Schemas
- Error Schemas
Publication schema
Job publication schema definitions
JSON schema
{ "$schema": "http://json-schema.org/draft-04/schema", "id": "http://api.xeebo.com/schema/xeebo-rest-publication-schema-v1.0.0.json", "title": "Publication schema", "description": "Job publication schema definitions", "type": "object", "definitions": { "versionType": { "title": "Schema Version", "description": "Schema version string", "type": "string", "pattern": "^[0-9]\\.[0-9]\\.[0-9]$" }, "idType": { "title": "Identifier", "description": "Company, job or publication identifier", "type": "string" }, "isoDatetimeType": { "title": "Datetime", "description": "ISO datetime string", "type": [ "string", "null" ], "format": "datetime" }, "countryCodeType": { "title": "Country code", "description": "An iso-3166-alpha-2 country code", "type": [ "string", "null" ] }, "textType": { "title": "Text", "description": "Text including text linebreaks, e.g. \n", "type": [ "string", "null" ] }, "textLineType": { "title": "TextLine", "description": "Text without linebreaks", "type": [ "string", "null" ] }, "htmlSimpleType": { "title": "Simple HTML", "description": "HTML including the following elements <br />, <p>, <ul>, <li>, <b>", "type": [ "string", "null" ] }, "comNameType": { "title": "Company identifier (company id, not real company name)", "description": "The xeebo company identifier. Same as used in your company profile page url.", "$ref": "#/definitions/idType" }, "jobNameType": { "title": "Job identifier", "description": "A unique job identifier given from your system", "$ref": "#/definitions/idType" }, "pubNameType": { "title": "Publication identifier", "description": "A unique publication identifier given from your system", "$ref": "#/definitions/idType" }, "categoryType": { "title": "Category Type", "description": "Job category types, see categories.json", "type": "array", "items": { "type": "string" } }, "sectorType": { "title": "Sector Type", "description": "Company sector types, see sectors.json", "type": "array", "items": { "type": "string" } }, "headlineType": { "title": "Publication headline", "description": "The publication headline", "$ref": "#/definitions/textLineType" }, "introType": { "title": "Publication intro", "description": "The publication intro text", "$ref": "#/definitions/htmlSimpleType" }, "titleType": { "title": "Job title", "description": "The publication job title (required)", "type": "string" }, "captionType": { "title": "Job title caption", "description": "The publication job title caption aka sub title", "$ref": "#/definitions/textLineType" }, "descriptionType": { "title": "Job description", "description": "The publication description text", "$ref": "#/definitions/htmlSimpleType" }, "requirementType": { "title": "Job requirement", "description": "The job requirement text", "$ref": "#/definitions/htmlSimpleType" }, "dutyType": { "title": "Job duty", "description": "The job duty text", "$ref": "#/definitions/htmlSimpleType" }, "benefitType": { "title": "Job benefit", "description": "The job benefit text", "$ref": "#/definitions/htmlSimpleType" }, "infoType": { "title": "Job info", "description": "The job info text", "$ref": "#/definitions/htmlSimpleType" }, "summaryType": { "title": "Job summary", "description": "The job summary text", "$ref": "#/definitions/htmlSimpleType" }, "footerType": { "title": "Publication footer", "description": "The publication footer text", "$ref": "#/definitions/htmlSimpleType" }, "categoriesType": { "title": "Job categories", "description": "A list of job categories", "$ref": "#/definitions/categoryType" }, "sectorsType": { "title": "Company sectors", "description": "A list of company sectors", "$ref": "#/definitions/sectorType" }, "employmentType": { "title": "Job employment type", "description": "The job employment type", "type": [ "string", "null" ], "enum": [ "permanent", "temporary", "apprenticeship", "internship", "tryout", "holiday", "freelance", "supplementary" ] }, "occupationType": { "title": "Occupation", "description": "The occupation (simple job name)", "type": "string" }, "workloadType": { "title": "Job workload", "description": "The job workload given as min and max integer", "type": "object", "properties": { "min": { "title": "Minimal amount of workload", "description": "Minimal amount of workload in percent", "type": [ "integer", "null" ], "enum": [ 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 ] }, "max": { "title": "Maximal workload", "description": "Maximal amount of workload in percent", "type": [ "integer", "null" ], "enum": [ 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 ] } }, "required": [ "min", "max" ], "additionalProperties": false }, "careerStatusType": { "title": "Career status", "description": "The minmal career status reuqired for this job. 10:Learner, 20:Student 30:Job Beginner 40:Professional experienced 50:Supervisor 60:Manager 70:Director", "type": "string", "enum": [ "10", "20", "30", "40", "50", "60", "70" ] }, "positionType": { "title": "Postion type", "description": "The job position type. 10:Employee, 20:Position with responsibilities, 30:Executive position", "type": "string", "enum": [ "10", "20", "30" ] }, "workExperienceYearsType": { "title": "Work experience years", "description": "The minimal work experience years required for this job", "type": "integer" }, "minimalAgeYears": { "title": "Minimal age", "description": "The minimal age in years required for this job", "type": "integer" }, "skillsType": { "title": "Skills", "description": "A list of skills required for this job", "type": "array", "items": { "type": "string" } }, "educationFieldType": { "title": "Eduction Field", "description": "The international standard classification of Education (Level 2) required for this job. http://www.unesco.org/education/information/nfsunesco/doc/isced_1997.htm", "type": "string", "enum": [ "01", "09", "14", "21", "22", "31", "32", "34", "38", "42", "44", "46", "48", "52", "54", "58", "62", "64", "72", "76", "81", "84", "85", "86" ] }, "educationLevelType": { "title": "Eduction Level", "description": "The educational background required for this job. European Qualifications Framework (EQF) Level, http://ec.europa.eu/education/lifelong-learning-policy/eqf_en.htm", "type": "string", "enum": [ "1", "2", "3", "4", "5", "6", "7", "8" ] }, "educationType": { "title": "Education", "description": "Education description", "type": "object", "properties": { "field": { "$ref": "#/definitions/educationFieldType" }, "level": { "$ref": "#/definitions/educationLevelType" } } }, "criteriaType": { "title": "Search criteria", "description": "Searchable job criteria", "type": "object", "properties": { "age": { "$ref": "#/definitions/minimalAgeYears" }, "categories": { "$ref": "#/definitions/categoriesType" }, "sectors": { "$ref": "#/definitions/sectorsType" }, "education": { "$ref": "#/definitions/educationType" }, "employment": { "$ref": "#/definitions/employmentType" }, "experience": { "$ref": "#/definitions/workExperienceYearsType" }, "occupation": { "$ref": "#/definitions/occupationType" }, "position": { "$ref": "#/definitions/positionType" }, "skills": { "$ref": "#/definitions/skillsType" }, "status": { "$ref": "#/definitions/careerStatusType" }, "workload": { "$ref": "#/definitions/workloadType" } }, "additionalProperties": false }, "addressType": { "title": "Company address", "description": "The company address", "type": "object", "properties": { "name": { "title": "Name", "description": "Workplace location, department or company name", "type": [ "string", "null" ] }, "department": { "title": "Workplace department", "description": "The department of address line or first address line", "type": [ "string", "null" ] }, "poBox": { "title": "Post office box", "description": "The company post office box", "type": [ "string", "null" ] }, "street": { "title": "Street", "type": [ "string", "null" ] }, "zip": { "title": "Postal code", "description": "The postal code reference for a given city", "type": [ "string", "null" ] }, "city": { "title": "The location city", "type": [ "string", "null" ] }, "state": { "title": "The location state", "type": [ "string", "null" ] }, "country": { "title": "Country code", "description": "The aplha-2 country code", "type": [ "string", "null" ], "pattern": "^[A-Z]{2}$" } }, "additionalProperties": false }, "contactType": { "title": "Company contact", "description": "The company contact person", "type": "object", "properties": { "salutation": { "title": "Salutation", "description": "The contact persons salutation female (F), mae (M)", "type": [ "string", "null" ], "enum": [ "M", "F" ] }, "firstName": { "title": "Firstname", "description": "The contact persons firstname", "type": [ "string", "null" ] }, "lastName": { "title": "Lastname", "description": "The contact persons lastname", "type": [ "string", "null" ] }, "email": { "title": "Salutation", "description": "The contact persons email contact address", "type": [ "string", "null" ], "format": "email" } }, "additionalProperties": false }, "workplaceType": { "title": "Job workplace", "description": "The job workplace identifier or workplace description", "type": "object", "properties": { "id": { "title": "Workplace ID", "description": "Workplace id (external identifier) as defined in xeebo", "type": [ "string", "null" ] }, "name": { "title": "Name", "description": "Workplace location, department or company name", "type": [ "string", "null" ] }, "department": { "title": "Workplace department", "description": "The department of address line or first address line", "type": [ "string", "null" ] }, "street": { "title": "Street", "type": [ "string", "null" ] }, "zip": { "title": "Postal code", "description": "The postal code reference for a given city", "type": [ "string", "null" ] }, "city": { "title": "The location city", "type": [ "string", "null" ] }, "state": { "title": "The location state", "type": [ "string", "null" ] }, "country": { "title": "Country code", "description": "The aplha-2 country code", "type": [ "string", "null" ], "pattern": "^[A-Z]{2}$" } }, "additionalProperties": false }, "countryType": { "title": "Job location country", "description": "The job location country", "$ref": "#/definitions/countryCodeType" }, "localeType": { "title": "Publication language", "description": "The job publication text language locale as lower case iso-639-alpha-2 language locale code", "type": [ "string", "null" ] }, "publishedType": { "title": "Publish marker", "description": "Boolean marker for published publications", "type": "boolean" }, "docType": { "title": "Document", "description": "Document", "type": "object", "properties": { "typ": { "title": "Document type", "description": "The document type", "type": "string", "enum": [ "letter", "resume", "certificate", "diploma", "qualification", "check", "other" ] }, "maxAmount": { "title": "Maximal amount of documents", "description": "The maximal amount of documents allowed for upload of this document type", "type": [ "integer", "null" ] }, "minAmount": { "title": "Minimal amount of documents", "description": "The minimal amount of documents allowed for upload of this document type", "type": [ "integer", "null" ] }, "required": { "title": "Document required", "description": "Marks the document as required", "type": [ "boolean", "null" ] }, "size": { "title": "Document data size", "description": "The document data size in bytes", "type": [ "integer", "null" ] } }, "additionalProperties": false }, "documentsType": { "title": "Application documents", "description": "List of required and optional application documents", "type": "array", "items": { "$ref": "#/definitions/docType" }, "minItems": 0 }, "questionOptionType": { "title": "Question Option", "description": "The question option type", "properties": { "label": { "type": [ "integer", "string", "null" ] }, "value": { "type": [ "integer", "string", "null" ] } }, "additionalProperties": false }, "questionBaseType": { "title": "Question", "description": "The application question definition", "type": "object", "properties": { "id": { "title": "Question id", "description": "The application question id", "type": "string" }, "title": { "title": "Question title", "description": "The application question title", "type": "string" }, "description": { "title": "Question description", "description": "The application question description", "type": [ "string", "null" ] }, "required": { "title": "Marks the question as required", "type": "boolean" } } }, "checkBoxQuestionType": { "title": "Checkbox Question", "description": "The checkbox question type", "type": "object", "allOf": [ { "$ref": "#/definitions/questionBaseType" }, { "properties": { "typ": { "title": "Question type", "description": "The question type", "type": "string", "enum": [ "checkbox" ] }, "default": { "title": "Default question value", "description": "The default question value", "type": "array", "items": { "type": [ "integer", "string", "null" ] }, "minItems": 0 }, "options": { "title": "Question options", "description": "The application question text", "type": "array", "items": { "$ref": "#/definitions/questionOptionType" } } } } ] }, "radioQuestionType": { "title": "Radio Question", "description": "The radio question type", "type": "object", "allOf": [ { "$ref": "#/definitions/questionBaseType" }, { "properties": { "typ": { "title": "Question type", "description": "The question type", "type": "string", "enum": [ "radio" ] }, "default": { "title": "Default question value", "description": "The default question value", "type": [ "integer", "string", "null" ] }, "options": { "title": "Question options", "description": "The application question text", "type": "array", "items": { "$ref": "#/definitions/questionOptionType" } } } } ] }, "selectQuestionType": { "title": "Select Question", "description": "The select question type", "type": "object", "allOf": [ { "$ref": "#/definitions/questionBaseType" }, { "properties": { "typ": { "title": "Question type", "description": "The question type", "type": "string", "enum": [ "select" ] }, "default": { "title": "Default question value", "description": "The default question value", "type": [ "integer", "string", "null" ] }, "options": { "title": "Question options", "description": "The application question text", "type": "array", "items": { "$ref": "#/definitions/questionOptionType" } } } } ] }, "multiSelectQuestionType": { "title": "Multi Select Question", "description": "The multi select question type", "type": "object", "allOf": [ { "$ref": "#/definitions/questionBaseType" }, { "properties": { "typ": { "title": "Question type", "description": "The question type", "type": "string", "enum": [ "multiselect" ] }, "default": { "title": "Default question value", "description": "The default question value", "type": "array", "items": { "type": [ "integer", "string", "null" ] }, "minItems": 0 }, "options": { "title": "Question options", "description": "The application question text", "type": "array", "items": { "$ref": "#/definitions/questionOptionType" } } } } ] }, "textAreaQuestionType": { "title": "Multiline Text Question", "description": "The multiline text (textarea) question type", "type": "object", "allOf": [ { "$ref": "#/definitions/questionBaseType" }, { "properties": { "typ": { "title": "Question type", "description": "The question type", "type": "string", "enum": [ "textarea" ] }, "default": { "title": "Default text value", "description": "The default answer text value", "type": [ "string", "null" ] } } } ] }, "textLineQuestionType": { "title": "Text Line Question", "description": "The single text line question type", "type": "object", "allOf": [ { "$ref": "#/definitions/questionBaseType" }, { "properties": { "typ": { "title": "Question type", "description": "The question type", "type": "string", "enum": [ "textline" ] }, "default": { "title": "Default text value", "description": "The default answer text value", "type": [ "string", "null" ] } } } ] }, "questionGroupType": { "title": "Question Group", "description": "The application question group group definition", "type": "object", "properties": { "id": { "title": "Question group id", "description": "The application question group group id", "type": "string" }, "typ": { "title": "Question group type", "description": "The application question group type", "type": "string", "enum": [ "group" ] }, "title": { "title": "Question group text", "description": "The application question group text", "type": "string" }, "description": { "title": "Question group description", "description": "The application question group description", "type": [ "string", "null" ] }, "questions": { "title": "Question group questions", "description": "The application question group questions", "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/checkBoxQuestionType" }, { "$ref": "#/definitions/radioQuestionType" }, { "$ref": "#/definitions/selectQuestionType" }, { "$ref": "#/definitions/multiSelectQuestionType" }, { "$ref": "#/definitions/textAreaQuestionType" }, { "$ref": "#/definitions/textLineQuestionType" } ] }, "minItems": 0 } }, "additionalProperties": false }, "questionnaireType": { "title": "Application questionnaire", "description": "Questionnaire", "type": "object", "properties": { "id": { "title": "Questionnaire id", "description": "The application Questionnaire id", "type": "string" }, "typ": { "title": "Questionnaire type", "description": "The questionnaire type", "type": "string", "enum": [ "questionnaire" ] }, "title": { "title": "Questionnaire text", "description": "The application questionnaire text", "type": "string" }, "description": { "title": "Questionnaire description", "description": "The application questionnaire description", "type": [ "string", "null" ] }, "groups": { "title": "Questionnaire groups", "description": "The application questionnaire groups", "type": "array", "items": { "$ref": "#/definitions/questionGroupType" }, "minItems": 0 } }, "additionalProperties": false }, "questionsType": { "title": "Application questionnaires", "description": "List of required and optional application questionnaires", "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/checkBoxQuestionType" }, { "$ref": "#/definitions/radioQuestionType" }, { "$ref": "#/definitions/selectQuestionType" }, { "$ref": "#/definitions/multiSelectQuestionType" }, { "$ref": "#/definitions/textAreaQuestionType" }, { "$ref": "#/definitions/textLineQuestionType" }, { "$ref": "#/definitions/questionGroupType" }, { "$ref": "#/definitions/questionnaireType" } ] }, "minItems": 0 }, "startDateType": { "title": "Publication start date", "description": "Date where the publication starts", "$ref": "#/definitions/isoDatetimeType" }, "endDateType": { "title": "Publication end date", "description": "Date where the publication ends", "$ref": "#/definitions/isoDatetimeType" }, "createdDateType": { "title": "Publication created date", "description": "Date where the publication was created", "$ref": "#/definitions/isoDatetimeType" } } }
JSON schema data description
Path/Attribute | Title | Description | Required |
---|