{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/gloat/main/json-schema/gloat-job-code-read-schema.json", "title": "JobCodeRead", "x-generated": "2026-10-14", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/gloat-skills-foundation-api-openapi.yml#/components/schemas/JobCodeRead", "properties": { "skills": { "anyOf": [ { "items": { "$ref": "#/$defs/SkillAPI" }, "type": "array" }, { "type": "null" } ], "title": "Skills" }, "skillComponents": { "anyOf": [ { "items": { "$ref": "#/$defs/SkillComponent-Output" }, "type": "array" }, { "type": "null" } ], "title": "Skillcomponents" }, "code": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Code" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "benchmarkTitle": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Benchmarktitle" }, "family": { "anyOf": [ { "$ref": "#/$defs/JobCodeFamilyAPI-Output" }, { "type": "null" } ] }, "function": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Function" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "descriptionSource": { "anyOf": [ { "$ref": "#/$defs/DescriptionSource" }, { "type": "null" } ] }, "status": { "anyOf": [ { "$ref": "#/$defs/Status" }, { "type": "null" } ] }, "businessStatus": { "anyOf": [ { "$ref": "#/$defs/BusinessStatus" }, { "type": "null" } ] }, "compensationRange": { "anyOf": [ { "$ref": "#/$defs/CompensationRange" }, { "type": "null" } ] }, "employeeCountByCountry": { "anyOf": [ { "additionalProperties": { "type": "integer" }, "type": "object" }, { "type": "null" } ], "title": "Employeecountbycountry" }, "competencies": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Competencies" }, "experiences": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Experiences" }, "tasks": { "anyOf": [ { "items": { "$ref": "#/$defs/TaskAPI" }, "type": "array" }, { "type": "null" } ], "title": "Tasks" }, "extraData": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Extradata" }, "jobType": { "anyOf": [ { "$ref": "#/$defs/JobType" }, { "type": "null" } ] }, "employeeGlobalCount": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Employeeglobalcount", "description": "Global employee count for the job code (behind the scences, this is distributed between geos)" }, "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Id" }, "lastUpdated": { "anyOf": [ { "$ref": "#/$defs/ChangeInfoRead" }, { "type": "null" } ] }, "created": { "anyOf": [ { "$ref": "#/$defs/ChangeInfoRead" }, { "type": "null" } ] }, "employeeCount": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Employeecount" }, "jobTitlesCount": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Jobtitlescount" }, "gradeLevels": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Gradelevels" }, "areRequiredSkillsDescriptionBased": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Arerequiredskillsdescriptionbased", "default": false }, "genaiImpact": { "anyOf": [ { "$ref": "#/$defs/GenAIImpactAPI" }, { "type": "null" } ] } }, "type": "object", "$defs": { "BusinessStatus": { "type": "string", "enum": [ "at_risk", "stable", "critical" ], "title": "BusinessStatus" }, "ChangeInfoRead": { "properties": { "date": { "anyOf": [ { "type": "string", "format": "date-time" }, { "type": "null" } ], "title": "Date" }, "userId": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Userid" }, "userName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Username" } }, "type": "object", "title": "ChangeInfoRead" }, "CompensationRange": { "properties": { "min": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Min" }, "max": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max" }, "currency": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Currency", "default": "USD" } }, "type": "object", "title": "CompensationRange" }, "DescriptionSource": { "type": "string", "enum": [ "source", "ai" ], "title": "DescriptionSource" }, "DisplayedTerm": { "properties": { "id": { "type": "string", "title": "Id" }, "display": { "type": "string", "title": "Display" }, "language": { "type": "string", "title": "Language" } }, "additionalProperties": true, "type": "object", "required": [ "id", "display", "language" ], "title": "DisplayedTerm", "description": "Represents a displayed term with basic properties.\n\nThis model is configured to allow additional fields beyond those explicitly defined.\nThis flexibility enables the incorporation of extra keys from the ontology without enforcing a rigid schema." }, "GenAIImpactAPI": { "properties": { "score": { "type": "number", "title": "Score" }, "skills": { "items": { "$ref": "#/$defs/SkillGenAIImpactSchema" }, "type": "array", "title": "Skills" }, "impactEnum": { "$ref": "#/$defs/GenAIImpactLevel" }, "companySlug": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Companyslug" }, "impact": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Impact", "readOnly": true } }, "type": "object", "required": [ "score", "skills", "impactEnum", "impact" ], "title": "GenAIImpactAPI" }, "GenAIImpactLevel": { "type": "string", "enum": [ "low", "moderate", "high", "full" ], "title": "GenAIImpactLevel" }, "ImportanceEnum": { "type": "string", "enum": [ "low", "medium", "high", "crucial" ], "title": "ImportanceEnum" }, "JobCodeFamilyAPI-Output": { "properties": { "id": { "type": "string", "title": "Id" }, "name": { "type": "string", "title": "Name" } }, "type": "object", "required": [ "id", "name" ], "title": "JobCodeFamilyAPI" }, "JobType": { "type": "string", "enum": [ "manager", "individual" ], "title": "JobType" }, "SkillAPI": { "properties": { "name": { "type": "string", "title": "Name" }, "language": { "type": "string", "title": "Language", "default": "en" }, "level": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Level" }, "source": { "$ref": "#/$defs/SkillSource", "default": "company" }, "importance": { "anyOf": [ { "$ref": "#/$defs/ImportanceEnum" }, { "type": "null" } ] }, "entitySource": { "anyOf": [ { "type": "string", "enum": [ "job_title", "job_code", "job_family" ] }, { "type": "null" } ], "title": "Entitysource" }, "isDeleted": { "type": "boolean", "title": "Isdeleted", "default": false }, "isCascaded": { "type": "boolean", "title": "Iscascaded", "default": false }, "createdAt": { "anyOf": [ { "type": "string", "format": "date-time" }, { "type": "null" } ], "title": "Createdat" }, "modifiedAt": { "anyOf": [ { "type": "string", "format": "date-time" }, { "type": "null" } ], "title": "Modifiedat" }, "externalId": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Externalid" }, "taxonomy": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Taxonomy" } }, "type": "object", "required": [ "name" ], "title": "SkillAPI", "description": "Skill model for API responses (GET) - no validation to support legacy data" }, "SkillComponent-Output": { "properties": { "skill": { "anyOf": [ { "$ref": "#/$defs/DisplayedTerm" }, { "type": "null" } ] }, "tags": { "items": { "$ref": "#/$defs/Tag" }, "type": "array", "title": "Tags" }, "entity": { "additionalProperties": true, "type": "object", "title": "Entity" }, "is_unknown_skill": { "type": "boolean", "title": "Is Unknown Skill", "readOnly": true }, "name": { "type": "string", "title": "Name", "readOnly": true } }, "type": "object", "required": [ "tags", "is_unknown_skill", "name" ], "title": "SkillComponent", "description": "Represents a grouped skill component.\n\nAttributes:\n - skill: The associated DisplayedTerm (if found).\n - tags: A list of Tag objects grouped for this skill.\n - entity: A dictionary containing additional merged entity data." }, "SkillGenAIImpactSchema": { "properties": { "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "skill_class": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Skill Class" }, "genai_impact": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Genai Impact" }, "importance": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Importance" } }, "additionalProperties": true, "type": "object", "required": [ "name", "skill_class", "genai_impact", "importance" ], "title": "SkillGenAIImpactSchema" }, "SkillSource": { "type": "string", "enum": [ "company", "enrichment" ], "title": "SkillSource" }, "Status": { "type": "string", "enum": [ "Active", "Inactive", "Draft" ], "title": "Status", "description": "a class represents the status" }, "Tag": { "properties": { "name": { "type": "string", "title": "Name" }, "language": { "type": "string", "title": "Language" } }, "additionalProperties": true, "type": "object", "required": [ "name", "language" ], "title": "Tag", "description": "Represents a tag with basic attributes.\n\nThe model accepts extra entity data beyond the defined fields, allowing for the inclusion of\nadditional metadata without a strict format requirement." }, "TaskAPI": { "properties": { "id": { "type": "string", "title": "Id" }, "text": { "type": "string", "title": "Text" }, "language": { "type": "string", "title": "Language", "default": "en" }, "source": { "$ref": "#/$defs/TaskSource", "default": "company" }, "importance": { "anyOf": [ { "$ref": "#/$defs/ImportanceEnum" }, { "type": "null" } ] }, "fte": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Fte" } }, "type": "object", "required": [ "id", "text" ], "title": "TaskAPI" }, "TaskSource": { "type": "string", "enum": [ "company", "enrichment" ], "title": "TaskSource" } } }