Administration 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.
Administration 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.
51 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¶
POST /admin/api/v1/batch-processing/client/full¶
Import client entities and recalculate matchings
Database compatibility: MongoDB only.
Import all client entities, then recalculate enabled JOM and JPM matchings.
Await jobs, opportunities, trainings and users in that order, using direct batch imports (without RabbitMQ). Then await JOM users, JOM opportunities and JPM using the matching-only workflow. MongoDB mode is required.
Send a report to the client's report_mail_addresses after every import and matching phase, plus a consolidated final report. A global import error prevents matching; per-entity failures are reported and processing continues. Independent matching phases continue after a phase failure. Worker-count parameters apply to matching; imports use eight workers per entity family.
Returns 202 with one task_id for the complete background workflow after tenant and recipient validation. Check /operations/{task_id} for its local state.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "user_number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "User Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "opportunity_number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Opportunity Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "job_number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Job Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "process_full_client_api_v1_batch_processing_client_full_post",
"tags": [
"Batch Processing"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/batch-processing/client/imports¶
Queue client entity imports
Database compatibility: MongoDB only.
Queue active jobs, opportunities, trainings and users for initialization.
Shares the client-creation workflow: SQL reads only IDs and publishes one persistent RabbitMQ message per entity with compute_matchings=false. Consumers fetch full source data and standardize entities independently. No existing entities are deactivated and no matching scores are deleted. SmartMobility and MongoDB mode are required. Each destination queue must exist and the client prefix must be configured for consumption.
Each family sends a report of confirmed publications to report_mail_addresses. A successful task means messages were queued, not that imports have finished. An SQL read, queue or publication error is logged and reported for that family; later families are still attempted with independent RabbitMQ sessions. Confirmed messages remain queued. Failures produce a partial-failure summary. After interruption, relaunch manually; IDs may be published again. Existing broker retention applies (including the 24-hour ResourceAction queue TTL).
Returns 202 with a task_id after tenant and recipient validation. Check /operations/{task_id} for the process-local publication state.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "import_client_api_v1_batch_processing_client_imports_post",
"tags": [
"Batch Processing"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/batch-processing/client/matchings¶
Recalculate client matchings
Database compatibility: MongoDB + PostgreSQL.
Recalculate enabled JOM users, JOM opportunities, then JPM for a client.
No entity import is performed. Each phase finishes and sends its report to the client's report_mail_addresses before the next phase starts. Disabled phases are reported as skipped; jom_only omits JPM entirely. Separate worker counts control concurrency within each phase. Phase failures are reported and independent matching phases continue.
Returns 202 with a task_id after tenant and recipient validation; processing continues in the background. Check /operations/{task_id} for its local state.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "user_number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "User Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "opportunity_number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Opportunity Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "job_number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Job Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "jom_only",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Jom Only",
"type": "boolean"
}
},
{
"in": "query",
"name": "pwc_staging_or_prod",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"staging"
],
"title": "Pwc Staging Or Prod"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "process_one_client_api_v1_batch_processing_client_matchings_post",
"tags": [
"Batch Processing"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /admin/api/v1/clients¶
Create New Client
Database compatibility: MongoDB only.
Wait for client resources, then schedule initial imports, enabled by default.
Omit environment to use the deployment default shown in Swagger: trimmed APP_IDENTIFIER_SHORT, or ENV when it is unset, blank or mutu. An explicit environment must match that deployment default. An omitted, empty or whitespace-only rabbitmq_prefix uses sm_{APP_IDENTIFIER_SHORT}_legacy, with whitespace trimmed from the identifier. JOM and JPM are always enabled in the new client's configuration.
Resource creation shares the reconciliation policy of POST /clients/indexes. Every call creates missing resources, updates compatible index definitions, replaces incompatible indexes, and drops obsolete or duplicate indexes in catalog-managed collections. The MongoDB identity index is retained. ClientConfig registration occurs only after reconciliation succeeds; existing configuration and registration values are preserved. Retry with the same client identity after a failure. Atlas Search builds remain asynchronous after command acceptance. Set initialisation_import=false for resource-only repair; true reruns the initial imports after successful reconciliation.
Email confirms client creation (or verified resources on a retry) before imports. Each family sends a report after confirmed RabbitMQ publication, including empty queues and partial publication failures. Consumers run independently; task completion means publication attempts finished, not completed imports. A family failure is logged and reported; subsequent families still run and a terminal partial-failure report identifies failures. Cancellation stops work. Existing queue TTLs apply. Each destination queue must exist and the tenant prefix must be configured for consumption. Interrupted publication requires a manual relaunch, which may enqueue the same IDs again. No entities or scores are removed. Successful creation sends no additional final summary. Failures and cancellation retain the terminal administrative report. All notifications use the template's report_mail_addresses; email delivery failures do not interrupt processing. HTTP 200 confirms completed resource commands and registration, not completed imports or queryable Atlas indexes. The task_id identifies only the remaining import workflow. With initialisation_import=false, task_id is null and no import task is created. Resource failures return HTTP 500 without scheduling imports; completed resources remain in place for a retry. Admission or shutdown can return 503.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "client_name",
"required": true,
"schema": {
"examples": [
"Example Company"
],
"title": "Client Name",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "rabbitmq_prefix",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"sm_mutu_legacy"
],
"title": "Rabbitmq Prefix"
}
},
{
"description": "Source database or schema. Defaults to trimmed SM_DATABASE, or smartmobility_io when unset or blank. An explicit query value overrides this default.",
"in": "query",
"name": "database_name_import_data",
"required": false,
"schema": {
"default": "smartmobility_io",
"description": "Source database or schema. Defaults to trimmed SM_DATABASE, or smartmobility_io when unset or blank. An explicit query value overrides this default.",
"examples": [
"smartmobility_io"
],
"title": "Database Name Import Data",
"type": "string"
}
},
{
"in": "query",
"name": "ai_provider",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"ovh"
],
"title": "Ai Provider"
}
},
{
"in": "query",
"name": "llm_model",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
null
],
"title": "Llm Model"
}
},
{
"in": "query",
"name": "embedding_model",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
null
],
"title": "Embedding Model"
}
},
{
"description": "Queue SmartMobility entity IDs in RabbitMQ for import without matching, deactivation or score deletion. Runs on every call; set false to reconcile only the client resources.",
"in": "query",
"name": "initialisation_import",
"required": false,
"schema": {
"default": true,
"description": "Queue SmartMobility entity IDs in RabbitMQ for import without matching, deactivation or score deletion. Runs on every call; set false to reconcile only the client resources.",
"examples": [
true
],
"title": "Initialisation Import",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"examples": {
"resources_only": {
"value": {
"message": "Client resources are ready. Initial imports were not requested.",
"status": "ready"
}
},
"with_import": {
"value": {
"message": "Client resources are ready. Initial imports were scheduled.",
"status": "ready",
"task_id": "2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
}
}
},
"schema": {
"$ref": "#/components/schemas/ClientCreationResponse"
}
}
},
"description": "Resource reconciliation and registration completed; imports may still be running."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"500": {
"content": {
"application/json": {
"example": {
"detail": "Client resource provisioning failed. Initial imports were not scheduled."
}
}
},
"description": "Resource provisioning failed; no imports were scheduled."
},
"503": {
"content": {
"application/json": {
"example": {
"detail": "Administrative task capacity is unavailable. Try again later."
}
}
},
"description": "Administrative execution is unavailable; retry with the same client identity."
}
}
Referenced definitions: components/schemas/ClientCreationResponse, components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "create_new_client_api_v1_clients_post",
"tags": [
"Clients"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/clients/exists¶
Check Client Exists
Database compatibility: MongoDB only.
Check ClientConfig registration using the same identity as client creation.
This read-only MongoDB operation does not inspect the physical tenant database or create any configuration. Query strings have no JSON null: omit optional parameters or send empty values to request their defaults.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"description": "Client ID to look up.",
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"description": "Client ID to look up.",
"examples": [
"725"
],
"minLength": 1,
"pattern": "\\S",
"title": "Client Id",
"type": "string"
}
},
{
"description": "Deployment environment. Omitted, null or blank input uses the application environment shown in Swagger: APP_IDENTIFIER_SHORT, or ENV when the identifier is unset, blank or mutu. A nonblank value must match the application environment.",
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Deployment environment. Omitted, null or blank input uses the application environment shown in Swagger: APP_IDENTIFIER_SHORT, or ENV when the identifier is unset, blank or mutu. A nonblank value must match the application environment.",
"examples": [
"integration"
],
"title": "Environment"
}
},
{
"description": "Data source, matched in lowercase. Omitted, null or blank input uses smartmobility.",
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": "smartmobility",
"description": "Data source, matched in lowercase. Omitted, null or blank input uses smartmobility.",
"examples": [
"smartmobility"
],
"title": "Data Source"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"examples": {
"registered": {
"value": {
"exists": true
}
},
"unregistered": {
"value": {
"exists": false
}
}
},
"schema": {
"$ref": "#/components/schemas/ClientExistenceResponse"
}
}
},
"description": "ClientConfig lookup result; an unregistered client also returns 200."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/ClientExistenceResponse, components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "check_client_exists_api_v1_clients_exists_get",
"tags": [
"Clients"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/clients/indexes¶
Ensure Client Database Indexes
Database compatibility: MongoDB only.
Return the index plan directly, or schedule reconciliation when apply=true.
Dry runs do not create an administrative task or send email. Their completed report includes per-resource errors in error_count, counts and actions. Without db_name, the report has db_name=null and combines configured clients and reference_data; each database is processed once, using its existing catalog. Both client provisioning and repair reconcile catalog-managed collections: update Search/Vector definitions and eligible TTL settings in place, replace incompatible indexes, and remove obsolete or duplicate indexes. The MongoDB identity index is retained. Atlas builds remain asynchronous after acceptance. ClientConfig registrations with dataSource=pwc (case-insensitive) also receive the PwC score indexes. PwC indexes outside the catalog are preserved; conflicts with external classic indexes are reported for manual review without deletion. reference_data always uses its dedicated catalog, regardless of registrations.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"description": "Database to inspect. Omit to process all configured client databases (including PwC) and reference_data on the connected cluster, including its managed skill collections.",
"in": "query",
"name": "db_name",
"required": false,
"schema": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"description": "Database to inspect. Omit to process all configured client databases (including PwC) and reference_data on the connected cluster, including its managed skill collections.",
"examples": [
"725_smartmobility_integration",
"client-1_pwc_integration",
"reference_data"
],
"title": "Db Name"
}
},
{
"description": "False (default): wait for the read-only plan and return it with HTTP 200. True: reconcile in the background and return HTTP 202 with a task ID; the completion report is sent by email.",
"in": "query",
"name": "apply",
"required": false,
"schema": {
"default": false,
"description": "False (default): wait for the read-only plan and return it with HTTP 200. True: reconcile in the background and return HTTP 202 with a task ID; the completion report is sent by email.",
"examples": [
false,
true
],
"title": "Apply",
"type": "boolean"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseIndexRepairResponse"
}
}
},
"description": "Completed read-only reconciliation plan (apply=false)."
},
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Reconciliation scheduled in the background (apply=true)."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/DatabaseIndexRepairResponse, components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "ensure_client_database_indexes_api_v1_clients_indexes_post",
"tags": [
"Clients"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/configuration/ai-providers-and-models¶
Get Ai Providers And Models
Database compatibility: MongoDB + PostgreSQL.
Retrieve AI providers and models.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "get_ai_providers_and_models_api_v1_configuration_ai_providers_and_models_get",
"tags": [
"Configuration"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/configuration/client-databases¶
Get Client Database Config
Database compatibility: MongoDB only.
Retrieve client database config.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Client Id"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Data Source"
}
},
{
"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_client_database_config_api_v1_configuration_client_databases_get",
"tags": [
"Configuration"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/configuration/clients¶
Get Client Config
Database compatibility: MongoDB + PostgreSQL.
Retrieve client config.
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": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "get_client_config_api_v1_configuration_clients_get",
"tags": [
"Configuration"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
PUT /admin/api/v1/configuration/clients¶
Update Client Config
Database compatibility: MongoDB + PostgreSQL.
Update client config.
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¶
{
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Config",
"type": "object"
}
}
},
"required": true
}
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": "update_client_config_api_v1_configuration_clients_put",
"tags": [
"Configuration"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
PUT /admin/api/v1/configuration/clients/normalize¶
Normalize Client Configurations
Database compatibility: MongoDB + PostgreSQL.
Normalize stored configuration against the canonical client template.
Add missing defaults, remove obsolete structural keys and preserve existing values, lists, hard filters, rules and client-defined configuration mappings. With no MongoDB client ID, process all registered clients across data sources and environments on the connected instance and report individual failures. Return HTTP 202 after admission. Email the normalized, unchanged and failed counts after completion; stored structural errors are reported in that email.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"description": "MongoDB client ID; omit to normalize all registered clients. PostgreSQL uses one database-wide configuration.",
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "MongoDB client ID; omit to normalize all registered clients. PostgreSQL uses one database-wide configuration.",
"examples": [
"725"
],
"title": "Client Id"
}
},
{
"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¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"404": {
"description": "The requested client database or configuration was not found."
},
"422": {
"description": "The notification configuration is missing or invalid."
}
}
Referenced definitions: components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "normalize_client_configurations_api_v1_configuration_clients_normalize_put",
"tags": [
"Configuration"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/consumers/postgres-listener/restart¶
Restart Postgres Listener
Database compatibility: PostgreSQL only.
Restart the PostgreSQL notification listener and every PostgreSQL job worker.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "restart_postgres_listener_api_v1_consumers_postgres_listener_restart_get",
"tags": [
"Consumers"
],
"x-database-compatibility": "PostgreSQL only"
}
GET /admin/api/v1/consumers/postgres-listener/start¶
Start Postgres Listener
Database compatibility: PostgreSQL only.
Start the PostgreSQL notification listener and every PostgreSQL job worker.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "start_postgres_listener_api_v1_consumers_postgres_listener_start_get",
"tags": [
"Consumers"
],
"x-database-compatibility": "PostgreSQL only"
}
GET /admin/api/v1/consumers/postgres-listener/stop¶
Stop Postgres Listener
Database compatibility: PostgreSQL only.
Stop the PostgreSQL notification listener and every PostgreSQL job worker.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "stop_postgres_listener_api_v1_consumers_postgres_listener_stop_get",
"tags": [
"Consumers"
],
"x-database-compatibility": "PostgreSQL only"
}
GET /admin/api/v1/consumers/restart¶
Restart Consumers
Database compatibility: MongoDB only.
Restart the RabbitMQ consumers used by the MongoDB runtime.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "restart_consumers_api_v1_consumers_restart_get",
"tags": [
"Consumers"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/consumers/start¶
Start Consumers
Database compatibility: MongoDB only.
Start the RabbitMQ consumers used by the MongoDB runtime.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "start_consumers_api_v1_consumers_start_get",
"tags": [
"Consumers"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/consumers/stop¶
Stop Consumers
Database compatibility: MongoDB only.
Stop the RabbitMQ consumers used by the MongoDB runtime.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "stop_consumers_api_v1_consumers_stop_get",
"tags": [
"Consumers"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/diagnostics/current-datetime¶
Current Datetime
Database compatibility: MongoDB + PostgreSQL.
Return the current UTC date and time.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Successful Response"
}
}
Operation metadata¶
{
"operationId": "current_datetime_api_v1_diagnostics_current_datetime_get",
"tags": [
"Diagnostics"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/diagnostics/environment¶
Display Variables
Database compatibility: MongoDB + PostgreSQL.
Return sanitized runtime configuration flags to administrators.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"example": {
"DATABASE_URL is present": false,
"ENV": "production",
"RABBITMQ_URL is present": true
},
"schema": {}
}
},
"description": "Runtime configuration values and presence flags for administrators."
}
}
Operation metadata¶
{
"operationId": "display_variables_api_v1_diagnostics_environment_get",
"tags": [
"Diagnostics"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/diagnostics/postgres/jobs/summary¶
Summarize Postgres Jobs
Database compatibility: PostgreSQL only.
Return exact status counts for every PostgreSQL listener job table.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PostgresJobSummaryResponse"
}
}
},
"description": "Successful Response"
}
}
Referenced definitions: components/schemas/PostgresJobSummaryResponse.
Operation metadata¶
{
"operationId": "summarize_postgres_jobs_api_v1_diagnostics_postgres_jobs_summary_get",
"tags": [
"Diagnostics"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/diagnostics/postgres/migrations/run¶
Trigger Postgres Migrations
Database compatibility: PostgreSQL only.
Schedule Alembic migrations and email revision metadata or a sanitized failure.
The worker stops the PostgreSQL listener and restarts it only after success. Notification recipients come from the template, so admission does not require an initialized PostgreSQL configuration table.
Path parameters and metadata¶
Authentication¶
Parameters¶
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
}
}
Referenced definitions: components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "trigger_postgres_migrations_api_v1_diagnostics_postgres_migrations_run_post",
"tags": [
"Diagnostics"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/entity-imports/jobs¶
Import All Jobs
Database compatibility: MongoDB only.
Import and standardize all or selected jobs in the background.
Return 202 with a task_id after tenant and report-recipient validation. Once the import finishes, send its Import report to report_mail_addresses, using the same format, counts and statuses as client creation and the client batch workflows. Empty or disabled imports are reported as no_data or skipped; failures retain their failed IDs and trigger a terminal failure summary.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "deactivate_entities",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Deactivate Entities",
"type": "boolean"
}
},
{
"in": "query",
"name": "clean_deactivated_entities_scores",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Clean Deactivated Entities Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Body_import_all_jobs_api_v1_entity_imports_jobs_post"
}
}
}
}
Referenced definitions: components/schemas/Body_import_all_jobs_api_v1_entity_imports_jobs_post.
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "import_all_jobs_api_v1_entity_imports_jobs_post",
"tags": [
"Entity Imports"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/entity-imports/opportunities¶
Import All Opportunities
Database compatibility: MongoDB only.
Import and standardize all or selected opportunities in the background.
Return 202 with a task_id after tenant and report-recipient validation. Once the import finishes, send its Import report to report_mail_addresses, using the same format, counts and statuses as client creation and the client batch workflows. Empty or disabled imports are reported as no_data or skipped; failures retain their failed IDs and trigger a terminal failure summary.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "deactivate_entities",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Deactivate Entities",
"type": "boolean"
}
},
{
"in": "query",
"name": "clean_deactivated_entities_scores",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Clean Deactivated Entities Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Body_import_all_opportunities_api_v1_entity_imports_opportunities_post"
}
}
}
}
Referenced definitions: components/schemas/Body_import_all_opportunities_api_v1_entity_imports_opportunities_post.
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "import_all_opportunities_api_v1_entity_imports_opportunities_post",
"tags": [
"Entity Imports"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/entity-imports/skills¶
Import New Skills
Database compatibility: MongoDB only.
Import new skills.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"725"
],
"title": "Client Id"
}
},
{
"in": "query",
"name": "reference_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"examples": [
123
],
"title": "Reference Id"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "source_database",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"smartmobility_io"
],
"title": "Source Database"
}
},
{
"in": "query",
"name": "collection_name",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"skills_integration_smartmobility"
],
"title": "Collection Name"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "import_new_skills_api_v1_entity_imports_skills_post",
"tags": [
"Entity Imports"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/entity-imports/trainings¶
Import All Trainings
Database compatibility: MongoDB only.
Import and standardize all or selected trainings in the background.
Return 202 with a task_id after tenant and report-recipient validation. Once the import finishes, send its Import report to report_mail_addresses, using the same format, counts and statuses as client creation and the client batch workflows. Empty or disabled imports are reported as no_data or skipped; failures retain their failed IDs and trigger a terminal failure summary.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "deactivate_entities",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Deactivate Entities",
"type": "boolean"
}
},
{
"in": "query",
"name": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Body_import_all_trainings_api_v1_entity_imports_trainings_post"
}
}
}
}
Referenced definitions: components/schemas/Body_import_all_trainings_api_v1_entity_imports_trainings_post.
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "import_all_trainings_api_v1_entity_imports_trainings_post",
"tags": [
"Entity Imports"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/entity-imports/users¶
Import All Users
Database compatibility: MongoDB only.
Import and standardize all or selected users in the background.
Return 202 with a task_id after tenant and report-recipient validation. Once the import finishes, send its Import report to report_mail_addresses, using the same format, counts and statuses as client creation and the client batch workflows. Empty or disabled imports are reported as no_data or skipped; failures retain their failed IDs and trigger a terminal failure summary.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "deactivate_entities",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Deactivate Entities",
"type": "boolean"
}
},
{
"in": "query",
"name": "clean_deactivated_entities_scores",
"required": false,
"schema": {
"default": true,
"examples": [
false
],
"title": "Clean Deactivated Entities Scores",
"type": "boolean"
}
},
{
"in": "query",
"name": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Body_import_all_users_api_v1_entity_imports_users_post"
}
}
}
}
Referenced definitions: components/schemas/Body_import_all_users_api_v1_entity_imports_users_post.
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "import_all_users_api_v1_entity_imports_users_post",
"tags": [
"Entity Imports"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/entity-maintenance/opportunities/infer-skills¶
Opportunity Skills Inferring
Database compatibility: MongoDB only.
Schedule MongoDB opportunity inference and email its terminal outcome.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "force_inferring",
"required": false,
"schema": {
"default": true,
"examples": [
true
],
"title": "Force Inferring",
"type": "boolean"
}
},
{
"in": "query",
"name": "delete_inferring",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Delete Inferring",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "opportunity_skills_inferring_api_v1_entity_maintenance_opportunities_infer_skills_get",
"tags": [
"Entity Maintenance"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/entity-maintenance/opportunities/synchronize¶
Synchronize Opportunities Endpoint
Database compatibility: MongoDB only.
Return verification counters directly, or schedule status synchronization.
With check_only=true, no administrative task is created and no email is sent. Parsing and database errors are returned through the normal HTTP boundary. Applying changes preserves the initial comparison counters. Missing offers are never created. Closing retains cleanup of scores and embeddings; delete_deactivated_data controls physical deletion of closed offers.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"default": "1000",
"examples": [
"1000"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "pwc",
"examples": [
"pwc"
],
"title": "Data Source",
"type": "string"
}
},
{
"description": "True (default): wait for the read-only comparison and return its counters with HTTP 200. False: close offers absent from the file and reopen stored closed offers present in it, in the background, and return HTTP 202 with a task ID; the completion report is sent by email.",
"in": "query",
"name": "check_only",
"required": false,
"schema": {
"default": true,
"description": "True (default): wait for the read-only comparison and return its counters with HTTP 200. False: close offers absent from the file and reopen stored closed offers present in it, in the background, and return HTTP 202 with a task ID; the completion report is sent by email.",
"examples": [
true,
false
],
"title": "Check Only",
"type": "boolean"
}
},
{
"in": "query",
"name": "pwc_staging_or_prod",
"required": false,
"schema": {
"default": "prod",
"examples": [
"prod"
],
"title": "Pwc Staging Or Prod",
"type": "string"
}
}
]
Request body¶
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/Body_synchronize_opportunities_endpoint_api_v1_entity_maintenance_opportunities_synchronize_post"
}
}
},
"required": true
}
Referenced definitions: components/schemas/Body_synchronize_opportunities_endpoint_api_v1_entity_maintenance_opportunities_synchronize_post.
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OpportunitySynchronizationResponse"
}
}
},
"description": "Completed read-only status comparison (check_only=true)."
},
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Closing and reopening of existing opportunities scheduled in the background (check_only=false)."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted, components/schemas/OpportunitySynchronizationResponse.
Operation metadata¶
{
"operationId": "synchronize_opportunities_endpoint_api_v1_entity_maintenance_opportunities_synchronize_post",
"tags": [
"Entity Maintenance"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/entity-maintenance/users/infer-skills¶
User Skills Inferring
Database compatibility: MongoDB + PostgreSQL.
Schedule MongoDB inference and email its outcome, or return the existing PostgreSQL job.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "force_inferring",
"required": false,
"schema": {
"default": true,
"examples": [
true
],
"title": "Force Inferring",
"type": "boolean"
}
},
{
"in": "query",
"name": "delete_inferring",
"required": false,
"schema": {
"default": false,
"examples": [
false
],
"title": "Delete Inferring",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"example": {
"jobId": 42,
"message": "success",
"status": "pending"
}
}
},
"description": "PostgreSQL durable reconciliation job scheduled; use the existing job status endpoint."
},
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "MongoDB maintenance accepted."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "user_skills_inferring_api_v1_entity_maintenance_users_infer_skills_get",
"tags": [
"Entity Maintenance"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/entity-maintenance/users/infer-skills/jobs/{job_id}¶
User Skills Inferring Job Status
Database compatibility: PostgreSQL only.
Handle the user skills inferring job status API request.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "path",
"name": "job_id",
"required": true,
"schema": {
"title": "Job Id",
"type": "integer"
}
}
]
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": "user_skills_inferring_job_status_api_v1_entity_maintenance_users_infer_skills_jobs__job_id__get",
"tags": [
"Entity Maintenance"
],
"x-database-compatibility": "PostgreSQL only"
}
GET /admin/api/v1/matching/batches/jom/opportunities¶
Process Opportunity All Endpoint
Database compatibility: MongoDB + PostgreSQL.
Recalculate JOM opportunities and email the completed phase report.
Return 202 with a task_id after tenant and report-recipient validation. The report uses the same JOM opportunities label, counters and statuses as the client matching and full workflows. Disabled matching is reported as skipped and empty batches as no_data. Per-entity failures retain their failed IDs; failures also trigger a terminal failure summary. No entities are imported.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "pwc_staging_or_prod",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"staging"
],
"title": "Pwc Staging Or Prod"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "process_opportunity_all_endpoint_api_v1_matching_batches_jom_opportunities_get",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/matching/batches/jom/users¶
Process User All Endpoint
Database compatibility: MongoDB + PostgreSQL.
Recalculate JOM users and email the completed phase report.
Return 202 with a task_id after tenant and report-recipient validation. The report uses the same JOM users label, counters and statuses as the client matching and full workflows. Disabled matching is reported as skipped and empty batches as no_data. Per-entity failures retain their failed IDs; failures also trigger a terminal failure summary. No entities are imported.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "pwc_staging_or_prod",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"staging"
],
"title": "Pwc Staging Or Prod"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "process_user_all_endpoint_api_v1_matching_batches_jom_users_get",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/matching/batches/jpm¶
Process Job All Endpoint
Database compatibility: MongoDB + PostgreSQL.
Recalculate JPM and email the completed phase report.
Return 202 with a task_id after tenant and report-recipient validation. The report uses the same JPM label, counters and statuses as the client matching and full workflows. Disabled matching is reported as skipped and empty batches as no_data. Per-entity failures retain their failed IDs; failures also trigger a terminal failure summary. No entities are imported.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"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": "number_of_threads",
"required": false,
"schema": {
"default": 8,
"examples": [
8
],
"minimum": 1,
"title": "Number Of Threads",
"type": "integer"
}
},
{
"in": "query",
"name": "pwc_staging_or_prod",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"staging"
],
"title": "Pwc Staging Or Prod"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "process_job_all_endpoint_api_v1_matching_batches_jpm_get",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /admin/api/v1/matching/jom/scores/opportunities/publish¶
Send Jom Opportunity Scores
Database compatibility: MongoDB only.
Publish JOM opportunity scores.
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": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "send_jom_opportunity_scores_api_v1_matching_jom_scores_opportunities_publish_post",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/matching/jom/scores/users/publish¶
Send Jom User Scores
Database compatibility: MongoDB only.
Publish JOM user scores.
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": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "send_jom_user_scores_api_v1_matching_jom_scores_users_publish_post",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/matching/jpm/scores/jobs/publish¶
Send Jpm Job Scores
Database compatibility: MongoDB only.
Publish stored JPM job scores in batches of at most 10,000 records.
Publication uses streaming.jpm.job. Return HTTP 202 and email the result after every batch has completed. No matching scores are recomputed.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"description": "Job ID to publish; omit to publish all JPM scores.",
"in": "query",
"name": "job_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Job ID to publish; omit to publish all JPM scores.",
"examples": [
"1042"
],
"title": "Job Id"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"400": {
"description": "Score publication requires MongoDB mode."
},
"404": {
"description": "The requested client database was not found."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "send_jpm_job_scores_api_v1_matching_jpm_scores_jobs_publish_post",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB only"
}
POST /admin/api/v1/matching/jpm/scores/users/publish¶
Send Jpm User Scores
Database compatibility: MongoDB only.
Publish JPM user scores.
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": {}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError.
Operation metadata¶
{
"operationId": "send_jpm_user_scores_api_v1_matching_jpm_scores_users_publish_post",
"tags": [
"Matching"
],
"x-database-compatibility": "MongoDB only"
}
GET /admin/api/v1/operations/{task_id}¶
Get Operation Status
Database compatibility: No database.
Return running, success or fail while the task is retained in memory.
Waiting tasks count as running. Partial failures and cancellations count as fail. Each worker keeps its latest 1,000 completed outcomes, independently of email delivery. Lookup covers sibling workers in the same container, without a database, persistence or a heartbeat. Other containers and durable PostgreSQL job IDs are outside this endpoint's scope.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"description": "Task ID returned by an administrative HTTP 202 response.",
"in": "path",
"name": "task_id",
"required": true,
"schema": {
"description": "Task ID returned by an administrative HTTP 202 response.",
"examples": [
"2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
],
"format": "uuid",
"title": "Task Id",
"type": "string"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"examples": {
"fail": {
"value": {
"status": "fail",
"task_id": "2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
}
},
"running": {
"value": {
"status": "running",
"task_id": "2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
}
},
"success": {
"value": {
"status": "success",
"task_id": "2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
}
}
},
"schema": {
"$ref": "#/components/schemas/OperationStatusResponse"
}
}
},
"description": "Execution state retained in a worker's memory."
},
"404": {
"content": {
"application/json": {
"example": {
"detail": "Unknown task: not present in the workers."
}
}
},
"description": "Unknown, evicted or lost after a worker restart."
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
},
"503": {
"content": {
"application/json": {
"example": {
"detail": "Administrative task status is unavailable. Try again later."
}
}
},
"description": "The worker lookup could not be completed."
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationStatusResponse.
Operation metadata¶
{
"operationId": "get_operation_status_api_v1_operations__task_id__get",
"tags": [
"Operations"
],
"x-database-compatibility": "No database"
}
POST /admin/api/v1/postgres-initialization/all¶
Initialize All Postgres Entities
Database compatibility: PostgreSQL only.
Initialize every entity sequentially for one client or the whole database.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Client Id"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Initialize All Postgres Entities Api V1 Postgres Initialization All Post",
"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": "initialize_all_postgres_entities_api_v1_postgres_initialization_all_post",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/postgres-initialization/jobs¶
Initialize Postgres Jobs
Database compatibility: PostgreSQL only.
Initialize missing job embeddings.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Client Id"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Initialize Postgres Jobs Api V1 Postgres Initialization Jobs Post",
"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": "initialize_postgres_jobs_api_v1_postgres_initialization_jobs_post",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/postgres-initialization/opportunities¶
Initialize Postgres Opportunities
Database compatibility: PostgreSQL only.
Initialize missing opportunity enrichments and embeddings.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Client Id"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Initialize Postgres Opportunities Api V1 Postgres Initialization Opportunities Post",
"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": "initialize_postgres_opportunities_api_v1_postgres_initialization_opportunities_post",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
GET /admin/api/v1/postgres-initialization/runs/{job_id}¶
Get Postgres Initialization Run
Database compatibility: PostgreSQL only.
Return durable progress for a PostgreSQL initialization run.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "path",
"name": "job_id",
"required": true,
"schema": {
"title": "Job Id",
"type": "integer"
}
}
]
Request body¶
Responses¶
{
"200": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Get Postgres Initialization Run Api V1 Postgres Initialization Runs Job Id 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_postgres_initialization_run_api_v1_postgres_initialization_runs__job_id__get",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/postgres-initialization/skills¶
Initialize Postgres Skills
Database compatibility: PostgreSQL only.
Initialize missing skill embeddings for one client or the whole database.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Client Id"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Initialize Postgres Skills Api V1 Postgres Initialization Skills Post",
"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": "initialize_postgres_skills_api_v1_postgres_initialization_skills_post",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/postgres-initialization/trainings¶
Initialize Postgres Trainings
Database compatibility: PostgreSQL only.
Initialize missing training enrichments and embeddings.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Client Id"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Initialize Postgres Trainings Api V1 Postgres Initialization Trainings Post",
"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": "initialize_postgres_trainings_api_v1_postgres_initialization_trainings_post",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/postgres-initialization/users¶
Initialize Postgres Users
Database compatibility: PostgreSQL only.
Initialize user profiles, skill gaps and inferred skills.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Client Id"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"additionalProperties": true,
"title": "Response Initialize Postgres Users Api V1 Postgres Initialization Users Post",
"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": "initialize_postgres_users_api_v1_postgres_initialization_users_post",
"tags": [
"PostgreSQL Initialization"
],
"x-database-compatibility": "PostgreSQL only"
}
POST /admin/api/v1/rag/reindex-company¶
Reindex Company Rag
Database compatibility: MongoDB + PostgreSQL.
Trigger an incremental or full RAG synchronization for one company.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "client_id",
"required": true,
"schema": {
"examples": [
"725"
],
"title": "Client Id",
"type": "string"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "pwc",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "mode",
"required": false,
"schema": {
"default": "update",
"enum": [
"update",
"full"
],
"examples": [
"update"
],
"title": "Mode",
"type": "string"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "reindex_company_rag_api_v1_rag_reindex_company_post",
"tags": [
"RAG"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/reports/active-jobs¶
Get Number Of Active Jobs
Database compatibility: MongoDB + PostgreSQL.
Retrieve number of active jobs.
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": {}
}
},
"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_jobs_api_v1_reports_active_jobs_get",
"tags": [
"Reports"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/reports/active-opportunities¶
Get Number Of Active Opportunities
Database compatibility: MongoDB + PostgreSQL.
Retrieve number of active 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": {}
}
},
"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_api_v1_reports_active_opportunities_get",
"tags": [
"Reports"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/reports/active-users¶
Get Number Of Active Users
Database compatibility: MongoDB + PostgreSQL.
Retrieve number of active 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": {}
}
},
"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_api_v1_reports_active_users_get",
"tags": [
"Reports"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
GET /admin/api/v1/reports/pwc-matchings¶
Export Pwc Matchings Report
Database compatibility: MongoDB + PostgreSQL.
Schedule the PwC export and email its terminal outcome to configured recipients.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"in": "query",
"name": "pwc_staging_or_prod",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"prod"
],
"title": "Pwc Staging Or Prod"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "export_pwc_matchings_report_api_v1_reports_pwc_matchings_get",
"tags": [
"Reports"
],
"x-database-compatibility": "MongoDB + PostgreSQL"
}
POST /admin/api/v1/skills-library/embeddings/regenerate¶
Generate New Skill Embeddings Model
Database compatibility: MongoDB only.
Generate new skill embeddings model.
Path parameters and metadata¶
Authentication¶
Parameters¶
[
{
"description": "Collection to process. Omit to process every collection in reference_data sequentially.",
"in": "query",
"name": "collection_name",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Collection to process. Omit to process every collection in reference_data sequentially.",
"examples": [
"skills_integration_smartmobility"
],
"title": "Collection Name"
}
},
{
"in": "query",
"name": "client_id",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"examples": [
"123"
],
"title": "Client Id"
}
},
{
"in": "query",
"name": "data_source",
"required": false,
"schema": {
"default": "smartmobility",
"examples": [
"smartmobility"
],
"title": "Data Source",
"type": "string"
}
},
{
"in": "query",
"name": "ai_provider",
"required": false,
"schema": {
"default": "ovh",
"examples": [
"ovh"
],
"title": "Ai Provider",
"type": "string"
}
},
{
"description": "Use a model key configured for the selected provider, or omit it to use its default.",
"in": "query",
"name": "embedding_model",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Use a model key configured for the selected provider, or omit it to use its default.",
"examples": [
null
],
"title": "Embedding Model"
}
},
{
"description": "True completes only skills with a missing, null or empty English title or model vector. False regenerates every vector. Embeddings always use title_en.",
"in": "query",
"name": "update_embeddings",
"required": false,
"schema": {
"default": false,
"description": "True completes only skills with a missing, null or empty English title or model vector. False regenerates every vector. Embeddings always use title_en.",
"examples": [
true
],
"title": "Update Embeddings",
"type": "boolean"
}
},
{
"in": "query",
"name": "environment",
"required": false,
"schema": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Environment"
}
}
]
Request body¶
Responses¶
{
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OperationAccepted"
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
},
"description": "Validation Error"
}
}
Referenced definitions: components/schemas/HTTPValidationError, components/schemas/OperationAccepted.
Operation metadata¶
{
"operationId": "generate_new_skill_embeddings_model_api_v1_skills_library_embeddings_regenerate_post",
"tags": [
"Skills Library"
],
"x-database-compatibility": "MongoDB only"
}
Shared definitions¶
Body_import_all_jobs_api_v1_entity_imports_jobs_post (schemas)¶
{
"properties": {
"import_job_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Import Job Ids",
"type": "array"
},
"infer_skills_job_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Infer Skills Job Ids",
"type": "array"
}
},
"title": "Body_import_all_jobs_api_v1_entity_imports_jobs_post",
"type": "object"
}
Body_import_all_opportunities_api_v1_entity_imports_opportunities_post (schemas)¶
{
"properties": {
"import_opportunity_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Import Opportunity Ids",
"type": "array"
},
"infer_skills_opportunity_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Infer Skills Opportunity Ids",
"type": "array"
}
},
"title": "Body_import_all_opportunities_api_v1_entity_imports_opportunities_post",
"type": "object"
}
Body_import_all_trainings_api_v1_entity_imports_trainings_post (schemas)¶
{
"properties": {
"import_training_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Import Training Ids",
"type": "array"
},
"infer_skills_training_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Infer Skills Training Ids",
"type": "array"
}
},
"title": "Body_import_all_trainings_api_v1_entity_imports_trainings_post",
"type": "object"
}
Body_import_all_users_api_v1_entity_imports_users_post (schemas)¶
{
"properties": {
"import_user_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Import User Ids",
"type": "array"
},
"infer_skills_user_ids": {
"default": [],
"examples": [
[
"entity-101",
"entity-102"
]
],
"items": {
"type": "string"
},
"title": "Infer Skills User Ids",
"type": "array"
}
},
"title": "Body_import_all_users_api_v1_entity_imports_users_post",
"type": "object"
}
Body_synchronize_opportunities_endpoint_api_v1_entity_maintenance_opportunities_synchronize_post (schemas)¶
{
"properties": {
"open_opportunities_file": {
"contentMediaType": "application/octet-stream",
"description": "Upload a CSV with a jobOpportunityKey column or a JSON array such as [{\"jobOpportunityKey\": 1042}]. Supply the actual list of open opportunities for the selected client. The bounded file is copied before processing.",
"title": "Open Opportunities File",
"type": "string"
}
},
"required": [
"open_opportunities_file"
],
"title": "Body_synchronize_opportunities_endpoint_api_v1_entity_maintenance_opportunities_synchronize_post",
"type": "object"
}
ClientCreationResponse (schemas)¶
{
"additionalProperties": false,
"description": "Confirm resource commands completed without claiming imports are finished.",
"properties": {
"message": {
"examples": [
"Client resources are ready. Initial imports were scheduled."
],
"title": "Message",
"type": "string"
},
"status": {
"const": "ready",
"default": "ready",
"title": "Status",
"type": "string"
},
"task_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Initial import task ID, or null when initialization was disabled.",
"examples": [
"2e43f9d9-1d80-4a20-9c4d-4f47182fabdd",
null
],
"title": "Task Id"
}
},
"required": [
"message"
],
"title": "ClientCreationResponse",
"type": "object"
}
ClientExistenceResponse (schemas)¶
{
"additionalProperties": false,
"description": "Whether ClientConfig contains the requested client identity.",
"properties": {
"exists": {
"description": "True when a matching ClientConfig document exists.",
"examples": [
true,
false
],
"title": "Exists",
"type": "boolean"
}
},
"required": [
"exists"
],
"title": "ClientExistenceResponse",
"type": "object"
}
DatabaseIndexRepairResponse (schemas)¶
{
"description": "Report for one database or configured clients and shared reference data.",
"example": {
"actions": [
{
"collection": "Users",
"database": "725_smartmobility_integration",
"index_name": "user_id_unique",
"kind": "standard",
"operation": "keep",
"reason": "Required definition already exists."
},
{
"collection": "ChatMessageLog",
"database": "725_smartmobility_integration",
"index_name": "chat_conversation_history_idx",
"kind": "standard",
"operation": "create",
"reason": "Required index is missing."
},
{
"collection": "Skills",
"database": "725_smartmobility_integration",
"index_name": "skills_autocomplete",
"kind": "search",
"operation": "update",
"reason": "definition differs from the managed catalog"
},
{
"collection": "Skills",
"database": "725_smartmobility_integration",
"index_name": "ada_002_vector_index",
"kind": "vector",
"operation": "update",
"reason": "definition differs from the managed catalog"
},
{
"collection": "Skills",
"database": "725_smartmobility_integration",
"index_name": "obsolete_autocomplete",
"kind": "search",
"operation": "drop",
"reason": "definition is absent from the managed catalog"
}
],
"apply": false,
"counts": {
"create": 1,
"drop": 1,
"keep": 1,
"update": 2
},
"db_name": "725_smartmobility_integration",
"error_count": 0
},
"properties": {
"actions": {
"items": {
"$ref": "#/components/schemas/IndexActionResponse"
},
"title": "Actions",
"type": "array"
},
"apply": {
"title": "Apply",
"type": "boolean"
},
"counts": {
"additionalProperties": {
"type": "integer"
},
"title": "Counts",
"type": "object"
},
"db_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Db Name"
},
"error_count": {
"title": "Error Count",
"type": "integer"
}
},
"required": [
"db_name",
"apply",
"error_count",
"counts",
"actions"
],
"title": "DatabaseIndexRepairResponse",
"type": "object"
}
Referenced definitions: components/schemas/IndexActionResponse.
HTTPValidationError (schemas)¶
{
"properties": {
"detail": {
"items": {
"$ref": "#/components/schemas/ValidationError"
},
"title": "Detail",
"type": "array"
}
},
"title": "HTTPValidationError",
"type": "object"
}
Referenced definitions: components/schemas/ValidationError.
IndexActionResponse (schemas)¶
{
"description": "One reconciliation decision for a managed MongoDB resource.",
"properties": {
"collection": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Collection"
},
"database": {
"title": "Database",
"type": "string"
},
"index_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Index Name"
},
"kind": {
"enum": [
"standard",
"search",
"vector",
"collection",
"database"
],
"title": "Kind",
"type": "string"
},
"operation": {
"enum": [
"keep",
"create",
"update",
"drop",
"deduplicate",
"skip",
"error"
],
"title": "Operation",
"type": "string"
},
"reason": {
"title": "Reason",
"type": "string"
}
},
"required": [
"operation",
"database",
"collection",
"kind",
"index_name",
"reason"
],
"title": "IndexActionResponse",
"type": "object"
}
OperationAccepted (schemas)¶
{
"description": "Acknowledge scheduling; the final result is delivered by email.",
"example": {
"message": "Operation accepted. The completion report will be sent by email.",
"status": "accepted",
"task_id": "2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
},
"properties": {
"message": {
"default": "Operation accepted. The completion report will be sent by email.",
"title": "Message",
"type": "string"
},
"status": {
"const": "accepted",
"default": "accepted",
"title": "Status",
"type": "string"
},
"task_id": {
"examples": [
"2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
],
"title": "Task Id",
"type": "string"
}
},
"required": [
"task_id"
],
"title": "OperationAccepted",
"type": "object"
}
OperationState (schemas)¶
OperationStatusResponse (schemas)¶
{
"additionalProperties": false,
"description": "Expose only the execution state retained in worker memory.",
"properties": {
"status": {
"$ref": "#/components/schemas/OperationState",
"examples": [
"running",
"success",
"fail"
]
},
"task_id": {
"examples": [
"2e43f9d9-1d80-4a20-9c4d-4f47182fabdd"
],
"format": "uuid",
"title": "Task Id",
"type": "string"
}
},
"required": [
"task_id",
"status"
],
"title": "OperationStatusResponse",
"type": "object"
}
Referenced definitions: components/schemas/OperationState.
OpportunitySynchronizationResponse (schemas)¶
{
"description": "Describe the initial comparison, before any requested status changes.",
"example": {
"closed_need_to_be_opened": 1,
"correct_ones": 10,
"missing_opportunities": 1,
"opened_need_to_be_closed": 2
},
"properties": {
"closed_need_to_be_opened": {
"description": "Initially closed opportunities present in the upload; reopened when applying changes if still stored.",
"title": "Closed Need To Be Opened",
"type": "integer"
},
"correct_ones": {
"description": "Initially open opportunities present in the upload; already correct and left unchanged.",
"title": "Correct Ones",
"type": "integer"
},
"missing_opportunities": {
"description": "Uploaded identifiers absent from storage; repeated missing IDs count per uploaded row. No offers are created.",
"title": "Missing Opportunities",
"type": "integer"
},
"opened_need_to_be_closed": {
"description": "Initially open opportunities absent from the upload; closed or deleted when applying changes.",
"title": "Opened Need To Be Closed",
"type": "integer"
}
},
"required": [
"opened_need_to_be_closed",
"closed_need_to_be_opened",
"correct_ones",
"missing_opportunities"
],
"title": "OpportunitySynchronizationResponse",
"type": "object"
}
PostgresJobGroupSummary (schemas)¶
{
"description": "Counts for one discriminator value inside a shared queue table.",
"properties": {
"summary": {
"$ref": "#/components/schemas/PostgresJobStatusCounts"
},
"value": {
"title": "Value",
"type": "string"
}
},
"required": [
"value",
"summary"
],
"title": "PostgresJobGroupSummary",
"type": "object"
}
Referenced definitions: components/schemas/PostgresJobStatusCounts.
PostgresJobStatusCounts (schemas)¶
{
"description": "Exact job counts for one queue scope.",
"properties": {
"finished": {
"title": "Finished",
"type": "integer"
},
"outstanding": {
"title": "Outstanding",
"type": "integer"
},
"statuses": {
"additionalProperties": {
"type": "integer"
},
"title": "Statuses",
"type": "object"
},
"total": {
"title": "Total",
"type": "integer"
}
},
"required": [
"total",
"finished",
"outstanding",
"statuses"
],
"title": "PostgresJobStatusCounts",
"type": "object"
}
PostgresJobSummaryResponse (schemas)¶
{
"description": "Database-wide summary of every PostgreSQL listener queue.",
"properties": {
"generatedAt": {
"format": "date-time",
"title": "Generatedat",
"type": "string"
},
"summary": {
"$ref": "#/components/schemas/PostgresJobStatusCounts"
},
"tables": {
"items": {
"$ref": "#/components/schemas/PostgresJobTableSummary"
},
"title": "Tables",
"type": "array"
}
},
"required": [
"generatedAt",
"summary",
"tables"
],
"title": "PostgresJobSummaryResponse",
"type": "object"
}
Referenced definitions: components/schemas/PostgresJobStatusCounts, components/schemas/PostgresJobTableSummary.
PostgresJobTableSummary (schemas)¶
{
"description": "Counts and optional discriminator breakdown for one physical queue.",
"properties": {
"groupBy": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Groupby"
},
"groups": {
"items": {
"$ref": "#/components/schemas/PostgresJobGroupSummary"
},
"title": "Groups",
"type": "array"
},
"summary": {
"$ref": "#/components/schemas/PostgresJobStatusCounts"
},
"tableName": {
"title": "Tablename",
"type": "string"
}
},
"required": [
"tableName",
"groupBy",
"summary",
"groups"
],
"title": "PostgresJobTableSummary",
"type": "object"
}
Referenced definitions: components/schemas/PostgresJobGroupSummary, components/schemas/PostgresJobStatusCounts.
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"
}