-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmodel-api-openapi.json
More file actions
1 lines (1 loc) · 86.7 KB
/
model-api-openapi.json
File metadata and controls
1 lines (1 loc) · 86.7 KB
1
{"openapi":"3.1.0","info":{"title":"EVA Model API","description":"Machine-queryable HTTP interface to the EVA semantic object model. Every layer. Every object. Audit trail on every write.\n\n**Mode**: `COSMOS_URL` set → Cosmos DB. Unset → in-memory (ephemeral).\n\n**Admin token**: `Authorization: Bearer <ADMIN_TOKEN>` for /model/admin/* routes.","version":"1.0.0"},"paths":{"/model/services/":{"get":{"tags":["services"],"summary":"List all services","operationId":"list_objects_model_services__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active services objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Services Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/services/{obj_id}":{"get":{"tags":["services"],"summary":"Get one services object by id","operationId":"get_object_model_services__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Services Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["services"],"summary":"Create or update a services object","operationId":"upsert_object_model_services__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Services Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["services"],"summary":"Soft-delete a services object (is_active=false)","operationId":"delete_object_model_services__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Services Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/personas/":{"get":{"tags":["personas"],"summary":"List all personas","operationId":"list_objects_model_personas__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active personas objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Personas Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/personas/{obj_id}":{"get":{"tags":["personas"],"summary":"Get one personas object by id","operationId":"get_object_model_personas__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Personas Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["personas"],"summary":"Create or update a personas object","operationId":"upsert_object_model_personas__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Personas Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["personas"],"summary":"Soft-delete a personas object (is_active=false)","operationId":"delete_object_model_personas__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Personas Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/feature_flags/":{"get":{"tags":["feature_flags"],"summary":"List all feature_flags","operationId":"list_objects_model_feature_flags__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active feature_flags objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Feature Flags Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/feature_flags/{obj_id}":{"get":{"tags":["feature_flags"],"summary":"Get one feature_flags object by id","operationId":"get_object_model_feature_flags__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Feature Flags Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["feature_flags"],"summary":"Create or update a feature_flags object","operationId":"upsert_object_model_feature_flags__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Feature Flags Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["feature_flags"],"summary":"Soft-delete a feature_flags object (is_active=false)","operationId":"delete_object_model_feature_flags__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Feature Flags Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/containers/":{"get":{"tags":["containers"],"summary":"List all containers","operationId":"list_objects_model_containers__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active containers objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Containers Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/containers/{obj_id}":{"get":{"tags":["containers"],"summary":"Get one containers object by id","operationId":"get_object_model_containers__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Containers Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["containers"],"summary":"Create or update a containers object","operationId":"upsert_object_model_containers__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Containers Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["containers"],"summary":"Soft-delete a containers object (is_active=false)","operationId":"delete_object_model_containers__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Containers Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/endpoints/":{"get":{"tags":["endpoints"],"summary":"List all endpoints","operationId":"list_objects_model_endpoints__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active endpoints objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Endpoints Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/endpoints/filter":{"get":{"tags":["endpoints","endpoints"],"summary":"Filter endpoints by any combination of status, cosmos_writes, cosmos_reads, auth, feature_flag","operationId":"filter_endpoints_model_endpoints_filter_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"implemented | stub | planned","title":"Status"},"description":"implemented | stub | planned"},{"name":"cosmos_writes","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Container id written to, e.g. 'jobs'","title":"Cosmos Writes"},"description":"Container id written to, e.g. 'jobs'"},{"name":"cosmos_reads","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Container id read from","title":"Cosmos Reads"},"description":"Container id read from"},{"name":"auth","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Persona id that can call this endpoint","title":"Auth"},"description":"Persona id that can call this endpoint"},{"name":"feature_flag","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Feature flag id","title":"Feature Flag"},"description":"Feature flag id"},{"name":"service","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Service id, e.g. 'eva-brain-api'","title":"Service"},"description":"Service id, e.g. 'eva-brain-api'"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response Filter Endpoints Model Endpoints Filter Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/endpoints/{obj_id}":{"get":{"tags":["endpoints"],"summary":"Get one endpoints object by id","operationId":"get_object_model_endpoints__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Endpoints Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["endpoints"],"summary":"Create or update a endpoints object","operationId":"upsert_object_model_endpoints__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Endpoints Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["endpoints"],"summary":"Soft-delete a endpoints object (is_active=false)","operationId":"delete_object_model_endpoints__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Endpoints Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/schemas/":{"get":{"tags":["schemas"],"summary":"List all schemas","operationId":"list_objects_model_schemas__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active schemas objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Schemas Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/schemas/{obj_id}":{"get":{"tags":["schemas"],"summary":"Get one schemas object by id","operationId":"get_object_model_schemas__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Schemas Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["schemas"],"summary":"Create or update a schemas object","operationId":"upsert_object_model_schemas__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Schemas Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["schemas"],"summary":"Soft-delete a schemas object (is_active=false)","operationId":"delete_object_model_schemas__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Schemas Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/screens/":{"get":{"tags":["screens"],"summary":"List all screens","operationId":"list_objects_model_screens__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active screens objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Screens Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/screens/{obj_id}":{"get":{"tags":["screens"],"summary":"Get one screens object by id","operationId":"get_object_model_screens__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Screens Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["screens"],"summary":"Create or update a screens object","operationId":"upsert_object_model_screens__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Screens Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["screens"],"summary":"Soft-delete a screens object (is_active=false)","operationId":"delete_object_model_screens__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Screens Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/literals/":{"get":{"tags":["literals"],"summary":"List all literals","operationId":"list_objects_model_literals__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active literals objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Literals Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/literals/{obj_id}":{"get":{"tags":["literals"],"summary":"Get one literals object by id","operationId":"get_object_model_literals__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Literals Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["literals"],"summary":"Create or update a literals object","operationId":"upsert_object_model_literals__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Literals Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["literals"],"summary":"Soft-delete a literals object (is_active=false)","operationId":"delete_object_model_literals__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Literals Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/agents/":{"get":{"tags":["agents"],"summary":"List all agents","operationId":"list_objects_model_agents__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active agents objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Agents Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/agents/{obj_id}":{"get":{"tags":["agents"],"summary":"Get one agents object by id","operationId":"get_object_model_agents__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Agents Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["agents"],"summary":"Create or update a agents object","operationId":"upsert_object_model_agents__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Agents Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["agents"],"summary":"Soft-delete a agents object (is_active=false)","operationId":"delete_object_model_agents__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Agents Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/infrastructure/":{"get":{"tags":["infrastructure"],"summary":"List all infrastructure","operationId":"list_objects_model_infrastructure__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active infrastructure objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Infrastructure Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/infrastructure/{obj_id}":{"get":{"tags":["infrastructure"],"summary":"Get one infrastructure object by id","operationId":"get_object_model_infrastructure__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Infrastructure Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["infrastructure"],"summary":"Create or update a infrastructure object","operationId":"upsert_object_model_infrastructure__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Infrastructure Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["infrastructure"],"summary":"Soft-delete a infrastructure object (is_active=false)","operationId":"delete_object_model_infrastructure__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Infrastructure Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/requirements/":{"get":{"tags":["requirements"],"summary":"List all requirements","operationId":"list_objects_model_requirements__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active requirements objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Requirements Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/requirements/{obj_id}":{"get":{"tags":["requirements"],"summary":"Get one requirements object by id","operationId":"get_object_model_requirements__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Requirements Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["requirements"],"summary":"Create or update a requirements object","operationId":"upsert_object_model_requirements__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Requirements Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["requirements"],"summary":"Soft-delete a requirements object (is_active=false)","operationId":"delete_object_model_requirements__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Requirements Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/planes/":{"get":{"tags":["planes"],"summary":"List all planes","operationId":"list_objects_model_planes__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active planes objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Planes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/planes/{obj_id}":{"get":{"tags":["planes"],"summary":"Get one planes object by id","operationId":"get_object_model_planes__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Planes Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["planes"],"summary":"Create or update a planes object","operationId":"upsert_object_model_planes__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Planes Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["planes"],"summary":"Soft-delete a planes object (is_active=false)","operationId":"delete_object_model_planes__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Planes Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/connections/":{"get":{"tags":["connections"],"summary":"List all connections","operationId":"list_objects_model_connections__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active connections objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Connections Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/connections/{obj_id}":{"get":{"tags":["connections"],"summary":"Get one connections object by id","operationId":"get_object_model_connections__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Connections Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["connections"],"summary":"Create or update a connections object","operationId":"upsert_object_model_connections__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Connections Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["connections"],"summary":"Soft-delete a connections object (is_active=false)","operationId":"delete_object_model_connections__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Connections Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/environments/":{"get":{"tags":["environments"],"summary":"List all environments","operationId":"list_objects_model_environments__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active environments objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Environments Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/environments/{obj_id}":{"get":{"tags":["environments"],"summary":"Get one environments object by id","operationId":"get_object_model_environments__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Environments Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["environments"],"summary":"Create or update a environments object","operationId":"upsert_object_model_environments__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Environments Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["environments"],"summary":"Soft-delete a environments object (is_active=false)","operationId":"delete_object_model_environments__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Environments Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_skills/":{"get":{"tags":["cp_skills"],"summary":"List all cp_skills","operationId":"list_objects_model_cp_skills__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active cp_skills objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Cp Skills Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_skills/{obj_id}":{"get":{"tags":["cp_skills"],"summary":"Get one cp_skills object by id","operationId":"get_object_model_cp_skills__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Cp Skills Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["cp_skills"],"summary":"Create or update a cp_skills object","operationId":"upsert_object_model_cp_skills__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Cp Skills Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["cp_skills"],"summary":"Soft-delete a cp_skills object (is_active=false)","operationId":"delete_object_model_cp_skills__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Cp Skills Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_agents/":{"get":{"tags":["cp_agents"],"summary":"List all cp_agents","operationId":"list_objects_model_cp_agents__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active cp_agents objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Cp Agents Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_agents/{obj_id}":{"get":{"tags":["cp_agents"],"summary":"Get one cp_agents object by id","operationId":"get_object_model_cp_agents__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Cp Agents Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["cp_agents"],"summary":"Create or update a cp_agents object","operationId":"upsert_object_model_cp_agents__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Cp Agents Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["cp_agents"],"summary":"Soft-delete a cp_agents object (is_active=false)","operationId":"delete_object_model_cp_agents__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Cp Agents Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/runbooks/":{"get":{"tags":["runbooks"],"summary":"List all runbooks","operationId":"list_objects_model_runbooks__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active runbooks objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Runbooks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/runbooks/{obj_id}":{"get":{"tags":["runbooks"],"summary":"Get one runbooks object by id","operationId":"get_object_model_runbooks__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Runbooks Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["runbooks"],"summary":"Create or update a runbooks object","operationId":"upsert_object_model_runbooks__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Runbooks Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["runbooks"],"summary":"Soft-delete a runbooks object (is_active=false)","operationId":"delete_object_model_runbooks__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Runbooks Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_workflows/":{"get":{"tags":["cp_workflows"],"summary":"List all cp_workflows","operationId":"list_objects_model_cp_workflows__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active cp_workflows objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Cp Workflows Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_workflows/{obj_id}":{"get":{"tags":["cp_workflows"],"summary":"Get one cp_workflows object by id","operationId":"get_object_model_cp_workflows__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Cp Workflows Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["cp_workflows"],"summary":"Create or update a cp_workflows object","operationId":"upsert_object_model_cp_workflows__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Cp Workflows Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["cp_workflows"],"summary":"Soft-delete a cp_workflows object (is_active=false)","operationId":"delete_object_model_cp_workflows__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Cp Workflows Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_policies/":{"get":{"tags":["cp_policies"],"summary":"List all cp_policies","operationId":"list_objects_model_cp_policies__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active cp_policies objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Cp Policies Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/cp_policies/{obj_id}":{"get":{"tags":["cp_policies"],"summary":"Get one cp_policies object by id","operationId":"get_object_model_cp_policies__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Cp Policies Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["cp_policies"],"summary":"Create or update a cp_policies object","operationId":"upsert_object_model_cp_policies__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Cp Policies Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["cp_policies"],"summary":"Soft-delete a cp_policies object (is_active=false)","operationId":"delete_object_model_cp_policies__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Cp Policies Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/mcp_servers/":{"get":{"tags":["mcp_servers"],"summary":"List all mcp_servers","operationId":"list_objects_model_mcp_servers__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active mcp_servers objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Mcp Servers Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/mcp_servers/{obj_id}":{"get":{"tags":["mcp_servers"],"summary":"Get one mcp_servers object by id","operationId":"get_object_model_mcp_servers__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Mcp Servers Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["mcp_servers"],"summary":"Create or update a mcp_servers object","operationId":"upsert_object_model_mcp_servers__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Mcp Servers Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["mcp_servers"],"summary":"Soft-delete a mcp_servers object (is_active=false)","operationId":"delete_object_model_mcp_servers__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Mcp Servers Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/prompts/":{"get":{"tags":["prompts"],"summary":"List all prompts","operationId":"list_objects_model_prompts__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active prompts objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Prompts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/prompts/{obj_id}":{"get":{"tags":["prompts"],"summary":"Get one prompts object by id","operationId":"get_object_model_prompts__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Prompts Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["prompts"],"summary":"Create or update a prompts object","operationId":"upsert_object_model_prompts__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Prompts Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["prompts"],"summary":"Soft-delete a prompts object (is_active=false)","operationId":"delete_object_model_prompts__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Prompts Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/security_controls/":{"get":{"tags":["security_controls"],"summary":"List all security_controls","operationId":"list_objects_model_security_controls__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active security_controls objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Security Controls Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/security_controls/{obj_id}":{"get":{"tags":["security_controls"],"summary":"Get one security_controls object by id","operationId":"get_object_model_security_controls__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Security Controls Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["security_controls"],"summary":"Create or update a security_controls object","operationId":"upsert_object_model_security_controls__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Security Controls Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["security_controls"],"summary":"Soft-delete a security_controls object (is_active=false)","operationId":"delete_object_model_security_controls__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Security Controls Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/components/":{"get":{"tags":["components"],"summary":"List all components","operationId":"list_objects_model_components__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active components objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Components Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/components/{obj_id}":{"get":{"tags":["components"],"summary":"Get one components object by id","operationId":"get_object_model_components__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Components Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["components"],"summary":"Create or update a components object","operationId":"upsert_object_model_components__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Components Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["components"],"summary":"Soft-delete a components object (is_active=false)","operationId":"delete_object_model_components__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Components Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/hooks/":{"get":{"tags":["hooks"],"summary":"List all hooks","operationId":"list_objects_model_hooks__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active hooks objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Hooks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/hooks/{obj_id}":{"get":{"tags":["hooks"],"summary":"Get one hooks object by id","operationId":"get_object_model_hooks__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Hooks Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["hooks"],"summary":"Create or update a hooks object","operationId":"upsert_object_model_hooks__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Hooks Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["hooks"],"summary":"Soft-delete a hooks object (is_active=false)","operationId":"delete_object_model_hooks__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Hooks Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/ts_types/":{"get":{"tags":["ts_types"],"summary":"List all ts_types","operationId":"list_objects_model_ts_types__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active ts_types objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Ts Types Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/ts_types/{obj_id}":{"get":{"tags":["ts_types"],"summary":"Get one ts_types object by id","operationId":"get_object_model_ts_types__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Ts Types Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["ts_types"],"summary":"Create or update a ts_types object","operationId":"upsert_object_model_ts_types__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Ts Types Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["ts_types"],"summary":"Soft-delete a ts_types object (is_active=false)","operationId":"delete_object_model_ts_types__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Ts Types Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/projects/":{"get":{"tags":["projects"],"summary":"List all projects","operationId":"list_objects_model_projects__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active projects objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Projects Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/projects/{obj_id}":{"get":{"tags":["projects"],"summary":"Get one projects object by id","operationId":"get_object_model_projects__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Projects Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["projects"],"summary":"Create or update a projects object","operationId":"upsert_object_model_projects__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Projects Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["projects"],"summary":"Soft-delete a projects object (is_active=false)","operationId":"delete_object_model_projects__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Projects Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/wbs/":{"get":{"tags":["wbs"],"summary":"List all wbs","operationId":"list_objects_model_wbs__get","parameters":[{"name":"active_only","in":"query","required":false,"schema":{"type":"boolean","description":"Set false to include soft-deleted objects","default":true,"title":"Active Only"},"description":"Set false to include soft-deleted objects"}],"responses":{"200":{"description":"All active wbs objects (cached 60s)","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response List Objects Model Wbs Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/wbs/{obj_id}":{"get":{"tags":["wbs"],"summary":"Get one wbs object by id","operationId":"get_object_model_wbs__obj_id__get","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Object Model Wbs Obj Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["wbs"],"summary":"Create or update a wbs object","operationId":"upsert_object_model_wbs__obj_id__put","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Upsert Object Model Wbs Obj Id Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["wbs"],"summary":"Soft-delete a wbs object (is_active=false)","operationId":"delete_object_model_wbs__obj_id__delete","parameters":[{"name":"obj_id","in":"path","required":true,"schema":{"type":"string","title":"Obj Id"}},{"name":"x-actor","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Actor"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Delete Object Model Wbs Obj Id Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/graph/edge-types":{"get":{"tags":["graph"],"summary":"Vocabulary of all edge types across the 27-layer model","operationId":"get_edge_types_model_graph_edge_types_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array","title":"Response Get Edge Types Model Graph Edge Types Get"}}}}}}},"/model/graph/":{"get":{"tags":["graph"],"summary":"Typed edge list — full graph or filtered/traversed subgraph","operationId":"get_graph_model_graph__get","parameters":[{"name":"from_layer","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter: only edges whose from-node is in this layer","title":"From Layer"},"description":"Filter: only edges whose from-node is in this layer"},{"name":"to_layer","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter: only edges whose to-node is in this layer","title":"To Layer"},"description":"Filter: only edges whose to-node is in this layer"},{"name":"edge_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter: only edges of this type","title":"Edge Type"},"description":"Filter: only edges of this type"},{"name":"node_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"BFS root node id — combined with depth","title":"Node Id"},"description":"BFS root node id — combined with depth"},{"name":"depth","in":"query","required":false,"schema":{"type":"integer","maximum":5,"minimum":1,"description":"BFS hop depth (default 1, max 5)","default":1,"title":"Depth"},"description":"BFS hop depth (default 1, max 5)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Graph Model Graph Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/impact/":{"get":{"tags":["impact"],"summary":"What breaks if this container (and optional field) changes?","operationId":"impact_analysis_model_impact__get","parameters":[{"name":"container","in":"query","required":true,"schema":{"type":"string","description":"Container id, e.g. 'translations'","title":"Container"},"description":"Container id, e.g. 'translations'"},{"name":"field","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional field name — narrows the result set","title":"Field"},"description":"Optional field name — narrows the result set"}],"responses":{"200":{"description":"Endpoints, screens, agents, requirements referencing the target container","content":{"application/json":{"schema":{"type":"object","title":"Response Impact Analysis Model Impact Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/seed":{"post":{"tags":["model-admin"],"summary":"Seed store from disk JSON layer files (idempotent — safe to re-run)","description":"Reads each model/<layer>.json file and upserts every object into the store.\nPreserves existing created_by / created_at on objects that already exist.\nIncrements row_version on existing objects.\nIdempotent: safe to call on first run, re-runs, and migrations.","operationId":"seed_model_admin_seed_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Seed Model Admin Seed Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/export":{"post":{"tags":["model-admin"],"summary":"Export store back to disk JSON layer files (completes the write cycle)","description":"Step 3 of the correct write cycle:\n 1. PUT /model/{layer}/{id} -- stamps modified_at / modified_by / row_version\n 2. GET /model/{layer}/{id} -- verify\n 3. POST /model/admin/export -- this endpoint: write store back to model/*.json\n 4. assemble-model.ps1 -- rebuild eva-model.json\n\nEach layer file is written as {\"$schema\": <existing>, \"<layer>\": [...]}\nInternal store fields (obj_id, layer) are stripped; all audit fields are preserved.\nCosmos document-id (base64 encoded) is replaced with the business obj_id.","operationId":"export_to_disk_model_admin_export_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Export To Disk Model Admin Export Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/cache/flush":{"post":{"tags":["model-admin"],"summary":"Flush the entire cache (all layers)","operationId":"flush_cache_model_admin_cache_flush_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Flush Cache Model Admin Cache Flush Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/backfill":{"post":{"tags":["model-admin"],"summary":"One-shot: stamp missing audit fields on all legacy objects. Derives source_file from layer-specific path fields where possible. Idempotent — safe to re-run; only touches objects that are still missing fields.","description":"Walks every object in every layer. For each object that is missing any\nof {created_by, created_at, modified_by, modified_at, row_version, is_active}:\n\n 1. Derives source_file from a layer-specific hint field if that field\n is present (e.g. endpoints.implemented_in → source_file)\n 2. Calls store.upsert() so the write cycle stamps modified_* and\n increments row_version correctly\n 3. Flushes the layer cache\n\nAfter a full backfill, run POST /model/admin/export + assemble-model.ps1\nto persist the corrected audit trail back to disk.","operationId":"backfill_metadata_model_admin_backfill_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Backfill Metadata Model Admin Backfill Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/audit":{"get":{"tags":["model-admin"],"summary":"Last N write events across all layers — audit trail","operationId":"audit_log_model_admin_audit_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"description":"Number of events to return","default":50,"title":"Limit"},"description":"Number of events to return"},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response Audit Log Model Admin Audit Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/validate":{"get":{"tags":["model-admin"],"summary":"Run cross-reference integrity check in-process — equivalent to validate-model.ps1","description":"Checks:\n1. endpoint.cosmos_reads/writes → containers\n2. endpoint.feature_flag → feature_flags\n3. endpoint.auth[] → personas\n4. screen.api_calls[] → endpoints\n5. literal.screens[] → screens\n6. requirement.satisfied_by[] → endpoints + screens\n7. agent.output_screens[] → screens","operationId":"validate_model_admin_validate_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Validate Model Admin Validate Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/model/admin/commit":{"post":{"tags":["model-admin"],"summary":"One-call write cycle shortcut: export to disk + assemble eva-model.json + validate. Returns {status, violations, counts, exported, assemble, validate}. Replaces steps 3-5 of the manual write cycle.","description":"Shortcut for the final three steps of the write cycle:\n Step 3: POST /model/admin/export (done inline)\n Step 4: assemble-model.ps1 (run via subprocess)\n Step 5: validate cross-references (done inline, same logic as GET /model/admin/validate)\n\nResponse shape:\n{\n \"status\": \"PASS\" | \"FAIL\",\n \"violations\": [...], # empty on PASS\n \"violation_count\": 0,\n \"exported\": { \"projects\": 45, ... },\n \"exported_total\": 865,\n \"assemble\": { \"ok\": true, \"rc\": 0, \"stdout\": \"...\" },\n \"actor\": \"...\"\n}","operationId":"commit_model_admin_commit_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Commit Model Admin Commit Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/health":{"get":{"tags":["health"],"summary":"Liveness check","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Health Health Get"}}}}}}},"/model/agent-summary":{"get":{"tags":["health"],"summary":"All layer counts in one call — use this instead of querying each layer separately","description":"Returns item count for every layer + total. No auth required.\nOne call replaces 27 separate GET /model/{layer}/ count queries.\nResponse includes store type and cache_ttl so agents know the write-safety profile.","operationId":"agent_summary_model_agent_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Agent Summary Model Agent Summary Get"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}