AI Hub Main API — HTTP reference¶
Generated from FastAPI OpenAPI and versioned with the source code. Edit routes, Pydantic schemas and their examples, then run python -m scripts.update_http_reference to update this page.
AI Hub Main API on this instance: Swagger · ReDoc · Live OpenAPI JSON
Paths below include the application mount. Add your deployment prefix when calling them. Live Swagger/ReDoc includes deployment-specific defaults; this static snapshot uses source defaults and never reads tenant databases.
52 HTTP operations. WebSocket and MCP transports are documented separately. Metrics and framework routes excluded from OpenAPI are not HTTP contract entries.
Use the Live OpenAPI JSON link above for the complete schema served by this application.
Operations¶
| Method | Mounted path | Summary |
|---|---|---|
| GET | /api/v1/admin/get_job |
Get Job |
| GET | /api/v1/admin/get_opportunity |
Get Opportunity |
| GET | /api/v1/admin/get_user |
Get User |
| POST | /api/v1/development-objectives/suggestions |
Suggest personalized development objectives |
| POST | /api/v1/feedback/process |
Process matching feedback |
| POST | /api/v1/get_training_matching |
Search accessible learning content |
| GET | /api/v1/get_training_matching_rationale |
Explain one suggested learning on demand |
| GET | /api/v1/job/process |
Process One Job Endpoint |
| GET | /api/v1/job/standardize |
Standardize Job Endpoint |
| POST | /api/v1/jom/opportunity/scores |
Get One Offer Scores New |
| POST | /api/v1/jom/rationale |
Generate a JOM rationale |
| POST | /api/v1/jom/stats/matchings/opportunities |
Generate Jom Matchings Stats Opportunities |
| POST | /api/v1/jom/stats/matchings/users |
Generate Jom Matchings Stats Users |
| POST | /api/v1/jom/stats/skill_scores |
Generate Jom Skill Scores Stats |
| POST | /api/v1/jom/user/scores |
Get One Jom User Scores New |
| POST | /api/v1/jpm/galaxy/path |
Generate a Galaxy career path |
| POST | /api/v1/jpm/galaxy/rationale |
Explain a Galaxy career path |
| POST | /api/v1/jpm/rationale |
Explain the relevance of a job for an employee |
| POST | /api/v1/jpm/stats/compare_v1_v2_matchings |
Compare V1 V2 Matchings |
| POST | /api/v1/jpm/stats/matchings |
Generate Jpm Matchings Stats |
| POST | /api/v1/jpm/stats/skill_scores |
Generate Jpm Skill Scores Stats |
| POST | /api/v1/jpm/user/scores |
Get One Jpm User Scores New |
| GET | /api/v1/opportunity/process |
Process One Opportunity Endpoint |
| GET | /api/v1/opportunity/standardize |
Standardize Opportunity Endpoint |
| POST | /api/v1/performance-goals/key-results/suggestions |
Suggest measurable key results for a performance goal |
| POST | /api/v1/performance-goals/suggestions |
Suggest SMART performance goals for an employee |
| GET | /api/v1/skill/standardize |
Standardize Skill Endpoint |
| POST | /api/v1/skills-library/skills_single |
Skills Single New |
| POST | /api/v1/talent-intelligence/compute_cosine_score |
Compute Cosine Score |
| POST | /api/v1/talent-intelligence/cv/parse |
Parse a CV |
| POST | /api/v1/talent-intelligence/experience |
Ontology Experience Web New |
| POST | /api/v1/talent-intelligence/prompt_engine |
Prompt Engine |
| POST | /api/v1/talent-intelligence/talent-marketplace/filters |
Prefill supplied Talent Marketplace filters from natural language |
| GET | /api/v1/training/standardize |
Standardize Training Endpoint |
| GET | /api/v1/user/process |
Process One User Endpoint |
| GET | /api/v1/user/standardize |
Standardize User Endpoint |
| GET | /health-check |
Health Check Main |
| GET | /jom/admin/get_number_of_active_opportunities |
Get Number Of Active Opportunities |
| GET | /jom/admin/get_number_of_active_users |
Get Number Of Active Users |
| POST | /jom/admin/get_one_offer_scores |
Get One Offer Scores |
| POST | /jom/admin/get_one_user_scores |
Get One Jom User Scores |
| GET | /jom/admin/get_user |
Get User |
| POST | /jom/admin/talent_match_insights_by_id |
Talent Match Insights By Id |
| GET | /jom/health-check |
Health Check Main |
| POST | /jpm/admin/get_one_user_scores |
Get One Jpm User Scores |
| POST | /skills-library/skills_single |
Skills Single |
| POST | /talent-intelligence/experience |
Ontology Experience Web |
| POST | /v1/ai/jobOfferGenerator |
Get a job description |
| POST | /v1/ai/talentMatchInsights |
Generate explanation of matching between user's CV and a job offer. |
| POST | /v1/ai/talentMatchInsightsById |
Generate explanation of matching between a user ID and a job offer ID. |
| GET | /v1/scores/jobOffer/{jobOfferId} |
Top 100 users by job offer. |
| GET | /v1/scores/user/{userId} |
Top 100 job offers by user. |
GET /api/v1/admin/get_job¶
Get Job
Database compatibility: MongoDB + PostgreSQL.
Retrieve jobs, optionally filtered by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "job_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Job Id"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/MongoDocument"
},
"title": "Response Get Job Api V1 Admin Get Job Get",
"type": "array"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "get_job_api_v1_admin_get_job_get",
"tags": [
"Jobs"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/admin/get_opportunity¶
Get Opportunity
Database compatibility: MongoDB + PostgreSQL.
Retrieve opportunities, optionally filtered by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "opportunity_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Opportunity Id"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/MongoDocument"
},
"title": "Response Get Opportunity Api V1 Admin Get Opportunity Get",
"type": "array"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "get_opportunity_api_v1_admin_get_opportunity_get",
"tags": [
"Opportunities"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/admin/get_user¶
Get User
Database compatibility: MongoDB + PostgreSQL.
Retrieve users, optionally filtered by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "user_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "User Id"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/MongoDocument"
},
"title": "Response Get User Api V1 Admin Get User Get",
"type": "array"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "get_user_api_v1_admin_get_user_get",
"tags": [
"Users"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/development-objectives/suggestions¶
Suggest personalized development objectives
Database compatibility: MongoDB + PostgreSQL.
Suggest development objectives for a user.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DevelopmentObjectiveSuggestionsInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/DevelopmentObjectiveSuggestionsInput.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/DevelopmentObjectiveSuggestion"
},
"title": "Response Suggest Development Objectives Api V1 Development Objectives Suggestions Post",
"type": "array"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/DevelopmentObjectiveSuggestion, components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "suggest_development_objectives_api_v1_development_objectives_suggestions_post",
"tags": [
"Training Matching"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/feedback/process¶
Process matching feedback
Database compatibility: MongoDB only.
Process feedback about a JOM recommendation.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"1000"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"description": "Archive the raw feedback in Datalake.",
"in": "query",
"name": "call_from_consumer",
"required": false,
"schema": {
"default": false,
"description": "Archive the raw feedback in Datalake.",
"examples": [
false
],
"title": "Call From Consumer",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"application/json": {
"example": {
"entityId": "503",
"feedBackFlag": "Positive",
"userId": "101"
},
"schema": {
"additionalProperties": true,
"title": "Feedback",
"type": "object"
}
}
},
"required": true
}
Responses¶
{
"200": {
"content": {
"application/json": {
"example": {
"message": "success, but no score to save"
},
"schema": {}
}
},
"description": "Feedback processed; no matching scores needed saving."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "feedback_endpoint_api_v1_feedback_process_post",
"tags": [
"Matching Operations"
],
"x-database-compatibility": "MongoDB only"
}
POST /api/v1/get_training_matching¶
Search accessible learning content
Database compatibility: MongoDB + PostgreSQL.
Retrieve ranked training matches for a user.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TrainingSearchInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/TrainingSearchInput.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"type": "string"
},
"title": "Response Get Training Matching Api V1 Get Training Matching Post",
"type": "array"
}
}
},
"description": "Successful Response"
},
"400": {
"description": "User is deactivated"
},
"403": {
"description": "Missing or invalid API key"
},
"404": {
"description": "User or tenant database not found"
},
"422": {
"description": "Invalid training search request"
},
"500": {
"description": "Training search failed"
}
}
Operation metadata¶
{
"operationId": "get_training_matching_api_v1_get_training_matching_post",
"tags": [
"Training Matching"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/get_training_matching_rationale¶
Explain one suggested learning on demand
Database compatibility: MongoDB + PostgreSQL.
Explain one learning against the optional search or the existing user profile.
Generates text only; does not search again, recompute scores or persist a rationale.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"examples": [
"user-123"
],
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "training_id",
"required": true,
"schema": {
"examples": [
"training-456"
],
"title": "Training Id",
"type": "string"
}
},
{
"description": "BCP 47 locale used for the generated rationale; defaults to English",
"in": "query",
"name": "locale",
"required": false,
"schema": {
"default": "en",
"description": "BCP 47 locale used for the generated rationale; defaults to English",
"examples": [
"en",
"fr-CA"
],
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$",
"title": "Locale",
"type": "string"
}
},
{
"description": "Optional user search request. Nonblank text produces a search-based rationale in 1-2 sentences; omitted, empty or whitespace-only text keeps the profile-based rationale of 80-120 characters.",
"in": "query",
"name": "search_query",
"required": false,
"schema": {
"anyOf": [
{
"maxLength": 4000,
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional user search request. Nonblank text produces a search-based rationale in 1-2 sentences; omitted, empty or whitespace-only text keeps the profile-based rationale of 80-120 characters.",
"examples": [
"Find beginner SQL learnings covering SELECT queries"
],
"title": "Search Query"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"examples": {
"missing_training": {
"value": "Training not found"
},
"missing_user": {
"value": "User not found"
},
"profile": {
"summary": "Profile-based rationale",
"value": "This SQL learning addresses your documented skill gap and supports practical relational data analysis."
},
"search": {
"summary": "Search-based rationale",
"value": "This introductory learning covers SELECT queries, matching your request to start learning SQL."
}
},
"schema": {}
}
},
"description": "A localized rationale for one user and learning, or the existing not-found message."
},
"422": {
"description": "Invalid locale, search query length or unsafe text controls."
}
}
Operation metadata¶
{
"operationId": "get_training_matching_rationale_api_v1_get_training_matching_rationale_get",
"tags": [
"Training Matching"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/job/process¶
Process One Job Endpoint
Database compatibility: MongoDB + PostgreSQL.
Compute JPM matches for one job.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "job_id",
"required": true,
"schema": {
"title": "Job Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "process_one_job_endpoint_api_v1_job_process_get",
"tags": [
"Matching Operations"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/job/standardize¶
Standardize Job Endpoint
Database compatibility: MongoDB only.
Standardize a job by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "job_id",
"required": true,
"schema": {
"title": "Job Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MongoDocument"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "standardize_job_endpoint_api_v1_job_standardize_get",
"tags": [
"Jobs"
],
"x-database-compatibility": "MongoDB only"
}
POST /api/v1/jom/opportunity/scores¶
Get One Offer Scores New
Database compatibility: MongoDB + PostgreSQL.
Retrieve opportunity scores from the current scoring model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "opportunity_id",
"required": true,
"schema": {
"title": "Opportunity Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "",
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": true,
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "save_scores",
"required": false,
"schema": {
"default": true,
"title": "Save Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "send_scores",
"required": false,
"schema": {
"default": true,
"title": "Send Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_one_offer_scores_new_api_v1_jom_opportunity_scores_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jom/rationale¶
Generate a JOM rationale
Database compatibility: MongoDB + PostgreSQL.
Explain one existing user/opportunity pair using profile and stored JOM evidence.
All inputs are query parameters; no JSON request body is expected. Omit insight_type to combine skills and motivation. The rationale does not recompute or persist matching scores. Use real tenant and entity identifiers.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"examples": [
"user-123"
],
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "offer_id",
"required": true,
"schema": {
"examples": [
"opportunity-456"
],
"title": "Offer Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"72"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "lang",
"required": false,
"schema": {
"default": "en",
"examples": [
"en",
"fr-CA"
],
"title": "Lang",
"type": "string"
}
},
{
"description": "Optional rationale focus. When omitted, the rationale combines skills and motivation.",
"in": "query",
"name": "insight_type",
"required": false,
"schema": {
"anyOf": [
{
"$ref": "#/components/schemas/TalentMatchInsightType"
},
{
"type": "null"
}
],
"description": "Optional rationale focus. When omitted, the rationale combines skills and motivation.",
"examples": [
"skills",
"motivation"
],
"title": "Insight Type"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Referenced definitions: components/schemas/TalentMatchInsightType.
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"example": "Your SQL skills align with this data analysis opportunity. Confirm the expected reporting experience before applying.",
"schema": {
"maxLength": 300,
"type": "string"
}
}
},
"description": "A localized rationale returned as a JSON string, at most 300 characters."
},
"400": {
"description": "The requested environment differs from this deployment."
},
"403": {
"description": "Missing or invalid API key."
},
"404": {
"description": "Unknown tenant database, user or opportunity."
},
"422": {
"description": "Missing required parameters or invalid query values."
},
"502": {
"description": "The model returned no content after two attempts."
}
}
Operation metadata¶
{
"operationId": "talent_match_insights_by_id_api_v1_jom_rationale_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jom/stats/matchings/opportunities¶
Generate Jom Matchings Stats Opportunities
Database compatibility: MongoDB + PostgreSQL.
Generate opportunity-side JOM matching statistics.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"123"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"examples": [
100
],
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"overallScore"
],
"title": "Order"
}
},
{
"in": "query",
"name": "add_extra_infos",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Add Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "use_opportunity_code",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Use Opportunity Code",
"type": "boolean"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "mail_destination",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"reports@example.com"
],
"title": "Mail Destination"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_generate_jom_matchings_stats_opportunities_api_v1_jom_stats_matchings_opportunities_post"
}
}
}
}
Referenced definitions: components/schemas/Body_generate_jom_matchings_stats_opportunities_api_v1_jom_stats_matchings_opportunities_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Binary XLSX workbook containing opportunity-side JOM scores. PostgreSQL exports stored scores without recomputation, enrichment or email delivery. The attachment filename is illustrative.",
"headers": {
"Content-Disposition": {
"example": "attachment; filename=JOM_123_integration_opportunity_side_scores_20260922.xlsx",
"schema": {
"type": "string"
}
}
}
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "generate_jom_matchings_stats_opportunities_api_v1_jom_stats_matchings_opportunities_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jom/stats/matchings/users¶
Generate Jom Matchings Stats Users
Database compatibility: MongoDB + PostgreSQL.
Generate user-side JOM matching statistics.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"123"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"examples": [
100
],
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"overallScore"
],
"title": "Order"
}
},
{
"in": "query",
"name": "add_extra_infos",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Add Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "use_mail_for_extra_infos",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Use Mail For Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "need_talent_match_insights",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Need Talent Match Insights",
"type": "boolean"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "mail_destination",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"reports@example.com"
],
"title": "Mail Destination"
}
},
{
"in": "query",
"name": "sftp_path",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"/exports/matching"
],
"title": "Sftp Path"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_generate_jom_matchings_stats_users_api_v1_jom_stats_matchings_users_post"
}
}
}
}
Referenced definitions: components/schemas/Body_generate_jom_matchings_stats_users_api_v1_jom_stats_matchings_users_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Binary XLSX workbook containing user-side JOM scores. PostgreSQL exports stored scores without recomputation, enrichment, email or SFTP delivery. MongoDB SFTP delivery returns JSON null. The attachment filename is illustrative.",
"headers": {
"Content-Disposition": {
"example": "attachment; filename=JOM_123_integration_user_side_scores_20260922.xlsx",
"schema": {
"type": "string"
}
}
}
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "generate_jom_matchings_stats_users_api_v1_jom_stats_matchings_users_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jom/stats/skill_scores¶
Generate Jom Skill Scores Stats
Database compatibility: MongoDB + PostgreSQL.
Generate JOM skill-score statistics.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"examples": [
"user-123"
],
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "opportunity_id",
"required": true,
"schema": {
"examples": [
"offer-456"
],
"title": "Opportunity Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"123"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Binary XLSX workbook containing the detailed skill-pair calculation in MongoDB mode, or the stored matching score in PostgreSQL mode. Supply real tenant, user and opportunity IDs; the attachment filename is illustrative.",
"headers": {
"Content-Disposition": {
"example": "attachment; filename=JOM_123_integration_user_user-123_opportunity_offer-456_20260922.xlsx",
"schema": {
"type": "string"
}
}
}
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "generate_jom_skill_scores_stats_api_v1_jom_stats_skill_scores_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jom/user/scores¶
Get One Jom User Scores New
Database compatibility: MongoDB + PostgreSQL.
Retrieve JOM user scores from the current scoring model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "",
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "save_scores",
"required": false,
"schema": {
"default": false,
"title": "Save Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "send_scores",
"required": false,
"schema": {
"default": false,
"title": "Send Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_one_jom_user_scores_new_api_v1_jom_user_scores_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jpm/galaxy/path¶
Generate a Galaxy career path
Database compatibility: MongoDB + PostgreSQL.
Suggest a validated career path from an employee's current job to a target.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GalaxyRequest"
}
}
},
"required": true
}
Referenced definitions: components/schemas/GalaxyRequest.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GalaxyPathResponse"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/GalaxyPathResponse, components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "galaxy_path_api_v1_jpm_galaxy_path_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jpm/galaxy/rationale¶
Explain a Galaxy career path
Database compatibility: MongoDB + PostgreSQL.
Explain an existing career path in the employee's locale, in at most 20 words.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GalaxyRationaleRequest"
}
}
},
"required": true
}
Referenced definitions: components/schemas/GalaxyRationaleRequest.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GalaxyRationaleResponse"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/GalaxyRationaleResponse, components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "galaxy_rationale_api_v1_jpm_galaxy_rationale_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jpm/rationale¶
Explain the relevance of a job for an employee
Database compatibility: MongoDB + PostgreSQL.
Explain JPM evidence in two short sentences in the required locale.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/JPMRationaleRequest"
}
}
},
"required": true
}
Referenced definitions: components/schemas/JPMRationaleRequest.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/JPMRationaleResponse"
}
}
},
"description": "Successful Response"
},
"403": {
"content": {
"application/json": {
"example": {
"detail": "Client does not match authenticated context."
}
}
},
"description": "Missing authorization or mismatched client."
},
"404": {
"content": {
"application/json": {
"example": {
"detail": "target_job_not_available"
}
}
},
"description": "Tenant, active employee or available target job not found."
},
"422": {
"content": {
"application/json": {
"example": {
"detail": "jpm_context_too_large"
}
}
},
"description": "Invalid request, stored evidence or oversized context."
},
"500": {
"content": {
"application/json": {
"example": {
"detail": "jpm_generation_failed"
}
}
},
"description": "Unexpected generation failure."
},
"502": {
"content": {
"application/json": {
"example": {
"detail": "invalid_model_rationale"
}
}
},
"description": "Empty, invalid or overlong model rationale."
},
"504": {
"content": {
"application/json": {
"example": {
"detail": "jpm_generation_timed_out"
}
}
},
"description": "Model generation timed out."
}
}
Referenced definitions: components/schemas/JPMRationaleResponse.
Operation metadata¶
{
"operationId": "jpm_rationale_api_v1_jpm_rationale_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jpm/stats/compare_v1_v2_matchings¶
Compare V1 V2 Matchings
Database compatibility: MongoDB only.
Compare legacy and current JPM matchings.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"123"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 10,
"examples": [
10
],
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "add_extra_infos",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Add Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "use_mail_for_extra_infos",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Use Mail For Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "mail_destination",
"required": false,
"schema": {
"examples": [
"reports@example.com"
],
"title": "Mail Destination",
"type": "string"
}
},
{
"in": "query",
"name": "sftp_path",
"required": false,
"schema": {
"examples": [
"/exports/matching"
],
"title": "Sftp Path",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_compare_v1_v2_matchings_api_v1_jpm_stats_compare_v1_v2_matchings_post"
}
}
}
}
Referenced definitions: components/schemas/Body_compare_v1_v2_matchings_api_v1_jpm_stats_compare_v1_v2_matchings_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Binary XLSX workbook comparing legacy and current JPM scores in MongoDB mode. SFTP delivery returns JSON null. The attachment filename is illustrative.",
"headers": {
"Content-Disposition": {
"example": "attachment; filename=JPM_123_integration_scores_20260922.xlsx",
"schema": {
"type": "string"
}
}
}
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "compare_v1_v2_matchings_api_v1_jpm_stats_compare_v1_v2_matchings_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB only"
}
POST /api/v1/jpm/stats/matchings¶
Generate Jpm Matchings Stats
Database compatibility: MongoDB + PostgreSQL.
Generate JPM matching statistics.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"123"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"examples": [
100
],
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"examples": [
"overallScore"
],
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "add_extra_infos",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Add Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "use_mail_for_extra_infos",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Use Mail For Extra Infos",
"type": "boolean"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "mail_destination",
"required": false,
"schema": {
"examples": [
"reports@example.com"
],
"title": "Mail Destination",
"type": "string"
}
},
{
"in": "query",
"name": "sftp_path",
"required": false,
"schema": {
"examples": [
"/exports/matching"
],
"title": "Sftp Path",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_generate_jpm_matchings_stats_api_v1_jpm_stats_matchings_post"
}
}
}
}
Referenced definitions: components/schemas/Body_generate_jpm_matchings_stats_api_v1_jpm_stats_matchings_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Binary XLSX workbook containing JPM scores. PostgreSQL exports stored scores without recomputation, enrichment, email or SFTP delivery. MongoDB SFTP delivery returns JSON null. The attachment filename is illustrative.",
"headers": {
"Content-Disposition": {
"example": "attachment; filename=JPM_123_integration_100_scores_max_20260922.xlsx",
"schema": {
"type": "string"
}
}
}
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "generate_jpm_matchings_stats_api_v1_jpm_stats_matchings_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jpm/stats/skill_scores¶
Generate Jpm Skill Scores Stats
Database compatibility: MongoDB + PostgreSQL.
Generate JPM skill-score statistics.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"examples": [
"user-123"
],
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "job_id",
"required": true,
"schema": {
"examples": [
"job-789"
],
"title": "Job Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"123"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Binary XLSX workbook containing the detailed skill-pair calculation in MongoDB mode, or the stored matching score in PostgreSQL mode. Supply real tenant, user and job IDs; the attachment filename is illustrative.",
"headers": {
"Content-Disposition": {
"example": "attachment; filename=JPM_123_integration_user_user-123_job_job-789_20260922.xlsx",
"schema": {
"type": "string"
}
}
}
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "generate_jpm_skill_scores_stats_api_v1_jpm_stats_skill_scores_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/jpm/user/scores¶
Get One Jpm User Scores New
Database compatibility: MongoDB + PostgreSQL.
Retrieve JPM user scores from the current scoring model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "",
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Limit"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "save_scores",
"required": false,
"schema": {
"default": false,
"title": "Save Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "send_scores",
"required": false,
"schema": {
"default": false,
"title": "Send Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_one_jpm_user_scores_new_api_v1_jpm_user_scores_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/opportunity/process¶
Process One Opportunity Endpoint
Database compatibility: MongoDB + PostgreSQL.
Compute JOM matches for one opportunity.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "opportunity_id",
"required": true,
"schema": {
"title": "Opportunity Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "process_one_opportunity_endpoint_api_v1_opportunity_process_get",
"tags": [
"Matching Operations"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/opportunity/standardize¶
Standardize Opportunity Endpoint
Database compatibility: MongoDB only.
Standardize an opportunity by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "opportunity_id",
"required": true,
"schema": {
"title": "Opportunity Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MongoDocument"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "standardize_opportunity_endpoint_api_v1_opportunity_standardize_get",
"tags": [
"Opportunities"
],
"x-database-compatibility": "MongoDB only"
}
POST /api/v1/performance-goals/key-results/suggestions¶
Suggest measurable key results for a performance goal
Database compatibility: MongoDB + PostgreSQL.
Suggest up to the goal's remaining key result capacity (four per goal).
Existing and deleted key results are excluded. An empty keyResults list
comes with a noSuggestionReason; nothing is ever saved.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/KeyResultSuggestionsRequest"
}
}
},
"required": true
}
Referenced definitions: components/schemas/KeyResultSuggestionsRequest.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/KeyResultSuggestionsResponse"
}
}
},
"description": "Successful Response"
},
"403": {
"content": {
"application/json": {
"example": {
"detail": "Client does not match authenticated context."
}
}
},
"description": "Missing authorization or mismatched client."
},
"404": {
"content": {
"application/json": {
"example": {
"detail": "user_not_found"
}
}
},
"description": "Unknown tenant or inactive employee."
},
"422": {
"content": {
"application/json": {
"example": {
"detail": "key_result_context_too_large"
}
}
},
"description": "Invalid request or oversized generation context."
},
"500": {
"content": {
"application/json": {
"example": {
"detail": "generation_failed"
}
}
},
"description": "Unexpected generation failure."
},
"502": {
"content": {
"application/json": {
"example": {
"detail": "invalid_model_output"
}
}
},
"description": "Empty or invalid model output."
},
"504": {
"content": {
"application/json": {
"example": {
"detail": "generation_timed_out"
}
}
},
"description": "Model generation timed out."
}
}
Referenced definitions: components/schemas/KeyResultSuggestionsResponse.
Operation metadata¶
{
"operationId": "key_result_suggestions_api_v1_performance_goals_key_results_suggestions_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/performance-goals/suggestions¶
Suggest SMART performance goals for an employee
Database compatibility: MongoDB + PostgreSQL.
Suggest goals from the employee profile, excluding existing and refused ones.
Call again with previouslySuggestedTitles to load more suggestions. An
empty goals list comes with a noSuggestionReason. Fill a selected goal
with key results through POST /api/v1/performance-goals/key-results/suggestions.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PerformanceGoalSuggestionsRequest"
}
}
},
"required": true
}
Referenced definitions: components/schemas/PerformanceGoalSuggestionsRequest.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PerformanceGoalSuggestionsResponse"
}
}
},
"description": "Successful Response"
},
"403": {
"content": {
"application/json": {
"example": {
"detail": "Client does not match authenticated context."
}
}
},
"description": "Missing authorization or mismatched client."
},
"404": {
"content": {
"application/json": {
"example": {
"detail": "user_not_found"
}
}
},
"description": "Unknown tenant or inactive employee."
},
"422": {
"content": {
"application/json": {
"example": {
"detail": "period_already_ended"
}
}
},
"description": "Invalid request or oversized generation context."
},
"500": {
"content": {
"application/json": {
"example": {
"detail": "generation_failed"
}
}
},
"description": "Unexpected generation failure."
},
"502": {
"content": {
"application/json": {
"example": {
"detail": "invalid_model_output"
}
}
},
"description": "Empty or invalid model output."
},
"504": {
"content": {
"application/json": {
"example": {
"detail": "generation_timed_out"
}
}
},
"description": "Model generation timed out."
}
}
Referenced definitions: components/schemas/PerformanceGoalSuggestionsResponse.
Operation metadata¶
{
"operationId": "performance_goal_suggestions_api_v1_performance_goals_suggestions_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/skill/standardize¶
Standardize Skill Endpoint
Database compatibility: MongoDB only.
Standardize a skill by identifier and action type.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "skill_id",
"required": true,
"schema": {
"title": "Skill Id",
"type": "integer"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "action_type",
"required": false,
"schema": {
"default": "update",
"title": "Action Type",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "standardize_skill_endpoint_api_v1_skill_standardize_get",
"tags": [
"Skills"
],
"x-database-compatibility": "MongoDB only"
}
POST /api/v1/skills-library/skills_single¶
Skills Single New
Database compatibility: MongoDB + PostgreSQL.
Handle the skills single new API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkillInputSolo"
}
}
},
"required": true
}
Referenced definitions: components/schemas/SkillInputSolo.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "skills_single_new_api_v1_skills_library_skills_single_post",
"tags": [
"Skills"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/talent-intelligence/compute_cosine_score¶
Compute Cosine Score
Database compatibility: MongoDB + PostgreSQL.
Compute cosine score.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "text_1",
"required": true,
"schema": {
"examples": [
"Develop and maintain Python applications"
],
"title": "Text 1",
"type": "string"
}
},
{
"in": "query",
"name": "text_2",
"required": true,
"schema": {
"examples": [
"Build software using Python"
],
"title": "Text 2",
"type": "string"
}
},
{
"in": "query",
"name": "ai_provider",
"required": false,
"schema": {
"default": "azure",
"examples": [
"azure"
],
"title": "Ai Provider",
"type": "string"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"example": 0.86,
"schema": {
"title": "Response Compute Cosine Score Api V1 Talent Intelligence Compute Cosine Score Post",
"type": "number"
}
}
},
"description": "Cosine similarity between the two text embeddings."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "compute_cosine_score_api_v1_talent_intelligence_compute_cosine_score_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/talent-intelligence/cv/parse¶
Parse a CV
Database compatibility: No database.
Parse native OpenAI files or local provider inputs into the same CV contract.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"description": "Optional configured AI provider identifier. Omitted, empty or unknown values use the default LLM provider stored in the database. If no default provider is configured in the database, the built-in default provider is used. The selected provider's mini profile is used.",
"in": "query",
"name": "ai_provider",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional configured AI provider identifier. Omitted, empty or unknown values use the default LLM provider stored in the database. If no default provider is configured in the database, the built-in default provider is used. The selected provider's mini profile is used.",
"examples": [
"ovh",
"openai",
"azure",
"anthropic"
],
"title": "Ai Provider"
}
}
]
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_parse_resume_api_v1_talent_intelligence_cv_parse_post"
}
}
},
"required": true
}
Referenced definitions: components/schemas/Body_parse_resume_api_v1_talent_intelligence_cv_parse_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"examples": {
"complete": {
"summary": "Complete extraction from a readable CV",
"value": {
"certifications": [
"Project Management Professional"
],
"customArea": {
"extraInfo": {
"userExternalId": ""
}
},
"documentHtml": "",
"documentText": "Alex Example\nBorn January 12, 1990\nEngineer at Example Company, 2020-2021\nProject Management Professional",
"educationHistory": {
"courses": [],
"degrees": [],
"educationSection": ""
},
"employmentHistory": [
{
"city": "",
"country": {
"code": "",
"description": ""
},
"description": "",
"endDate": "2021-01-01",
"iSCO2008Code": "",
"iSCO2008Description": "",
"is_current_experience": "0",
"is_latest_experience": "1",
"itemId": "exp_0",
"jobTitle": "Engineer",
"location": "",
"months": "13",
"oNET2019Code": "",
"oNET2019Description": "",
"organization": "Example Company",
"professionClassCode": "",
"professionClassDescription": "",
"professionCode": "",
"professionDescription": "",
"professionGroupCode": "",
"professionGroupDescription": "",
"region": "",
"startDate": "2020-01-01",
"years": "2"
}
],
"file": "candidate.txt",
"lang": "english",
"langCode": "en",
"lastModified": "",
"other": {
"hobbies": [],
"profilePicture": {}
},
"partialExtractionIndicator": "0",
"personal": {
"address": {
"addressLine": "",
"city": "",
"country": {
"code": "",
"description": ""
},
"latitude": "",
"longitude": "",
"number": "",
"postalCode": "",
"region": {
"code": "",
"description": ""
},
"street": "",
"subRegion": {
"code": "",
"description": ""
}
},
"birthDate": "1990-01-12",
"birthPlace": "",
"completeName": "Alex Example",
"driversLicenses": [],
"emails": [],
"firstName": "Alex",
"gender": {
"code": "",
"description": ""
},
"initials": "",
"lastName": "Example",
"middleName": "",
"nationality": {
"code": "",
"description": ""
},
"personalUrls": [],
"phones": [],
"title": ""
},
"skills": {
"computerSkills": [],
"languageSkills": [],
"otherSkills": [],
"softSkills": []
},
"summary": {
"currentEmployer": "",
"currentJob": "",
"currentWorkField": {
"experienceLevelCode": "",
"experienceLevelDescription": "",
"workFieldCode": "",
"workFieldDescription": ""
},
"extraCurricularSection": "",
"highestDegree": {
"endDate": "",
"internationalCode": "",
"internationalDescription": "",
"localCode": "",
"localDescription": ""
},
"summaryAmbitionSection": "",
"totalExperienceMonths": "13",
"totalExperienceYears": "2"
}
}
},
"partial": {
"summary": "Usable employment without a readable candidate name",
"value": {
"certifications": [],
"customArea": {
"extraInfo": {
"userExternalId": ""
}
},
"documentHtml": "",
"documentText": "Engineer at Example Company",
"educationHistory": {
"courses": [],
"degrees": [],
"educationSection": ""
},
"employmentHistory": [
{
"city": "",
"country": {
"code": "",
"description": ""
},
"description": "",
"endDate": "",
"iSCO2008Code": "",
"iSCO2008Description": "",
"is_current_experience": "0",
"is_latest_experience": "0",
"itemId": "exp_0",
"jobTitle": "Engineer",
"location": "",
"months": "",
"oNET2019Code": "",
"oNET2019Description": "",
"organization": "Example Company",
"professionClassCode": "",
"professionClassDescription": "",
"professionCode": "",
"professionDescription": "",
"professionGroupCode": "",
"professionGroupDescription": "",
"region": "",
"startDate": "",
"years": ""
}
],
"file": "candidate.txt",
"lang": "",
"langCode": "",
"lastModified": "",
"other": {
"hobbies": [],
"profilePicture": {}
},
"partialExtractionIndicator": "1",
"personal": {
"address": {
"addressLine": "",
"city": "",
"country": {
"code": "",
"description": ""
},
"latitude": "",
"longitude": "",
"number": "",
"postalCode": "",
"region": {
"code": "",
"description": ""
},
"street": "",
"subRegion": {
"code": "",
"description": ""
}
},
"birthDate": "",
"birthPlace": "",
"completeName": "",
"driversLicenses": [],
"emails": [],
"firstName": "",
"gender": {
"code": "",
"description": ""
},
"initials": "",
"lastName": "",
"middleName": "",
"nationality": {
"code": "",
"description": ""
},
"personalUrls": [],
"phones": [],
"title": ""
},
"skills": {
"computerSkills": [],
"languageSkills": [],
"otherSkills": [],
"softSkills": []
},
"summary": {
"currentEmployer": "",
"currentJob": "",
"currentWorkField": {
"experienceLevelCode": "",
"experienceLevelDescription": "",
"workFieldCode": "",
"workFieldDescription": ""
},
"extraCurricularSection": "",
"highestDegree": {
"endDate": "",
"internationalCode": "",
"internationalDescription": "",
"localCode": "",
"localDescription": ""
},
"summaryAmbitionSection": "",
"totalExperienceMonths": "",
"totalExperienceYears": ""
}
}
}
},
"schema": {
"$ref": "#/components/schemas/ResumeParsingResponse"
}
}
},
"description": "Successful Response"
},
"413": {
"content": {
"application/json": {
"example": {
"detail": "The uploaded CV exceeds document extraction limits."
}
}
},
"description": "The CV exceeds an upload or extraction resource budget."
},
"415": {
"content": {
"application/json": {
"examples": {
"local_provider": {
"value": {
"detail": "Unsupported CV file type. Supported extensions: .bmp, .docx, .gif, .jpeg, .jpg, .md, .pdf, .png, .tif, .tiff, .txt, .webp."
}
},
"openai": {
"value": {
"detail": "Unsupported CV file type. Supported extensions: .doc, .docx, .odt, .pdf, .rtf, .txt."
}
}
}
}
},
"description": "The uploaded CV format is unsupported."
},
"422": {
"content": {
"application/json": {
"examples": {
"invalid": {
"value": {
"detail": "The uploaded file does not match the declared CV format."
}
},
"unreadable": {
"value": {
"detail": "The uploaded CV could not be read reliably."
}
}
}
}
},
"description": "The uploaded CV is invalid, empty or cannot be read reliably."
},
"502": {
"content": {
"application/json": {
"example": {
"detail": "CV parsing service is temporarily unavailable."
}
}
},
"description": "The CV parsing provider is unavailable or returned invalid extraction output."
},
"503": {
"content": {
"application/json": {
"example": {
"detail": "CV extraction is busy. Retry later."
}
}
},
"description": "All local extraction slots and queue positions are occupied."
}
}
Referenced definitions: components/schemas/ResumeParsingResponse.
Operation metadata¶
{
"operationId": "parse_resume_api_v1_talent_intelligence_cv_parse_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "No database"
}
POST /api/v1/talent-intelligence/experience¶
Ontology Experience Web New
Database compatibility: MongoDB + PostgreSQL.
Handle the ontology experience web new API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExperienceInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/ExperienceInput.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "ontology_experience_web_new_api_v1_talent_intelligence_experience_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/talent-intelligence/prompt_engine¶
Prompt Engine
Database compatibility: MongoDB + PostgreSQL.
Handle the prompt engine API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_prompt_engine_api_v1_talent_intelligence_prompt_engine_post"
}
}
},
"required": true
}
Referenced definitions: components/schemas/Body_prompt_engine_api_v1_talent_intelligence_prompt_engine_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"example": {
"message": "The file is processing, you will receive the results by mail once it is finished."
},
"schema": {}
},
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
"description": "Generated workbook containing the requested output columns.",
"schema": {
"format": "binary",
"type": "string"
}
}
},
"description": "An XLSX result download, or confirmation of processing by email."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "prompt_engine_api_v1_talent_intelligence_prompt_engine_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /api/v1/talent-intelligence/talent-marketplace/filters¶
Prefill supplied Talent Marketplace filters from natural language
Database compatibility: MongoDB + PostgreSQL.
Select relevant BO filters, then load and suggest their MariaDB values.
Two LLM calls select filters and then values; only selected catalogues are read. Smart Mobility supplies the displayed filter list and owns end-user permissions. AIHub does not discover filters, search profiles, rank candidates or persist results.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MarketplaceFiltersRequest"
}
}
},
"required": true
}
Referenced definitions: components/schemas/MarketplaceFiltersRequest.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MarketplaceFiltersResponse"
}
}
},
"description": "Successful Response"
},
"403": {
"description": "The requested client differs from the authenticated tenant."
},
"404": {
"description": "The Smart Mobility client is unknown."
},
"413": {
"description": "The complete filter catalogue exceeds the processing budget."
},
"422": {
"description": "Invalid input or unavailable Smart Editor filter."
},
"502": {
"description": "The model returned invalid filter selections."
},
"503": {
"description": "The configured Smart Mobility database is unavailable."
},
"504": {
"description": "Filter interpretation timed out."
}
}
Referenced definitions: components/schemas/MarketplaceFiltersResponse.
Operation metadata¶
{
"operationId": "prefill_marketplace_filters_api_v1_talent_intelligence_talent_marketplace_filters_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/training/standardize¶
Standardize Training Endpoint
Database compatibility: MongoDB only.
Standardize a training by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "training_id",
"required": true,
"schema": {
"title": "Training Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MongoDocument"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "standardize_training_endpoint_api_v1_training_standardize_get",
"tags": [
"Trainings"
],
"x-database-compatibility": "MongoDB only"
}
GET /api/v1/user/process¶
Process One User Endpoint
Database compatibility: MongoDB + PostgreSQL.
Compute the selected JOM and JPM matches for one user.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "jom",
"required": false,
"schema": {
"default": true,
"title": "Jom",
"type": "boolean"
}
},
{
"in": "query",
"name": "jpm",
"required": false,
"schema": {
"default": true,
"title": "Jpm",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "process_one_user_endpoint_api_v1_user_process_get",
"tags": [
"Matching Operations"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /api/v1/user/standardize¶
Standardize User Endpoint
Database compatibility: MongoDB only.
Standardize a user by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MongoDocument"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "standardize_user_endpoint_api_v1_user_standardize_get",
"tags": [
"Users"
],
"x-database-compatibility": "MongoDB only"
}
GET /health-check¶
Health Check Main
Database compatibility: No database.
Return the Main API health status.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"additionalProperties": {
"type": "string"
},
"title": "Response Health Check Main Health Check Get",
"type": "object"
}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "health_check_main_health_check_get",
"tags": [
"Health"
],
"x-database-compatibility": "No database"
}
GET /jom/admin/get_number_of_active_opportunities¶
Get Number Of Active Opportunities
Database compatibility: MongoDB + PostgreSQL.
Return the number of active JOM opportunities.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"additionalProperties": {
"type": "integer"
},
"title": "Response Get Number Of Active Opportunities Jom Admin Get Number Of Active Opportunities Get",
"type": "object"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_number_of_active_opportunities_jom_admin_get_number_of_active_opportunities_get",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /jom/admin/get_number_of_active_users¶
Get Number Of Active Users
Database compatibility: MongoDB + PostgreSQL.
Return the number of active JOM users.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"additionalProperties": {
"type": "integer"
},
"title": "Response Get Number Of Active Users Jom Admin Get Number Of Active Users Get",
"type": "object"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_number_of_active_users_jom_admin_get_number_of_active_users_get",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /jom/admin/get_one_offer_scores¶
Get One Offer Scores
Database compatibility: MongoDB + PostgreSQL.
Retrieve opportunity scores from the legacy scoring model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "offer_id",
"required": true,
"schema": {
"title": "Offer Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "",
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": true,
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "save_scores",
"required": false,
"schema": {
"default": true,
"title": "Save Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "send_scores",
"required": false,
"schema": {
"default": true,
"title": "Send Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_one_offer_scores_jom_admin_get_one_offer_scores_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /jom/admin/get_one_user_scores¶
Get One Jom User Scores
Database compatibility: MongoDB + PostgreSQL.
Retrieve JOM user scores from the legacy scoring model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "",
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "save_scores",
"required": false,
"schema": {
"default": false,
"title": "Save Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "send_scores",
"required": false,
"schema": {
"default": false,
"title": "Send Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_one_jom_user_scores_jom_admin_get_one_user_scores_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /jom/admin/get_user¶
Get User
Database compatibility: MongoDB + PostgreSQL.
Retrieve JOM users, optionally filtered by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "user_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "User Id"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/MongoDocument"
},
"title": "Response Get User Jom Admin Get User Get",
"type": "array"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/MongoDocument.
Operation metadata¶
{
"operationId": "get_user_jom_admin_get_user_get",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /jom/admin/talent_match_insights_by_id¶
Talent Match Insights By Id
Database compatibility: MongoDB + PostgreSQL.
Generate administrator talent-match insights by identifier.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "offer_id",
"required": true,
"schema": {
"title": "Offer Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "lang",
"required": false,
"schema": {
"default": "en",
"title": "Lang",
"type": "string"
}
},
{
"description": "Optional rationale focus. When omitted, the rationale combines skills and motivation.",
"in": "query",
"name": "insight_type",
"required": false,
"schema": {
"anyOf": [
{
"$ref": "#/components/schemas/TalentMatchInsightType"
},
{
"type": "null"
}
],
"description": "Optional rationale focus. When omitted, the rationale combines skills and motivation.",
"examples": [
"skills",
"motivation"
],
"title": "Insight Type"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Referenced definitions: components/schemas/TalentMatchInsightType.
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "talent_match_insights_by_id_jom_admin_talent_match_insights_by_id_post",
"tags": [
"Job Offer Matching (JOM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /jom/health-check¶
Health Check Main
Database compatibility: No database.
Return the JOM health status.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "health_check_main_jom_health_check_get",
"tags": [
"Health"
],
"x-database-compatibility": "No database"
}
POST /jpm/admin/get_one_user_scores¶
Get One Jpm User Scores
Database compatibility: MongoDB + PostgreSQL.
Retrieve JPM user scores from the legacy scoring model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "user_id",
"required": true,
"schema": {
"title": "User Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "",
"title": "Order",
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Limit"
}
},
{
"in": "query",
"name": "recompute_scores",
"required": false,
"schema": {
"default": false,
"title": "Recompute Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "save_scores",
"required": false,
"schema": {
"default": false,
"title": "Save Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "send_scores",
"required": false,
"schema": {
"default": false,
"title": "Send Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_one_jpm_user_scores_jpm_admin_get_one_user_scores_post",
"tags": [
"Job Proximity Matching (JPM)"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /skills-library/skills_single¶
Skills Single
Database compatibility: MongoDB + PostgreSQL.
Handle the skills single API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkillInputSolo"
}
}
},
"required": true
}
Referenced definitions: components/schemas/SkillInputSolo.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "skills_single_skills_library_skills_single_post",
"tags": [
"Skills"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /talent-intelligence/experience¶
Ontology Experience Web
Database compatibility: MongoDB + PostgreSQL.
Handle the ontology experience web API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExperienceInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/ExperienceInput.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "ontology_experience_web_talent_intelligence_experience_post",
"tags": [
"Talent Intelligence"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /v1/ai/jobOfferGenerator¶
Get a job description
Database compatibility: MongoDB only.
By providing information about a job, generate an HTML description using AI.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/JobOfferGeneratorInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/JobOfferGeneratorInput.
Responses¶
{
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/JobOfferGeneratorOutput"
}
}
},
"description": "Successful Response"
},
"400": {
"description": "Invalid input or filter."
},
"404": {
"description": "Requested tenant or entity not found."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"500": {
"description": "Internal server error."
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/JobOfferGeneratorOutput.
Operation metadata¶
{
"operationId": "job_offer_generator_v1_ai_jobOfferGenerator_post",
"tags": [
"PwC JOM Compatibility"
],
"x-database-compatibility": "MongoDB only"
}
POST /v1/ai/talentMatchInsights¶
Generate explanation of matching between user's CV and a job offer.
Database compatibility: MongoDB only.
By providing a job offer and a user's CV as strings, generate a raw text description using AI.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TalentMatchInsightsInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/TalentMatchInsightsInput.
Responses¶
{
"201": {
"content": {
"text/plain": {
"example": "Your Profile aligns with this Opportunity ...",
"schema": {
"minLength": 1,
"type": "string"
}
}
},
"description": "Matching explanation."
},
"400": {
"description": "Invalid input or filter."
},
"404": {
"description": "Requested tenant or entity not found."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"500": {
"description": "Internal server error."
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "talent_match_insights_v1_ai_talentMatchInsights_post",
"tags": [
"PwC JOM Compatibility"
],
"x-database-compatibility": "MongoDB only"
}
POST /v1/ai/talentMatchInsightsById¶
Generate explanation of matching between a user ID and a job offer ID.
Database compatibility: MongoDB only.
By providing a job offer ID and a user ID, generate a raw text description using AI.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TalentMatchInsightsByIdInput"
}
}
},
"required": true
}
Referenced definitions: components/schemas/TalentMatchInsightsByIdInput.
Responses¶
{
"201": {
"content": {
"text/plain": {
"example": "Your Profile aligns with this Opportunity ...",
"schema": {
"minLength": 1,
"type": "string"
}
}
},
"description": "Matching explanation."
},
"400": {
"description": "Invalid input or filter."
},
"404": {
"description": "Requested tenant or entity not found."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"500": {
"description": "Internal server error."
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "talent_match_insights_by_id_v1_ai_talentMatchInsightsById_post",
"tags": [
"PwC JOM Compatibility"
],
"x-database-compatibility": "MongoDB only"
}
GET /v1/scores/jobOffer/{jobOfferId}¶
Top 100 users by job offer.
Database compatibility: MongoDB only.
Handle the scores by job offer API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "path",
"name": "jobOfferId",
"required": true,
"schema": {
"title": "Jobofferid",
"type": "string"
}
},
{
"description": "Department levels, for example departments[4]=Assurance.",
"explode": true,
"in": "query",
"name": "departments",
"required": false,
"schema": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"style": "deepObject"
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "Overall",
"enum": [
"Overall",
"Skill",
"Motivation"
],
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"maximum": 200,
"type": "integer"
}
},
{
"in": "query",
"name": "page",
"required": false,
"schema": {
"default": 0,
"type": "integer"
}
},
{
"description": "Score weights with required skill and motivation members.",
"explode": true,
"in": "query",
"name": "weights",
"required": false,
"schema": {
"properties": {
"motivation": {
"maximum": 100,
"minimum": 0,
"type": "integer"
},
"skill": {
"maximum": 100,
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"style": "deepObject"
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/JobOfferScoreOutput"
},
"title": "Response Scores By Job Offer V1 Scores Joboffer Jobofferid Get",
"type": "array"
}
}
},
"description": "Successful Response"
},
"400": {
"description": "Invalid input or filter."
},
"404": {
"description": "Requested tenant or entity not found."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"500": {
"description": "Internal server error."
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/JobOfferScoreOutput.
Operation metadata¶
{
"operationId": "scores_by_job_offer_v1_scores_jobOffer__jobOfferId__get",
"tags": [
"PwC JOM Compatibility"
],
"x-database-compatibility": "MongoDB only"
}
GET /v1/scores/user/{userId}¶
Top 100 job offers by user.
Database compatibility: MongoDB only.
Handle the scores by user API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "path",
"name": "userId",
"required": true,
"schema": {
"title": "Userid",
"type": "string"
}
},
{
"description": "Department levels, for example departments[4]=Assurance.",
"explode": true,
"in": "query",
"name": "departments",
"required": false,
"schema": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"style": "deepObject"
},
{
"in": "query",
"name": "order",
"required": false,
"schema": {
"default": "Overall",
"enum": [
"Overall",
"Skill",
"Motivation"
],
"type": "string"
}
},
{
"in": "query",
"name": "limit",
"required": false,
"schema": {
"default": 100,
"maximum": 200,
"type": "integer"
}
},
{
"in": "query",
"name": "page",
"required": false,
"schema": {
"default": 0,
"type": "integer"
}
},
{
"description": "Score weights with required skill and motivation members.",
"explode": true,
"in": "query",
"name": "weights",
"required": false,
"schema": {
"properties": {
"motivation": {
"maximum": 100,
"minimum": 0,
"type": "integer"
},
"skill": {
"maximum": 100,
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"style": "deepObject"
},
{
"in": "query",
"name": "businessPriority",
"required": false,
"schema": {
"type": "integer"
}
},
{
"description": "Repeated job-offer types: 1 for mission, 2 for volunteering.",
"explode": true,
"in": "query",
"name": "type[]",
"required": false,
"schema": {
"items": {
"enum": [
1,
2
],
"type": "integer"
},
"type": "array"
},
"style": "form"
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"items": {
"$ref": "#/components/schemas/UserScoreOutput"
},
"title": "Response Scores By User V1 Scores User Userid Get",
"type": "array"
}
}
},
"description": "Successful Response"
},
"400": {
"description": "Invalid input or filter."
},
"404": {
"description": "Requested tenant or entity not found."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"500": {
"description": "Internal server error."
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/UserScoreOutput.
Operation metadata¶
{
"operationId": "scores_by_user_v1_scores_user__userId__get",
"tags": [
"PwC JOM Compatibility"
],
"x-database-compatibility": "MongoDB only"
}
Shared definitions¶
Body_compare_v1_v2_matchings_api_v1_jpm_stats_compare_v1_v2_matchings_post (schemas)¶
{
"properties": {
"user_matricules_or_ids_or_mails_file": {
"contentMediaType": "application/octet-stream",
"description": "Optional XLSX workbook with one column of tenant user IDs, employee numbers or email addresses, without a header.",
"title": "User Matricules Or Ids Or Mails File",
"type": "string"
}
},
"title": "Body_compare_v1_v2_matchings_api_v1_jpm_stats_compare_v1_v2_matchings_post",
"type": "object"
}
Body_generate_jom_matchings_stats_opportunities_api_v1_jom_stats_matchings_opportunities_post (schemas)¶
{
"properties": {
"opportunity_ids_file": {
"anyOf": [
{
"contentMediaType": "application/octet-stream",
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional XLSX workbook with one column of tenant opportunity IDs or codes, without a header.",
"title": "Opportunity Ids File"
}
},
"title": "Body_generate_jom_matchings_stats_opportunities_api_v1_jom_stats_matchings_opportunities_post",
"type": "object"
}
Body_generate_jom_matchings_stats_users_api_v1_jom_stats_matchings_users_post (schemas)¶
{
"properties": {
"user_matricules_or_ids_or_mails_file": {
"anyOf": [
{
"contentMediaType": "application/octet-stream",
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional XLSX workbook with one column of tenant user IDs, employee numbers or email addresses, without a header.",
"title": "User Matricules Or Ids Or Mails File"
}
},
"title": "Body_generate_jom_matchings_stats_users_api_v1_jom_stats_matchings_users_post",
"type": "object"
}
Body_generate_jpm_matchings_stats_api_v1_jpm_stats_matchings_post (schemas)¶
{
"properties": {
"user_matricules_or_ids_or_mails_file": {
"contentMediaType": "application/octet-stream",
"description": "Optional XLSX workbook with one column of tenant user IDs, employee numbers or email addresses, without a header.",
"title": "User Matricules Or Ids Or Mails File",
"type": "string"
}
},
"title": "Body_generate_jpm_matchings_stats_api_v1_jpm_stats_matchings_post",
"type": "object"
}
Body_parse_resume_api_v1_talent_intelligence_cv_parse_post (schemas)¶
{
"properties": {
"file": {
"contentMediaType": "application/octet-stream",
"description": "Upload a real CV, for example candidate.pdf. OpenAI accepts PDF, DOC, DOCX, ODT, RTF and TXT files through native file input. OVH and other providers accept PDF, DOCX, TXT, MD and supported raster images through local extraction. Supply the file bytes as multipart/form-data; a filename alone is not an upload.",
"title": "File",
"type": "string"
}
},
"required": [
"file"
],
"title": "Body_parse_resume_api_v1_talent_intelligence_cv_parse_post",
"type": "object"
}
Body_prompt_engine_api_v1_talent_intelligence_prompt_engine_post (schemas)¶
{
"properties": {
"ai_provider": {
"default": "azure",
"description": "AI provider ('azure', 'openai', 'ovh' or 'anthropic')",
"examples": [
"azure"
],
"title": "Ai Provider",
"type": "string"
},
"cols": {
"description": "Columns with relevant data",
"examples": [
[
"job_title",
"description"
]
],
"items": {
"type": "string"
},
"title": "Cols",
"type": "array"
},
"data": {
"contentMediaType": "application/octet-stream",
"description": "File to upload",
"title": "Data",
"type": "string"
},
"email": {
"description": "Email address to receive result",
"examples": [
"analyst@example.com"
],
"title": "Email",
"type": "string"
},
"groupby": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Column to group by",
"examples": [
"job_title"
],
"title": "Groupby"
},
"industry": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Industry of data",
"examples": [
"Technology"
],
"title": "Industry"
},
"language": {
"default": "en",
"description": "Language",
"examples": [
"en"
],
"title": "Language",
"type": "string"
},
"model_profile": {
"default": "default",
"description": "Semantic LLM profile resolved from the selected provider configuration.",
"enum": [
"default",
"tiny",
"mini",
"large",
"reasoning"
],
"examples": [
"default",
"large"
],
"title": "Model Profile",
"type": "string"
},
"prompt": {
"description": "Prompt",
"examples": [
"Summarize the responsibilities of this job in one sentence."
],
"title": "Prompt",
"type": "string"
},
"returncols": {
"description": "Columns to return",
"examples": [
[
"job_title",
"summary"
]
],
"items": {
"type": "string"
},
"title": "Returncols",
"type": "array"
},
"subject": {
"default": "Prompt Engine",
"description": "Email subject line",
"examples": [
"Job summary results"
],
"title": "Subject",
"type": "string"
}
},
"required": [
"data",
"cols",
"returncols",
"prompt",
"email"
],
"title": "Body_prompt_engine_api_v1_talent_intelligence_prompt_engine_post",
"type": "object"
}
ChoiceSelection (schemas)¶
{
"additionalProperties": false,
"description": "Select exact native values from a server-loaded catalogue.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
]
},
"key": {
"$ref": "#/components/schemas/FilterKey"
},
"kind": {
"const": "choice",
"title": "Kind",
"type": "string"
},
"values": {
"items": {
"$ref": "#/components/schemas/FilterValue"
},
"maxItems": 100,
"minItems": 1,
"title": "Values",
"type": "array"
}
},
"required": [
"key",
"company_entity_id",
"kind",
"values"
],
"title": "ChoiceSelection",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/FilterValue, components/schemas/PositiveId.
DateRangeSelection (schemas)¶
{
"additionalProperties": false,
"description": "Set ISO dates for a Smart Editor date interval.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
]
},
"end": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "End"
},
"key": {
"$ref": "#/components/schemas/FilterKey"
},
"kind": {
"const": "date_range",
"title": "Kind",
"type": "string"
},
"start": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Start"
}
},
"required": [
"key",
"company_entity_id",
"kind",
"start",
"end"
],
"title": "DateRangeSelection",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/PositiveId.
DevelopmentObjectiveSkill (schemas)¶
{
"additionalProperties": false,
"description": "Validate and serialize development objective skill data.",
"properties": {
"skillId": {
"title": "Skillid",
"type": "string"
},
"skillTitle": {
"title": "Skilltitle",
"type": "string"
}
},
"required": [
"skillId",
"skillTitle"
],
"title": "DevelopmentObjectiveSkill",
"type": "object"
}
DevelopmentObjectiveSuggestion (schemas)¶
{
"additionalProperties": false,
"description": "Validate and serialize development objective suggestion data.",
"properties": {
"actionSuggestions": {
"items": {
"type": "string"
},
"maxItems": 3,
"title": "Actionsuggestions",
"type": "array"
},
"description": {
"title": "Description",
"type": "string"
},
"rationale": {
"title": "Rationale",
"type": "string"
},
"skills": {
"items": {
"$ref": "#/components/schemas/DevelopmentObjectiveSkill"
},
"maxItems": 3,
"title": "Skills",
"type": "array"
},
"title": {
"title": "Title",
"type": "string"
},
"trainingSuggestions": {
"items": {
"type": "string"
},
"title": "Trainingsuggestions",
"type": "array"
}
},
"required": [
"title",
"description",
"rationale"
],
"title": "DevelopmentObjectiveSuggestion",
"type": "object"
}
Referenced definitions: components/schemas/DevelopmentObjectiveSkill.
DevelopmentObjectiveSuggestionsInput (schemas)¶
{
"additionalProperties": false,
"description": "Validate and serialize development objective suggestions input data.",
"examples": [
{
"existingDevelopmentObjectiveTitles": [
"Improve presentation skills"
],
"limit": 3,
"locale": "en",
"trainingIds": [
"701",
"702"
],
"userId": "101"
}
],
"properties": {
"existingDevelopmentObjectiveTitles": {
"anyOf": [
{
"items": {
"type": "string"
},
"maxItems": 100,
"type": "array"
},
{
"type": "null"
}
],
"description": "Titles of existing development objectives to exclude",
"title": "Existingdevelopmentobjectivetitles"
},
"limit": {
"default": 3,
"description": "Maximum number of development objectives to return",
"minimum": 1.0,
"title": "Limit",
"type": "integer"
},
"locale": {
"default": "en",
"description": "BCP 47 locale used for the generated response",
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$",
"title": "Locale",
"type": "string"
},
"trainingIds": {
"anyOf": [
{
"items": {
"type": "string"
},
"maxItems": 100,
"type": "array"
},
{
"type": "null"
}
],
"description": "Training identifiers used to guide objective suggestions",
"title": "Trainingids"
},
"userId": {
"description": "User identifier",
"minLength": 1,
"title": "Userid",
"type": "string"
}
},
"required": [
"userId"
],
"title": "DevelopmentObjectiveSuggestionsInput",
"type": "object"
}
DiplomaReferentielInput (schemas)¶
{
"description": "Validate and serialize diploma referentiel input data.",
"properties": {
"title": {
"default": "Bachelor computer science",
"title": "Title",
"type": "string"
}
},
"title": "DiplomaReferentielInput",
"type": "object"
}
ExperienceInput (schemas)¶
{
"description": "Validate and serialize experience input data.",
"examples": [
{
"clientId": "42",
"diplomas": [
{
"title": "Bachelor of Computer Science"
}
],
"interests": [
{
"title": "Machine learning"
}
],
"jobs": [
{
"description": "Analyze sales data with Python and present insights to business teams.",
"endDate": "2025-12-31",
"startDate": "2022-01-01",
"title": "Data analyst"
}
],
"language": "en",
"languages_ret": [
"en"
],
"maxSkills": 10
}
],
"properties": {
"aiProvider": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Aiprovider"
},
"bulk": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": false,
"title": "Bulk"
},
"clientId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Clientid"
},
"collection": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Collection"
},
"diplomas": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/DiplomaReferentielInput"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Diplomas"
},
"ignoredSkills": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Ignoredskills"
},
"interests": {
"anyOf": [
{
"items": {
"$ref": "#/components/schemas/InterestReferentielInput"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Interests"
},
"jobs": {
"items": {
"$ref": "#/components/schemas/JobReferentielInput"
},
"title": "Jobs",
"type": "array"
},
"language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": "en",
"title": "Language"
},
"languages_ret": {
"items": {
"type": "string"
},
"title": "Languages Ret",
"type": "array"
},
"maxSkills": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": 10,
"title": "Maxskills"
},
"referentielIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Referentielids"
},
"referentielIdsPrio": {
"anyOf": [
{
"type": "integer"
},
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Referentielidsprio"
},
"threshold": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Threshold"
},
"userSkills": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Userskills"
}
},
"title": "ExperienceInput",
"type": "object"
}
Referenced definitions: components/schemas/DiplomaReferentielInput, components/schemas/InterestReferentielInput, components/schemas/JobReferentielInput.
FilledFilter (schemas)¶
{
"anyOf": [
{
"$ref": "#/components/schemas/ChoiceSelection"
},
{
"$ref": "#/components/schemas/TextSelection"
},
{
"$ref": "#/components/schemas/NumberSelection"
},
{
"$ref": "#/components/schemas/RangeSelection"
},
{
"$ref": "#/components/schemas/DateRangeSelection"
},
{
"$ref": "#/components/schemas/SkillsSelection"
}
]
}
Referenced definitions: components/schemas/ChoiceSelection, components/schemas/DateRangeSelection, components/schemas/NumberSelection, components/schemas/RangeSelection, components/schemas/SkillsSelection, components/schemas/TextSelection.
FilterKey (schemas)¶
{
"enum": [
"searchc",
"gender",
"age_min",
"age_max",
"nationality",
"domain",
"country",
"city",
"direction",
"mission",
"search_diplome",
"search_school",
"contract",
"job_family",
"seniority_min",
"seniority_max",
"job_titles",
"langue",
"skills_exclusion",
"internal_mobility",
"job",
"job_offer",
"company_entity",
"high_potential[enabled]",
"high_potential[index][view_height]",
"high_potential[index][adaptability]",
"high_potential[index][relational_ability]",
"high_potential[index][self_supporting]",
"high_potential[index][collective_interest]"
],
"type": "string"
}
FilterValue (schemas)¶
GalaxyPathResponse (schemas)¶
{
"description": "Return a validated path or an explicit business absence reason.",
"properties": {
"description": {
"default": "",
"title": "Description",
"type": "string"
},
"path": {
"items": {
"$ref": "#/components/schemas/PathJob"
},
"title": "Path",
"type": "array"
},
"reason": {
"anyOf": [
{
"enum": [
"same_job",
"missing_target_score",
"no_valid_path"
],
"type": "string"
},
{
"type": "null"
}
],
"title": "Reason"
},
"steps": {
"items": {
"$ref": "#/components/schemas/PathStep"
},
"title": "Steps",
"type": "array"
}
},
"title": "GalaxyPathResponse",
"type": "object"
}
Referenced definitions: components/schemas/PathJob, components/schemas/PathStep.
GalaxyRationaleRequest (schemas)¶
{
"additionalProperties": false,
"description": "Explain an existing ordered path, including its source and target.",
"examples": [
{
"client_id": "42",
"data_source": "smartmobility",
"locale": "en-US",
"path_job_ids": [
"501",
"502",
"503"
],
"target_job_id": "503",
"user_id": "101"
}
],
"properties": {
"client_id": {
"examples": [
"42"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Client Id",
"type": "string"
},
"data_source": {
"const": "smartmobility",
"default": "smartmobility",
"title": "Data Source",
"type": "string"
},
"locale": {
"anyOf": [
{
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"en-US"
],
"title": "Locale"
},
"path_job_ids": {
"examples": [
[
"501",
"502",
"503"
]
],
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"type": "string"
},
"maxItems": 4,
"minItems": 2,
"title": "Path Job Ids",
"type": "array"
},
"target_job_id": {
"examples": [
"503"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Target Job Id",
"type": "string"
},
"user_id": {
"examples": [
"101"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "User Id",
"type": "string"
}
},
"required": [
"client_id",
"user_id",
"target_job_id",
"path_job_ids"
],
"title": "GalaxyRationaleRequest",
"type": "object"
}
GalaxyRationaleResponse (schemas)¶
{
"description": "Return the short legacy-style explanation of the supplied path.",
"properties": {
"rationale": {
"title": "Rationale",
"type": "string"
}
},
"required": [
"rationale"
],
"title": "GalaxyRationaleResponse",
"type": "object"
}
GalaxyRequest (schemas)¶
{
"additionalProperties": false,
"description": "Select a tenant, employee and target job using AIHub identifiers.",
"examples": [
{
"client_id": "42",
"data_source": "smartmobility",
"locale": "en-US",
"target_job_id": "503",
"user_id": "101"
}
],
"properties": {
"client_id": {
"examples": [
"42"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Client Id",
"type": "string"
},
"data_source": {
"const": "smartmobility",
"default": "smartmobility",
"title": "Data Source",
"type": "string"
},
"locale": {
"anyOf": [
{
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"en-US"
],
"title": "Locale"
},
"target_job_id": {
"examples": [
"503"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Target Job Id",
"type": "string"
},
"user_id": {
"examples": [
"101"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "User Id",
"type": "string"
}
},
"required": [
"client_id",
"user_id",
"target_job_id"
],
"title": "GalaxyRequest",
"type": "object"
}
GoalContext (schemas)¶
{
"additionalProperties": false,
"description": "Describe an existing or deleted performance goal used as generation context.",
"properties": {
"description": {
"anyOf": [
{
"maxLength": 2000,
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"endDate": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"2027-01-01"
],
"title": "Enddate"
},
"keyResults": {
"items": {
"$ref": "#/components/schemas/KeyResultContext"
},
"maxItems": 100,
"title": "Keyresults",
"type": "array"
},
"status": {
"anyOf": [
{
"$ref": "#/components/schemas/GoalStatus"
},
{
"type": "null"
}
],
"examples": [
"in_progress"
]
},
"title": {
"examples": [
"Improve customer support efficiency"
],
"maxLength": 300,
"minLength": 1,
"pattern": "\\S",
"title": "Title",
"type": "string"
}
},
"required": [
"title"
],
"title": "GoalContext",
"type": "object"
}
Referenced definitions: components/schemas/GoalStatus, components/schemas/KeyResultContext.
GoalNoSuggestionReason (schemas)¶
{
"description": "Explain why no performance goal could be suggested.",
"enum": [
"insufficient_profile",
"already_covered"
],
"title": "GoalNoSuggestionReason",
"type": "string"
}
GoalReference (schemas)¶
{
"additionalProperties": false,
"description": "Describe the goal that key results must measure.",
"properties": {
"description": {
"description": "Required: key results are generated from the goal description.",
"examples": [
"Reduce handling time while keeping customers satisfied."
],
"maxLength": 2000,
"minLength": 1,
"pattern": "\\S",
"title": "Description",
"type": "string"
},
"targetDate": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"2027-01-01"
],
"title": "Targetdate"
},
"title": {
"examples": [
"Improve customer support efficiency"
],
"maxLength": 300,
"minLength": 1,
"pattern": "\\S",
"title": "Title",
"type": "string"
}
},
"required": [
"title",
"description"
],
"title": "GoalReference",
"type": "object"
}
GoalStatus (schemas)¶
{
"description": "Performance goal lifecycle statuses.",
"enum": [
"pending_approval",
"approved",
"rejected",
"in_progress",
"closed"
],
"title": "GoalStatus",
"type": "string"
}
HTTPValidationError (schemas)¶
{
"properties": {
"detail": {
"items": {
"$ref": "#/components/schemas/ValidationError"
},
"title": "Detail",
"type": "array"
}
},
"title": "HTTPValidationError",
"type": "object"
}
Referenced definitions: components/schemas/ValidationError.
InterestReferentielInput (schemas)¶
{
"description": "Validate and serialize interest referentiel input data.",
"properties": {
"title": {
"default": "Machine learning",
"title": "Title",
"type": "string"
}
},
"title": "InterestReferentielInput",
"type": "object"
}
JPMRationaleRequest (schemas)¶
{
"additionalProperties": false,
"description": "Select a tenant, employee, target job and explicit output locale.",
"examples": [
{
"client_id": "42",
"data_source": "smartmobility",
"job_id": "503",
"locale": "en-US",
"user_id": "101"
}
],
"properties": {
"client_id": {
"examples": [
"42"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Client Id",
"type": "string"
},
"data_source": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Data Source",
"type": "string"
},
"job_id": {
"examples": [
"503"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Job Id",
"type": "string"
},
"locale": {
"description": "Required BCP 47 locale for the rationale.",
"examples": [
"en-US"
],
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
"title": "Locale",
"type": "string"
},
"user_id": {
"examples": [
"101"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "User Id",
"type": "string"
}
},
"required": [
"client_id",
"user_id",
"job_id",
"locale"
],
"title": "JPMRationaleRequest",
"type": "object"
}
JPMRationaleResponse (schemas)¶
{
"additionalProperties": false,
"description": "Return a compact explanation in the requested language.",
"properties": {
"rationale": {
"description": "Two short sentences, at most 300 characters including spaces.",
"examples": [
"Your Python and data analysis skills support a move into business analytics. Experience presenting insights to stakeholders is a useful point to substantiate."
],
"maxLength": 300,
"minLength": 1,
"title": "Rationale",
"type": "string"
}
},
"required": [
"rationale"
],
"title": "JPMRationaleResponse",
"type": "object"
}
JobOfferGeneratorInput (schemas)¶
{
"description": "Legacy job-offer generation payload.",
"example": {
"endDate": "2026-12-31T00:00:00Z",
"location": "New York, NY",
"managementLevelName": "Associate",
"role": "Business controls",
"skills": "Data Visualization;Audit Methodology",
"startDate": "2026-09-01T00:00:00Z",
"wayOfWorking": "Flex"
},
"properties": {
"endDate": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"title": "Enddate"
},
"location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The job geographical location.",
"title": "Location"
},
"managementLevelName": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The job experience required.",
"title": "Managementlevelname"
},
"role": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The job required role.",
"title": "Role"
},
"skills": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The job required skills, separated with semicolons.",
"title": "Skills"
},
"startDate": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"title": "Startdate"
},
"wayOfWorking": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The job working possibility.",
"title": "Wayofworking"
}
},
"title": "JobOfferGeneratorInput",
"type": "object"
}
JobOfferGeneratorOutput (schemas)¶
{
"description": "Generated job description and its ten principal tasks.",
"properties": {
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The job description.",
"title": "Description"
},
"tasks": {
"anyOf": [
{
"items": {},
"type": "array"
},
{
"type": "null"
}
],
"description": "The job tasks.",
"title": "Tasks"
}
},
"title": "JobOfferGeneratorOutput",
"type": "object"
}
JobOfferScoreOutput (schemas)¶
{
"description": "One user score returned for a job offer.",
"properties": {
"motivationScore": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Motivationscore"
},
"overallScore": {
"title": "Overallscore",
"type": "number"
},
"skillScore": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Skillscore"
},
"userId": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
],
"description": "Entity identifier.",
"title": "Userid"
}
},
"required": [
"userId",
"skillScore",
"motivationScore",
"overallScore"
],
"title": "JobOfferScoreOutput",
"type": "object"
}
JobReferentielInput (schemas)¶
{
"description": "Validate and serialize job referentiel input data.",
"properties": {
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"duration": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Duration"
},
"endDate": {
"title": "Enddate",
"type": "string"
},
"startDate": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Startdate"
},
"title": {
"default": "lion tamer",
"title": "Title",
"type": "string"
}
},
"title": "JobReferentielInput",
"type": "object"
}
KeyResultContext (schemas)¶
{
"additionalProperties": false,
"description": "Describe an existing or deleted key result used as generation context.",
"properties": {
"currency": {
"anyOf": [
{
"description": "ISO 4217 currency code.",
"examples": [
"EUR"
],
"pattern": "^[A-Z]{3}$",
"type": "string"
},
{
"type": "null"
}
],
"title": "Currency"
},
"description": {
"anyOf": [
{
"maxLength": 2000,
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"measureType": {
"$ref": "#/components/schemas/MeasureType",
"default": "boolean"
},
"startValue": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Startvalue"
},
"targetValue": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Targetvalue"
},
"title": {
"examples": [
"Reach a customer satisfaction score of 90%"
],
"maxLength": 300,
"minLength": 1,
"pattern": "\\S",
"title": "Title",
"type": "string"
},
"unit": {
"anyOf": [
{
"maxLength": 300,
"type": "string"
},
{
"type": "null"
}
],
"title": "Unit"
}
},
"required": [
"title"
],
"title": "KeyResultContext",
"type": "object"
}
Referenced definitions: components/schemas/MeasureType.
KeyResultNoSuggestionReason (schemas)¶
{
"description": "Explain why no key result could be suggested.",
"enum": [
"goal_too_vague",
"already_covered",
"no_measurable_outcome"
],
"title": "KeyResultNoSuggestionReason",
"type": "string"
}
KeyResultSuggestion (schemas)¶
{
"additionalProperties": false,
"description": "Return one suggested key result with its measurement configuration.",
"properties": {
"currency": {
"anyOf": [
{
"description": "ISO 4217 currency code.",
"examples": [
"EUR"
],
"pattern": "^[A-Z]{3}$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Only for currency measures; null when it cannot be inferred.",
"title": "Currency"
},
"description": {
"anyOf": [
{
"maxLength": 500,
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"Measured on all customer tickets opened during the period."
],
"title": "Description"
},
"measureType": {
"$ref": "#/components/schemas/MeasureType",
"examples": [
"custom"
]
},
"rationale": {
"examples": [
"Response time is the most direct signal of support efficiency."
],
"maxLength": 600,
"minLength": 1,
"title": "Rationale",
"type": "string"
},
"startValue": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Null for boolean measures or when no reliable value is known.",
"examples": [
0
],
"title": "Startvalue"
},
"targetValue": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Null for boolean measures or when no reliable value is known.",
"examples": [
2
],
"title": "Targetvalue"
},
"title": {
"examples": [
"Reduce average first response time to 2 hours"
],
"maxLength": 100,
"minLength": 1,
"title": "Title",
"type": "string"
},
"unit": {
"anyOf": [
{
"maxLength": 50,
"type": "string"
},
{
"type": "null"
}
],
"description": "Only for custom measures.",
"examples": [
"hours"
],
"title": "Unit"
}
},
"required": [
"title",
"measureType",
"rationale"
],
"title": "KeyResultSuggestion",
"type": "object"
}
Referenced definitions: components/schemas/MeasureType.
KeyResultSuggestionsRequest (schemas)¶
{
"additionalProperties": false,
"description": "Request key result suggestions for one performance goal.",
"examples": [
{
"clientId": "42",
"deletedKeyResults": [
{
"measureType": "boolean",
"title": "Answer every ticket within one hour"
}
],
"existingKeyResults": [
{
"measureType": "percentage",
"startValue": 0,
"targetValue": 90,
"title": "Reach a customer satisfaction score of 90%"
}
],
"goal": {
"description": "Reduce handling time while keeping customers satisfied.",
"targetDate": "2027-01-01",
"title": "Improve customer support efficiency"
},
"locale": "en-US",
"maxKeyResults": 3,
"userId": "101"
}
],
"properties": {
"clientId": {
"examples": [
"42"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Clientid",
"type": "string"
},
"deletedKeyResults": {
"description": "Key results removed from the goal, treated as rejected directions.",
"items": {
"$ref": "#/components/schemas/KeyResultContext"
},
"maxItems": 100,
"title": "Deletedkeyresults",
"type": "array"
},
"existingKeyResults": {
"description": "Key results already on the goal; a goal holds at most four.",
"items": {
"$ref": "#/components/schemas/KeyResultContext"
},
"maxItems": 3,
"title": "Existingkeyresults",
"type": "array"
},
"goal": {
"$ref": "#/components/schemas/GoalReference"
},
"locale": {
"description": "Required BCP 47 locale of the generated content.",
"examples": [
"en-US"
],
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
"title": "Locale",
"type": "string"
},
"maxKeyResults": {
"anyOf": [
{
"maximum": 4.0,
"minimum": 1.0,
"type": "integer"
},
{
"type": "null"
}
],
"description": "Upper bound of suggestions; the remaining goal capacity always applies.",
"title": "Maxkeyresults"
},
"userId": {
"anyOf": [
{
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional employee whose job context refines the suggestions.",
"examples": [
"101"
],
"title": "Userid"
}
},
"required": [
"clientId",
"locale",
"goal"
],
"title": "KeyResultSuggestionsRequest",
"type": "object"
}
Referenced definitions: components/schemas/GoalReference, components/schemas/KeyResultContext.
KeyResultSuggestionsResponse (schemas)¶
{
"additionalProperties": false,
"description": "Return key result suggestions, or the reason none could be produced.",
"examples": [
{
"keyResults": [
{
"description": "Measured on all customer tickets opened during the period.",
"measureType": "custom",
"rationale": "Response time is the most direct signal of support efficiency.",
"startValue": 0,
"targetValue": 2,
"title": "Reduce average first response time to 2 hours",
"unit": "hours"
},
{
"measureType": "boolean",
"rationale": "The workflow rollout is a prerequisite for faster handling.",
"title": "Deploy the new support workflow to the whole team"
}
]
},
{
"keyResults": [],
"noSuggestionReason": "goal_too_vague"
}
],
"properties": {
"keyResults": {
"items": {
"$ref": "#/components/schemas/KeyResultSuggestion"
},
"maxItems": 4,
"title": "Keyresults",
"type": "array"
},
"noSuggestionReason": {
"anyOf": [
{
"$ref": "#/components/schemas/KeyResultNoSuggestionReason"
},
{
"type": "null"
}
],
"description": "Set only when keyResults is empty."
}
},
"required": [
"keyResults"
],
"title": "KeyResultSuggestionsResponse",
"type": "object"
}
Referenced definitions: components/schemas/KeyResultNoSuggestionReason, components/schemas/KeyResultSuggestion.
MarketplaceFilterInput (schemas)¶
{
"additionalProperties": false,
"description": "Identify one displayed BO filter; its choices always come from the server.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
],
"examples": [
42
]
},
"key": {
"$ref": "#/components/schemas/FilterKey",
"examples": [
"search_diplome"
]
}
},
"required": [
"key"
],
"title": "MarketplaceFilterInput",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/PositiveId.
MarketplaceFiltersRequest (schemas)¶
{
"additionalProperties": false,
"description": "Request one interpretation against the filters displayed by Smart Mobility.",
"examples": [
{
"client_id": "123",
"filters": [
{
"key": "search_diplome"
},
{
"key": "city"
},
{
"company_entity_id": 42,
"key": "company_entity"
}
],
"locale": "en_GB",
"query": "Find agricultural engineers in the Research department in London"
}
],
"properties": {
"client_id": {
"examples": [
"123"
],
"pattern": "^[1-9][0-9]{0,9}$",
"title": "Client Id",
"type": "string"
},
"filters": {
"items": {
"$ref": "#/components/schemas/MarketplaceFilterInput"
},
"maxItems": 100,
"minItems": 1,
"title": "Filters",
"type": "array"
},
"locale": {
"anyOf": [
{
"pattern": "^[a-z]{2}(?:[_-][A-Z]{2})?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact Smart Mobility locale; omit to use source labels.",
"examples": [
"en_GB"
],
"title": "Locale"
},
"query": {
"examples": [
"Find engineers in London"
],
"maxLength": 4000,
"minLength": 1,
"title": "Query",
"type": "string"
}
},
"required": [
"client_id",
"query",
"filters"
],
"title": "MarketplaceFiltersRequest",
"type": "object"
}
Referenced definitions: components/schemas/MarketplaceFilterInput.
MarketplaceFiltersResponse (schemas)¶
{
"additionalProperties": false,
"description": "Return only relevant prefilled filters; an empty list is a valid no-match result.",
"examples": [
{
"filters": [
{
"company_entity_id": 42,
"key": "company_entity",
"kind": "choice",
"values": [
7
]
}
]
},
{
"filters": []
}
],
"properties": {
"filters": {
"items": {
"$ref": "#/components/schemas/FilledFilter"
},
"maxItems": 100,
"title": "Filters",
"type": "array"
}
},
"required": [
"filters"
],
"title": "MarketplaceFiltersResponse",
"type": "object"
}
Referenced definitions: components/schemas/FilledFilter.
MeasureType (schemas)¶
{
"description": "Key result measurement formats supported by performance goals.",
"enum": [
"boolean",
"custom",
"percentage",
"currency"
],
"title": "MeasureType",
"type": "string"
}
MongoDocument (schemas)¶
NumberSelection (schemas)¶
{
"additionalProperties": false,
"description": "Set one numeric input, such as minimum age or seniority.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
]
},
"key": {
"$ref": "#/components/schemas/FilterKey"
},
"kind": {
"const": "number",
"title": "Kind",
"type": "string"
},
"value": {
"minimum": 0.0,
"title": "Value",
"type": "integer"
}
},
"required": [
"key",
"company_entity_id",
"kind",
"value"
],
"title": "NumberSelection",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/PositiveId.
PathJob (schemas)¶
{
"additionalProperties": false,
"description": "Return authoritative job metadata and its employee-relative proximity.",
"properties": {
"family": {
"title": "Family",
"type": "string"
},
"job_id": {
"title": "Job Id",
"type": "string"
},
"level": {
"title": "Level",
"type": "integer"
},
"proximity": {
"enum": [
"green",
"orange",
"red"
],
"title": "Proximity",
"type": "string"
},
"score": {
"title": "Score",
"type": "number"
},
"title": {
"title": "Title",
"type": "string"
}
},
"required": [
"job_id",
"title",
"family",
"level",
"proximity",
"score"
],
"title": "PathJob",
"type": "object"
}
PathStep (schemas)¶
{
"description": "Represent one transition between consecutive jobs.",
"properties": {
"job_source_id": {
"title": "Job Source Id",
"type": "string"
},
"job_target_id": {
"title": "Job Target Id",
"type": "string"
},
"step_number": {
"title": "Step Number",
"type": "integer"
}
},
"required": [
"step_number",
"job_source_id",
"job_target_id"
],
"title": "PathStep",
"type": "object"
}
PerformanceGoalSuggestion (schemas)¶
{
"additionalProperties": false,
"description": "Return one suggested SMART performance goal.",
"properties": {
"description": {
"examples": [
"Streamline the support workflow so customers get faster answers without lowering resolution quality."
],
"maxLength": 1000,
"minLength": 1,
"title": "Description",
"type": "string"
},
"rationale": {
"examples": [
"Your support lead role and process improvement skills make faster resolution a realistic and visible contribution this period."
],
"maxLength": 600,
"minLength": 1,
"title": "Rationale",
"type": "string"
},
"targetDate": {
"examples": [
"2027-03-31"
],
"format": "date",
"title": "Targetdate",
"type": "string"
},
"title": {
"examples": [
"Reduce average ticket resolution time"
],
"maxLength": 100,
"minLength": 1,
"title": "Title",
"type": "string"
}
},
"required": [
"title",
"description",
"rationale",
"targetDate"
],
"title": "PerformanceGoalSuggestion",
"type": "object"
}
PerformanceGoalSuggestionsRequest (schemas)¶
{
"additionalProperties": false,
"description": "Request performance goal suggestions for one employee.",
"examples": [
{
"clientId": "42",
"deletedGoals": [
{
"title": "Answer every ticket within one hour"
}
],
"existingGoals": [
{
"description": "Reduce handling time while keeping customers satisfied.",
"endDate": "2027-01-01",
"keyResults": [
{
"measureType": "percentage",
"startValue": 0,
"targetValue": 90,
"title": "Reach a customer satisfaction score of 90%"
}
],
"status": "in_progress",
"title": "Improve customer support efficiency"
},
{
"status": "rejected",
"title": "Run weekly team knowledge-sharing sessions"
}
],
"limit": 3,
"locale": "en-US",
"periodEndDate": "2027-06-30",
"previouslySuggestedTitles": [
"Launch a self-service help center"
],
"userId": "101"
}
],
"properties": {
"clientId": {
"examples": [
"42"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Clientid",
"type": "string"
},
"deletedGoals": {
"description": "Goals deleted by the employee, treated as rejected directions.",
"items": {
"$ref": "#/components/schemas/GoalContext"
},
"maxItems": 100,
"title": "Deletedgoals",
"type": "array"
},
"existingGoals": {
"description": "Current, past and rejected goals of the employee.",
"items": {
"$ref": "#/components/schemas/GoalContext"
},
"maxItems": 100,
"title": "Existinggoals",
"type": "array"
},
"limit": {
"default": 3,
"description": "Maximum number of goals to suggest.",
"maximum": 5.0,
"minimum": 1.0,
"title": "Limit",
"type": "integer"
},
"locale": {
"description": "Required BCP 47 locale of the generated content.",
"examples": [
"en-US"
],
"maxLength": 35,
"minLength": 2,
"pattern": "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
"title": "Locale",
"type": "string"
},
"periodEndDate": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"description": "End of the review period; suggested target dates never exceed it.",
"examples": [
"2027-06-30"
],
"title": "Periodenddate"
},
"previouslySuggestedTitles": {
"description": "Titles already shown in this session, used to request more suggestions.",
"items": {
"maxLength": 300,
"minLength": 1,
"pattern": "\\S",
"type": "string"
},
"maxItems": 50,
"title": "Previouslysuggestedtitles",
"type": "array"
},
"userId": {
"examples": [
"101"
],
"maxLength": 128,
"minLength": 1,
"pattern": "^\\S+$",
"title": "Userid",
"type": "string"
}
},
"required": [
"clientId",
"userId",
"locale"
],
"title": "PerformanceGoalSuggestionsRequest",
"type": "object"
}
Referenced definitions: components/schemas/GoalContext.
PerformanceGoalSuggestionsResponse (schemas)¶
{
"additionalProperties": false,
"description": "Return goal suggestions, or the reason none could be produced.",
"examples": [
{
"goals": [
{
"description": "Streamline the support workflow so customers get faster answers without lowering resolution quality.",
"rationale": "Your support lead role and process improvement skills make faster resolution a realistic and visible contribution this period.",
"targetDate": "2027-03-31",
"title": "Reduce average ticket resolution time"
}
]
},
{
"goals": [],
"noSuggestionReason": "already_covered"
}
],
"properties": {
"goals": {
"items": {
"$ref": "#/components/schemas/PerformanceGoalSuggestion"
},
"maxItems": 5,
"title": "Goals",
"type": "array"
},
"noSuggestionReason": {
"anyOf": [
{
"$ref": "#/components/schemas/GoalNoSuggestionReason"
},
{
"type": "null"
}
],
"description": "Set only when goals is empty."
}
},
"required": [
"goals"
],
"title": "PerformanceGoalSuggestionsResponse",
"type": "object"
}
Referenced definitions: components/schemas/GoalNoSuggestionReason, components/schemas/PerformanceGoalSuggestion.
PositiveId (schemas)¶
RangeSelection (schemas)¶
{
"additionalProperties": false,
"description": "Set the two bounds of an existing numeric range widget.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
]
},
"end": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "End"
},
"key": {
"$ref": "#/components/schemas/FilterKey"
},
"kind": {
"const": "range",
"title": "Kind",
"type": "string"
},
"start": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Start"
}
},
"required": [
"key",
"company_entity_id",
"kind",
"start",
"end"
],
"title": "RangeSelection",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/PositiveId.
ResumeAddress (schemas)¶
{
"additionalProperties": false,
"description": "Represent the candidate address without enriching missing fields.",
"properties": {
"addressLine": {
"default": "",
"title": "Addressline",
"type": "string"
},
"city": {
"default": "",
"title": "City",
"type": "string"
},
"country": {
"$ref": "#/components/schemas/ResumeCodeDescription"
},
"latitude": {
"default": "",
"title": "Latitude",
"type": "string"
},
"longitude": {
"default": "",
"title": "Longitude",
"type": "string"
},
"number": {
"default": "",
"title": "Number",
"type": "string"
},
"postalCode": {
"default": "",
"title": "Postalcode",
"type": "string"
},
"region": {
"$ref": "#/components/schemas/ResumeCodeDescription"
},
"street": {
"default": "",
"title": "Street",
"type": "string"
},
"subRegion": {
"$ref": "#/components/schemas/ResumeCodeDescription"
}
},
"title": "ResumeAddress",
"type": "object"
}
Referenced definitions: components/schemas/ResumeCodeDescription.
ResumeCodeDescription (schemas)¶
{
"additionalProperties": false,
"description": "Represent a Textkernel-compatible code and description pair.",
"properties": {
"code": {
"default": "",
"title": "Code",
"type": "string"
},
"description": {
"default": "",
"title": "Description",
"type": "string"
}
},
"title": "ResumeCodeDescription",
"type": "object"
}
ResumeCurrentWorkField (schemas)¶
{
"additionalProperties": false,
"description": "Represent optional standardized current-work classifications.",
"properties": {
"experienceLevelCode": {
"default": "",
"title": "Experiencelevelcode",
"type": "string"
},
"experienceLevelDescription": {
"default": "",
"title": "Experienceleveldescription",
"type": "string"
},
"workFieldCode": {
"default": "",
"title": "Workfieldcode",
"type": "string"
},
"workFieldDescription": {
"default": "",
"title": "Workfielddescription",
"type": "string"
}
},
"title": "ResumeCurrentWorkField",
"type": "object"
}
ResumeCustomArea (schemas)¶
{
"additionalProperties": false,
"description": "Preserve the Textkernel custom-area shape.",
"properties": {
"extraInfo": {
"$ref": "#/components/schemas/ResumeExtraInfo"
}
},
"title": "ResumeCustomArea",
"type": "object"
}
Referenced definitions: components/schemas/ResumeExtraInfo.
ResumeEducationDegree (schemas)¶
{
"additionalProperties": false,
"description": "Represent one education entry.",
"properties": {
"city": {
"default": "",
"title": "City",
"type": "string"
},
"country": {
"$ref": "#/components/schemas/ResumeCodeDescription"
},
"degreeName": {
"default": "",
"title": "Degreename",
"type": "string"
},
"description": {
"default": "",
"title": "Description",
"type": "string"
},
"diplomaCode": {
"default": "",
"title": "Diplomacode",
"type": "string"
},
"diplomaDescription": {
"default": "",
"title": "Diplomadescription",
"type": "string"
},
"endDate": {
"default": "",
"title": "Enddate",
"type": "string"
},
"gradePointAverage": {
"default": "",
"title": "Gradepointaverage",
"type": "string"
},
"institute": {
"default": "",
"title": "Institute",
"type": "string"
},
"internationalCode": {
"default": "",
"title": "Internationalcode",
"type": "string"
},
"internationalDescription": {
"default": "",
"title": "Internationaldescription",
"type": "string"
},
"itemId": {
"default": "",
"title": "Itemid",
"type": "string"
},
"localCode": {
"default": "",
"title": "Localcode",
"type": "string"
},
"localDescription": {
"default": "",
"title": "Localdescription",
"type": "string"
},
"location": {
"default": "",
"title": "Location",
"type": "string"
},
"region": {
"default": "",
"title": "Region",
"type": "string"
},
"startDate": {
"default": "",
"title": "Startdate",
"type": "string"
}
},
"title": "ResumeEducationDegree",
"type": "object"
}
Referenced definitions: components/schemas/ResumeCodeDescription.
ResumeEducationHistory (schemas)¶
{
"additionalProperties": false,
"description": "Represent degrees, courses and source education prose.",
"properties": {
"courses": {
"items": {
"type": "string"
},
"title": "Courses",
"type": "array"
},
"degrees": {
"items": {
"$ref": "#/components/schemas/ResumeEducationDegree"
},
"title": "Degrees",
"type": "array"
},
"educationSection": {
"default": "",
"title": "Educationsection",
"type": "string"
}
},
"title": "ResumeEducationHistory",
"type": "object"
}
Referenced definitions: components/schemas/ResumeEducationDegree.
ResumeEmploymentExperience (schemas)¶
{
"additionalProperties": false,
"description": "Represent one Textkernel-compatible employment entry.",
"properties": {
"city": {
"default": "",
"title": "City",
"type": "string"
},
"country": {
"$ref": "#/components/schemas/ResumeCodeDescription"
},
"description": {
"default": "",
"title": "Description",
"type": "string"
},
"endDate": {
"default": "",
"title": "Enddate",
"type": "string"
},
"iSCO2008Code": {
"default": "",
"title": "Isco2008Code",
"type": "string"
},
"iSCO2008Description": {
"default": "",
"title": "Isco2008Description",
"type": "string"
},
"is_current_experience": {
"default": "0",
"title": "Is Current Experience",
"type": "string"
},
"is_latest_experience": {
"default": "0",
"title": "Is Latest Experience",
"type": "string"
},
"itemId": {
"default": "",
"title": "Itemid",
"type": "string"
},
"jobTitle": {
"default": "",
"title": "Jobtitle",
"type": "string"
},
"location": {
"default": "",
"title": "Location",
"type": "string"
},
"months": {
"default": "",
"title": "Months",
"type": "string"
},
"oNET2019Code": {
"default": "",
"title": "Onet2019Code",
"type": "string"
},
"oNET2019Description": {
"default": "",
"title": "Onet2019Description",
"type": "string"
},
"organization": {
"default": "",
"title": "Organization",
"type": "string"
},
"professionClassCode": {
"default": "",
"title": "Professionclasscode",
"type": "string"
},
"professionClassDescription": {
"default": "",
"title": "Professionclassdescription",
"type": "string"
},
"professionCode": {
"default": "",
"title": "Professioncode",
"type": "string"
},
"professionDescription": {
"default": "",
"title": "Professiondescription",
"type": "string"
},
"professionGroupCode": {
"default": "",
"title": "Professiongroupcode",
"type": "string"
},
"professionGroupDescription": {
"default": "",
"title": "Professiongroupdescription",
"type": "string"
},
"region": {
"default": "",
"title": "Region",
"type": "string"
},
"startDate": {
"default": "",
"title": "Startdate",
"type": "string"
},
"years": {
"default": "",
"title": "Years",
"type": "string"
}
},
"title": "ResumeEmploymentExperience",
"type": "object"
}
Referenced definitions: components/schemas/ResumeCodeDescription.
ResumeExtraInfo (schemas)¶
{
"additionalProperties": false,
"description": "Preserve the Textkernel custom-area envelope.",
"properties": {
"userExternalId": {
"default": "",
"title": "Userexternalid",
"type": "string"
}
},
"title": "ResumeExtraInfo",
"type": "object"
}
ResumeHighestDegree (schemas)¶
{
"additionalProperties": false,
"description": "Represent the highest explicit education entry.",
"properties": {
"endDate": {
"default": "",
"title": "Enddate",
"type": "string"
},
"internationalCode": {
"default": "",
"title": "Internationalcode",
"type": "string"
},
"internationalDescription": {
"default": "",
"title": "Internationaldescription",
"type": "string"
},
"localCode": {
"default": "",
"title": "Localcode",
"type": "string"
},
"localDescription": {
"default": "",
"title": "Localdescription",
"type": "string"
}
},
"title": "ResumeHighestDegree",
"type": "object"
}
ResumeLanguageSkill (schemas)¶
{
"additionalProperties": false,
"description": "Represent one language and its explicitly stated proficiency.",
"properties": {
"foundIn": {
"default": "",
"title": "Foundin",
"type": "string"
},
"last_used": {
"default": "",
"title": "Last Used",
"type": "string"
},
"levelCode": {
"default": "",
"title": "Levelcode",
"type": "string"
},
"levelDescription": {
"default": "",
"title": "Leveldescription",
"type": "string"
},
"skillCode": {
"default": "",
"title": "Skillcode",
"type": "string"
},
"skillDescription": {
"default": "",
"title": "Skilldescription",
"type": "string"
},
"years": {
"default": "",
"title": "Years",
"type": "string"
}
},
"title": "ResumeLanguageSkill",
"type": "object"
}
ResumeOtherInformation (schemas)¶
{
"additionalProperties": false,
"description": "Represent complementary resume information.",
"properties": {
"hobbies": {
"items": {
"type": "string"
},
"title": "Hobbies",
"type": "array"
},
"profilePicture": {
"additionalProperties": {
"type": "string"
},
"title": "Profilepicture",
"type": "object"
}
},
"title": "ResumeOtherInformation",
"type": "object"
}
ResumeParsingResponse (schemas)¶
{
"additionalProperties": false,
"description": "Expose a stable response close to the existing Textkernel payload.\n\n``partialExtractionIndicator`` is ``\"0\"`` for complete extraction or\n``\"1\"`` when visible content is unreadable or cannot be assigned reliably.\nUnreadable documents and invalid provider output return HTTP errors.\nKnown dates use YYYY-MM-DD, padding missing months and days with 01.",
"properties": {
"certifications": {
"items": {
"type": "string"
},
"title": "Certifications",
"type": "array"
},
"customArea": {
"$ref": "#/components/schemas/ResumeCustomArea"
},
"documentHtml": {
"default": "",
"title": "Documenthtml",
"type": "string"
},
"documentText": {
"default": "",
"title": "Documenttext",
"type": "string"
},
"educationHistory": {
"$ref": "#/components/schemas/ResumeEducationHistory"
},
"employmentHistory": {
"items": {
"$ref": "#/components/schemas/ResumeEmploymentExperience"
},
"title": "Employmenthistory",
"type": "array"
},
"file": {
"default": "",
"title": "File",
"type": "string"
},
"lang": {
"default": "",
"title": "Lang",
"type": "string"
},
"langCode": {
"default": "",
"title": "Langcode",
"type": "string"
},
"lastModified": {
"default": "",
"title": "Lastmodified",
"type": "string"
},
"other": {
"$ref": "#/components/schemas/ResumeOtherInformation"
},
"partialExtractionIndicator": {
"default": "0",
"title": "Partialextractionindicator",
"type": "string"
},
"personal": {
"$ref": "#/components/schemas/ResumePersonalInformation"
},
"skills": {
"$ref": "#/components/schemas/ResumeSkills"
},
"summary": {
"$ref": "#/components/schemas/ResumeSummary"
}
},
"title": "ResumeParsingResponse",
"type": "object"
}
Referenced definitions: components/schemas/ResumeCustomArea, components/schemas/ResumeEducationHistory, components/schemas/ResumeEmploymentExperience, components/schemas/ResumeOtherInformation, components/schemas/ResumePersonalInformation, components/schemas/ResumeSkills, components/schemas/ResumeSummary.
ResumePersonalInformation (schemas)¶
{
"additionalProperties": false,
"description": "Represent identity and contact data explicitly present in a resume.",
"properties": {
"address": {
"$ref": "#/components/schemas/ResumeAddress"
},
"birthDate": {
"default": "",
"title": "Birthdate",
"type": "string"
},
"birthPlace": {
"default": "",
"title": "Birthplace",
"type": "string"
},
"completeName": {
"default": "",
"title": "Completename",
"type": "string"
},
"driversLicenses": {
"items": {
"type": "string"
},
"title": "Driverslicenses",
"type": "array"
},
"emails": {
"items": {
"type": "string"
},
"title": "Emails",
"type": "array"
},
"firstName": {
"default": "",
"title": "Firstname",
"type": "string"
},
"gender": {
"$ref": "#/components/schemas/ResumeCodeDescription"
},
"initials": {
"default": "",
"title": "Initials",
"type": "string"
},
"lastName": {
"default": "",
"title": "Lastname",
"type": "string"
},
"middleName": {
"default": "",
"title": "Middlename",
"type": "string"
},
"nationality": {
"$ref": "#/components/schemas/ResumeCodeDescription"
},
"personalUrls": {
"items": {
"type": "string"
},
"title": "Personalurls",
"type": "array"
},
"phones": {
"items": {
"type": "string"
},
"title": "Phones",
"type": "array"
},
"title": {
"default": "",
"title": "Title",
"type": "string"
}
},
"title": "ResumePersonalInformation",
"type": "object"
}
Referenced definitions: components/schemas/ResumeAddress, components/schemas/ResumeCodeDescription.
ResumeSkill (schemas)¶
{
"additionalProperties": false,
"description": "Represent one explicit skill and its optional source experience.",
"properties": {
"foundIn": {
"default": "",
"title": "Foundin",
"type": "string"
},
"last_used": {
"default": "",
"title": "Last Used",
"type": "string"
},
"level": {
"default": "",
"title": "Level",
"type": "string"
},
"skill": {
"default": "",
"title": "Skill",
"type": "string"
},
"skillCode": {
"default": "",
"title": "Skillcode",
"type": "string"
},
"skillDescription": {
"default": "",
"title": "Skilldescription",
"type": "string"
},
"years": {
"default": "",
"title": "Years",
"type": "string"
}
},
"title": "ResumeSkill",
"type": "object"
}
ResumeSkills (schemas)¶
{
"additionalProperties": false,
"description": "Group explicit resume skills by Textkernel-compatible category.",
"properties": {
"computerSkills": {
"items": {
"$ref": "#/components/schemas/ResumeSkill"
},
"title": "Computerskills",
"type": "array"
},
"languageSkills": {
"items": {
"$ref": "#/components/schemas/ResumeLanguageSkill"
},
"title": "Languageskills",
"type": "array"
},
"otherSkills": {
"items": {
"$ref": "#/components/schemas/ResumeSkill"
},
"title": "Otherskills",
"type": "array"
},
"softSkills": {
"items": {
"$ref": "#/components/schemas/ResumeSkill"
},
"title": "Softskills",
"type": "array"
}
},
"title": "ResumeSkills",
"type": "object"
}
Referenced definitions: components/schemas/ResumeLanguageSkill, components/schemas/ResumeSkill.
ResumeSummary (schemas)¶
{
"additionalProperties": false,
"description": "Represent deterministic resume-wide summary information.",
"properties": {
"currentEmployer": {
"default": "",
"title": "Currentemployer",
"type": "string"
},
"currentJob": {
"default": "",
"title": "Currentjob",
"type": "string"
},
"currentWorkField": {
"$ref": "#/components/schemas/ResumeCurrentWorkField"
},
"extraCurricularSection": {
"default": "",
"title": "Extracurricularsection",
"type": "string"
},
"highestDegree": {
"$ref": "#/components/schemas/ResumeHighestDegree"
},
"summaryAmbitionSection": {
"default": "",
"title": "Summaryambitionsection",
"type": "string"
},
"totalExperienceMonths": {
"default": "",
"title": "Totalexperiencemonths",
"type": "string"
},
"totalExperienceYears": {
"default": "",
"title": "Totalexperienceyears",
"type": "string"
}
},
"title": "ResumeSummary",
"type": "object"
}
Referenced definitions: components/schemas/ResumeCurrentWorkField, components/schemas/ResumeHighestDegree.
SkillInputSolo (schemas)¶
{
"description": "Validate a single-skill search request.",
"examples": [
{
"client_id": "42",
"data_source": "smartmobility",
"debug": false,
"language": "en",
"languages_ret": [
"en"
],
"results_number": 10,
"search_query": "Data analysis with Python"
}
],
"properties": {
"ai_provider": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Ai Provider"
},
"client_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Client Id"
},
"collection_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Collection Name"
},
"data_source": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": "smartmobility",
"title": "Data Source"
},
"debug": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": false,
"title": "Debug"
},
"language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Language"
},
"languages_ret": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Languages Ret"
},
"repositories_id": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Repositories Id"
},
"repositories_id_prio": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Repositories Id Prio"
},
"results_number": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": 10,
"title": "Results Number"
},
"search_query": {
"anyOf": [
{
"$ref": "#/components/schemas/SkillSearchText"
},
{
"type": "null"
}
]
},
"threshold": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Threshold"
},
"threshold_deduplicate": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": 0.98,
"title": "Threshold Deduplicate"
}
},
"title": "SkillInputSolo",
"type": "object"
}
Referenced definitions: components/schemas/SkillSearchText.
SkillSearchText (schemas)¶
Referenced definitions: components/schemas/UntrustedText.
SkillSelection (schemas)¶
{
"additionalProperties": false,
"description": "Select a skill with an optional explicitly requested mastery level.",
"properties": {
"id": {
"$ref": "#/components/schemas/PositiveId"
},
"level": {
"anyOf": [
{
"minimum": 0.0,
"type": "integer"
},
{
"type": "null"
}
],
"title": "Level"
}
},
"required": [
"id",
"level"
],
"title": "SkillSelection",
"type": "object"
}
Referenced definitions: components/schemas/PositiveId.
SkillsSelection (schemas)¶
{
"additionalProperties": false,
"description": "Populate the legacy skill criteria, including optional rating levels.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
]
},
"key": {
"$ref": "#/components/schemas/FilterKey"
},
"kind": {
"const": "skills",
"title": "Kind",
"type": "string"
},
"values": {
"items": {
"$ref": "#/components/schemas/SkillSelection"
},
"maxItems": 100,
"minItems": 1,
"title": "Values",
"type": "array"
}
},
"required": [
"key",
"company_entity_id",
"kind",
"values"
],
"title": "SkillsSelection",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/PositiveId, components/schemas/SkillSelection.
TalentMatchInsightType (schemas)¶
{
"description": "Optional evidence focus requested for a talent-match rationale.",
"enum": [
"skills",
"motivation"
],
"title": "TalentMatchInsightType",
"type": "string"
}
TalentMatchInsightsByIdInput (schemas)¶
{
"description": "User and opportunity identifiers used for a matching explanation.",
"example": {
"jobOfferId": "12345",
"userId": "a5ec-b1cf5d"
},
"properties": {
"jobOfferId": {
"default": "",
"description": "ID of the job offer to load.",
"minLength": 1,
"title": "Jobofferid",
"type": "string"
},
"userId": {
"default": "",
"description": "ID of the user to load.",
"minLength": 1,
"title": "Userid",
"type": "string"
}
},
"required": [
"userId",
"jobOfferId"
],
"title": "TalentMatchInsightsByIdInput",
"type": "object"
}
TalentMatchInsightsInput (schemas)¶
{
"description": "Raw profile and opportunity text used for a matching explanation.",
"example": {
"cv": "Level: Senior\nTop skills: Manager",
"offer": "Role: R&D Study\nLevel: Director"
},
"properties": {
"cv": {
"default": "",
"description": "The user CV relating skills and experiences.",
"minLength": 1,
"title": "Cv",
"type": "string"
},
"offer": {
"default": "",
"description": "The job offer description.",
"minLength": 1,
"title": "Offer",
"type": "string"
}
},
"required": [
"cv",
"offer"
],
"title": "TalentMatchInsightsInput",
"type": "object"
}
TextSelection (schemas)¶
{
"additionalProperties": false,
"description": "Extract text for a free-text filter or the keyword input.",
"properties": {
"company_entity_id": {
"anyOf": [
{
"$ref": "#/components/schemas/PositiveId"
},
{
"type": "null"
}
]
},
"key": {
"$ref": "#/components/schemas/FilterKey"
},
"kind": {
"const": "text",
"title": "Kind",
"type": "string"
},
"values": {
"items": {
"maxLength": 1000,
"minLength": 1,
"type": "string"
},
"maxItems": 100,
"minItems": 1,
"title": "Values",
"type": "array"
}
},
"required": [
"key",
"company_entity_id",
"kind",
"values"
],
"title": "TextSelection",
"type": "object"
}
Referenced definitions: components/schemas/FilterKey, components/schemas/PositiveId.
TrainingSearchInput (schemas)¶
{
"additionalProperties": false,
"description": "Natural-language training search request.",
"examples": [
{
"keyword": "Improve project management and stakeholder communication",
"limit": 6,
"trainingIds": [
"701"
],
"userId": "101"
}
],
"properties": {
"keyword": {
"maxLength": 4000,
"minLength": 1,
"title": "Keyword",
"type": "string"
},
"limit": {
"default": 6,
"maximum": 100.0,
"minimum": 1.0,
"title": "Limit",
"type": "integer"
},
"trainingIds": {
"anyOf": [
{
"items": {
"type": "string"
},
"maxItems": 100,
"type": "array"
},
{
"type": "null"
}
],
"description": "Training identifiers to exclude from suggestions",
"title": "Trainingids"
},
"userId": {
"maxLength": 500,
"minLength": 1,
"title": "Userid",
"type": "string"
}
},
"required": [
"userId",
"keyword"
],
"title": "TrainingSearchInput",
"type": "object"
}
UntrustedText (schemas)¶
UserScoreOutput (schemas)¶
{
"description": "One job-offer score returned for a user.",
"properties": {
"jobOfferId": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
],
"description": "Entity identifier.",
"title": "Jobofferid"
},
"motivationScore": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Motivationscore"
},
"overallScore": {
"title": "Overallscore",
"type": "number"
},
"skillScore": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Skillscore"
}
},
"required": [
"jobOfferId",
"skillScore",
"motivationScore",
"overallScore"
],
"title": "UserScoreOutput",
"type": "object"
}
ValidationError (schemas)¶
{
"properties": {
"ctx": {
"title": "Context",
"type": "object"
},
"input": {
"title": "Input"
},
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"title": "Location",
"type": "array"
},
"msg": {
"title": "Message",
"type": "string"
},
"type": {
"title": "Error Type",
"type": "string"
}
},
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError",
"type": "object"
}
APIKeyHeader (securitySchemes)¶
Client-ID (securitySchemes)¶
{
"description": "Optional client identifier.",
"in": "header",
"name": "Client-ID",
"type": "apiKey"
}