openapi: 3.0.3
info:
  title: Eventium API
  version: '2026-03-19'
  description: 'Combined OpenAPI spec: Metis TPS command-bus + TitanVX API Gateway
    endpoints. Use /apidocs for the interactive console.'
tags:
- name: Gateway
  description: Health + public config + sandbox-key issuance.
- name: API Keys
  description: Create and manage long-lived API keys.
- name: Webhooks
  description: Webhook endpoints, deliveries, and test events.
- name: MCP
  description: List/install/invoke MCP tools through the gateway.
- name: Skills
  description: List/install skills through the gateway.
- name: Rules
  description: Rules templates (placeholders; returns 501 until implemented).
- name: Documents
  description: Documents ingestion (mock queue; validates payload, returns 202).
- name: 01 - User
  description: User session and identity operations.
- name: 02 - Agent
  description: Agent lifecycle and selection operations.
- name: 03 - Domain
  description: Domain/workspace operations.
- name: 04 - Zone
  description: Zone/stream operations.
- name: 05 - Bank
  description: Memory bank operations.
servers:
- url: https://api.eventium.ai
paths:
  /demo/v1/Metis/tps/agent/add:
    post:
      operationId: post_metis_tps_ap_add
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Add
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_Add", "target": { "user": "<logged_in_user>", "agent": "<agent_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Add
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Add:
                summary: 'Example: AP_Add'
                value:
                  service: AP_Add
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/chat:
    post:
      operationId: post_metis_tps_ap_chat
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Chat
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.

        - Current context is expected to be inferred from the selected user/agent/domain/zone.


        **Example request**

        ```json

        { "service": "AP_Chat", "content": "Hello" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Chat
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Chat:
                summary: 'Example: AP_Chat'
                value:
                  service: AP_Chat
                  content: Hello from the docs console
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/create:
    post:
      operationId: post_metis_tps_ap_create
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Create
      description: '**Input requirements**


        - missing description field

        - missing name field


        **Example request**

        ```json

        { "service": "AP_Create", "target": { "user": "<logged_in_user>" }, "vx":
        { "name": "<agent_name>", "description": "<description>", "profile": "<optional>",
        "access": "public" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Create:
                summary: 'Example: AP_Create'
                value:
                  service: AP_Create
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/destroy:
    post:
      operationId: post_metis_tps_ap_destroy
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Destroy
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_Destroy", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Destroy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Destroy:
                summary: 'Example: AP_Destroy'
                value:
                  service: AP_Destroy
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/list:
    post:
      operationId: post_metis_tps_ap_list
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_List
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_List", "target": { "user": "<logged_in_user>", "agent": "<agent_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_List
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_List:
                summary: 'Example: AP_List'
                value:
                  service: AP_List
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/logoff:
    post:
      operationId: post_metis_tps_ap_logoff
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_LogOff
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_LogOff", "target": { "agent": "<agent_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_LogOff
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_LogOff:
                summary: 'Example: AP_LogOff'
                value:
                  service: AP_LogOff
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/logon:
    post:
      operationId: post_metis_tps_ap_logon
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_LogOn
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_LogOn", "target": { "agent": "<agent_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_LogOn
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_LogOn:
                summary: 'Example: AP_LogOn'
                value:
                  service: AP_LogOn
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/modify:
    post:
      operationId: post_metis_tps_ap_modify
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Modify
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_Modify", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Modify
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Modify:
                summary: 'Example: AP_Modify'
                value:
                  service: AP_Modify
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/read:
    post:
      operationId: post_metis_tps_ap_read
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Read
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_Read", "target": { "user": "<logged_in_user>", "agent": "<agent_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Read
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Read:
                summary: 'Example: AP_Read'
                value:
                  service: AP_Read
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/remove:
    post:
      operationId: post_metis_tps_ap_remove
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Remove
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_Remove", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Remove
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Remove:
                summary: 'Example: AP_Remove'
                value:
                  service: AP_Remove
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/select:
    post:
      operationId: post_metis_tps_ap_select
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Select
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "AP_Select", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Select
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Select:
                summary: 'Example: AP_Select'
                value:
                  service: AP_Select
                  target:
                    user: you@example.com
                    agent: My Agent
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/agent/update:
    post:
      operationId: post_metis_tps_ap_update
      tags:
      - 02 - Agent
      summary: 02 - Agent / AP_Update
      description: 'Input requirements enforced by endpoint: - missing description
        field - missing name field

        COMMAND (COMMAND) Status: Present as a TPR constant but not routed by the
        endpoint switch statements in v3_fixed2 (legacy/unused in this snapshot).
        DEFAULT (DEFAULT) Status: Present as a TPR constant but not routed by the
        endpoint switch statements in v3_fixed2 (legacy/unused in this snapshot).


        **Example request**

        ```json

        { "service": "AP_Update", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>" }, "vx": { "name": "<agent_name>", "description": "<description>",
        "profile": "<optional>", "access": "agent" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: AP_Update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              AP_Update:
                summary: 'Example: AP_Update'
                value:
                  service: AP_Update
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/ban:
    post:
      operationId: post_metis_tps_dm_ban
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Ban
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "DM_Ban", "target": { "domain": "<domain_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Ban
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Ban:
                summary: 'Example: DM_Ban'
                value:
                  service: DM_Ban
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/create:
    post:
      operationId: post_metis_tps_dm_create
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Create
      description: '**Input requirements**


        - missing description field

        - missing name field


        **Example request**

        ```json

        { "service": "DM_Create", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>" }, "vx": { "name": "<domain_name>", "description": "<description>",
        "profile": "<optional>", "access": "public" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Create:
                summary: 'Example: DM_Create'
                value:
                  service: DM_Create
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/destroy:
    post:
      operationId: post_metis_tps_dm_destroy
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Destroy
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "DM_Destroy", "target": { "domain": "<domain_name>", "agent":
        "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Destroy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Destroy:
                summary: 'Example: DM_Destroy'
                value:
                  service: DM_Destroy
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/invite:
    post:
      operationId: post_metis_tps_dm_invite
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Invite
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "DM_Invite", "target": { "domain": "<domain_name>", "agent":
        "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Invite
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Invite:
                summary: 'Example: DM_Invite'
                value:
                  service: DM_Invite
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/kick:
    post:
      operationId: post_metis_tps_dm_kick
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Kick
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "DM_Kick", "target": { "domain": "<domain_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Kick
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Kick:
                summary: 'Example: DM_Kick'
                value:
                  service: DM_Kick
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/read:
    post:
      operationId: post_metis_tps_dm_read
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Read
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "DM_Read", "target": { "domain": "<domain_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Read
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Read:
                summary: 'Example: DM_Read'
                value:
                  service: DM_Read
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/unban:
    post:
      operationId: post_metis_tps_dm_unban
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Unban
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "DM_Unban", "target": { "domain": "<domain_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Unban
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Unban:
                summary: 'Example: DM_Unban'
                value:
                  service: DM_Unban
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/domain/update:
    post:
      operationId: post_metis_tps_dm_update
      tags:
      - 03 - Domain
      summary: 03 - Domain / DM_Update
      description: '**Input requirements**


        - missing description field

        - missing name field


        **Example request**

        ```json

        { "service": "DM_Update", "vx": { "name": "<domain_name>", "description":
        "<description>", "access": "domain" }, "target": { "domain": "<domain_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: DM_Update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              DM_Update:
                summary: 'Example: DM_Update'
                value:
                  service: DM_Update
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/agentlist:
    post:
      operationId: post_metis_tps_mb_agentlist
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_AgentList
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_AgentList", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_AgentList
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_AgentList:
                summary: 'Example: MB_AgentList'
                value:
                  service: MB_AgentList
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/censor:
    post:
      operationId: post_metis_tps_mb_censor
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Censor
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Censor", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Censor
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Censor:
                summary: 'Example: MB_Censor'
                value:
                  service: MB_Censor
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/create:
    post:
      operationId: post_metis_tps_mb_create
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Create
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Create", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>", "bank": "<bank_name>" }, "vx": { "name": "<bank_name>", "description":
        "<description>", "access": "bank" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Create:
                summary: 'Example: MB_Create'
                value:
                  service: MB_Create
                  target:
                    user: you@example.com
                    agent: My Agent
                    bank: memoryAGENT_01
                  vx:
                    access: bank
                    name: memoryAGENT_01
                    description: Example memory bank
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/delete:
    post:
      operationId: post_metis_tps_mb_delete
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Delete
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Delete", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Delete
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Delete:
                summary: 'Example: MB_Delete'
                value:
                  service: MB_Delete
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/destroy:
    post:
      operationId: post_metis_tps_mb_destroy
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Destroy
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Destroy", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Destroy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Destroy:
                summary: 'Example: MB_Destroy'
                value:
                  service: MB_Destroy
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/load:
    post:
      operationId: post_metis_tps_mb_load
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Load
      description: '**Input requirements**


        - missing name field


        **Example request**

        ```json

        { "service": "MB_Load", "target": { "user": "<logged_in_user>", "agent": "<agent_name>",
        "bank": "<bank_name>" }, "vx": { "name": "<bank_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Load
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Load:
                summary: 'Example: MB_Load'
                value:
                  service: MB_Load
                  target:
                    user: you@example.com
                    agent: My Agent
                    bank: memoryAGENT_01
                  vx:
                    name: memoryAGENT_01
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/permissions:
    post:
      operationId: post_metis_tps_mb_permissions
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Permissions
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Permissions", "target": { "bank": "<bank_name>", "agent":
        "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Permissions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Permissions:
                summary: 'Example: MB_Permissions'
                value:
                  service: MB_Permissions
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/read:
    post:
      operationId: post_metis_tps_mb_read
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Read
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Read", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Read
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Read:
                summary: 'Example: MB_Read'
                value:
                  service: MB_Read
                  target:
                    user: User1
                    Agent: Agent1
                    conversation: 0
                    sentence: 2
                  access:
                    category: sentence
                    min: 0
                    max: 100
                    max_results: 100
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/save:
    post:
      operationId: post_metis_tps_mb_save
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Save
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Save", "target": { "bank": "<bank_name>", "agent": "<agent_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Save
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Save:
                summary: 'Example: MB_Save'
                value:
                  service: MB_Save
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/show:
    post:
      operationId: post_metis_tps_mb_show
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Show
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Show", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Show
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Show:
                summary: 'Example: MB_Show'
                value:
                  service: MB_Show
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/unload:
    post:
      operationId: post_metis_tps_mb_unload
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Unload
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "MB_Unload", "target": { "bank": "<bank_name>", "agent": "<agent_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Unload
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Unload:
                summary: 'Example: MB_Unload'
                value:
                  service: MB_Unload
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/bank/update:
    post:
      operationId: post_metis_tps_mb_update
      tags:
      - 05 - Bank
      summary: 05 - Bank / MB_Update
      description: '**Input requirements**


        - missing description field

        - missing name field


        **Example request**

        ```json

        { "service": "MB_Update", "target": { "bank": "<bank_name>", "agent": "<agent_name_optional>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: MB_Update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              MB_Update:
                summary: 'Example: MB_Update'
                value:
                  service: MB_Update
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/chat:
    post:
      operationId: post_metis_tps_us_chat
      tags:
      - 01 - User
      summary: 01 - User / US_Chat
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_Chat" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Chat
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Chat:
                summary: 'Example: US_Chat'
                value:
                  service: US_Chat
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/create:
    post:
      operationId: post_metis_tps_us_create
      tags:
      - 01 - User
      summary: 01 - User / US_Create
      description: '**Input requirements**


        - missing description field

        - missing identity field

        - missing name field


        **Example request**

        ```json

        { "service": "US_Create", "vx": { "name": "<user_name>", "description": "<description>",
        "passcode": "<optional>", "confirm-passcode": "<match_if_passcode_set>" },
        "identity": "user_identity_string" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Create:
                summary: 'Example: US_Create'
                value:
                  service: US_Create
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/destroy:
    post:
      operationId: post_metis_tps_us_destroy
      tags:
      - 01 - User
      summary: 01 - User / US_Destroy
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_Destroy", "target": { "user": "<user_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Destroy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Destroy:
                summary: 'Example: US_Destroy'
                value:
                  service: US_Destroy
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/logoff:
    post:
      operationId: post_metis_tps_us_logoff
      tags:
      - 01 - User
      summary: 01 - User / US_LogOff
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_LogOff", "target": { "user": "<user_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_LogOff
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_LogOff:
                summary: 'Example: US_LogOff'
                value:
                  service: US_LogOff
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/logon:
    post:
      operationId: post_metis_tps_us_logon
      tags:
      - 01 - User
      summary: 01 - User / US_LogOn
      description: '**Input requirements**


        - missing passcode field


        **Example request**

        ```json

        { "service": "US_LogOn", "target": { "user": "<user_name>" }, "vx": { "passcode":
        "1234" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_LogOn
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_LogOn:
                summary: 'Example: US_LogOn'
                value:
                  service: US_LogOn
                  target:
                    user: you@example.com
                  vx:
                    passcode: REPLACE-ME
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/read:
    post:
      operationId: post_metis_tps_us_read
      tags:
      - 01 - User
      summary: 01 - User / US_Read
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_Read", "target": { "user": "<user_name>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Read
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Read:
                summary: 'Example: US_Read'
                value:
                  service: US_Read
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/select:
    post:
      operationId: post_metis_tps_us_select
      tags:
      - 01 - User
      summary: 01 - User / US_Select
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_Select" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Select
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Select:
                summary: 'Example: US_Select'
                value:
                  service: US_Select
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/selectx:
    post:
      operationId: post_metis_tps_us_selectx
      tags:
      - 01 - User
      summary: 01 - User / US_Selectx
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_Selectx" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Selectx
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Selectx:
                summary: 'Example: US_Selectx'
                value:
                  service: US_Selectx
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/show:
    post:
      operationId: post_metis_tps_us_show
      tags:
      - 01 - User
      summary: 01 - User / US_Show
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "US_Show" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Show
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Show:
                summary: 'Example: US_Show'
                value:
                  service: US_Show
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/user/update:
    post:
      operationId: post_metis_tps_us_update
      tags:
      - 01 - User
      summary: 01 - User / US_Update
      description: '**Input requirements**


        - missing description field

        - missing identity field

        - missing name field


        **Example request**

        ```json

        { "service": "US_Update", "vx": { "name": "<user_name>", "description": "<description>",
        "passcode": "<optional>", "confirm-passcode": "<match_if_passcode_set>" },
        "identity": "user_identity_string" }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: US_Update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              US_Update:
                summary: 'Example: US_Update'
                value:
                  service: US_Update
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/ban:
    post:
      operationId: post_metis_tps_zn_ban
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Ban
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Ban", "target": { "domain": "<domain_name>", "zone": "<zone_name>",
        "agent": "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Ban
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Ban:
                summary: 'Example: ZN_Ban'
                value:
                  service: ZN_Ban
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/create:
    post:
      operationId: post_metis_tps_zn_create
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Create
      description: '**Input requirements**


        - missing description field

        - missing name field


        **Example request**

        ```json

        { "service": "ZN_Create", "target": { "user": "<logged_in_user>", "agent":
        "<agent_name>", "domain": "<domain_name>" }, "vx": { "name": "<zone_name>",
        "description": "<description>", "profile": "<optional>", "access": "public"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Create:
                summary: 'Example: ZN_Create'
                value:
                  service: ZN_Create
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/destroy:
    post:
      operationId: post_metis_tps_zn_destroy
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Destroy
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Destroy", "target": { "domain": "<domain_name>", "zone":
        "<zone_name>", "agent": "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Destroy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Destroy:
                summary: 'Example: ZN_Destroy'
                value:
                  service: ZN_Destroy
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/invite:
    post:
      operationId: post_metis_tps_zn_invite
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Invite
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Invite", "target": { "domain": "<domain_name>", "zone": "<zone_name>",
        "agent": "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Invite
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Invite:
                summary: 'Example: ZN_Invite'
                value:
                  service: ZN_Invite
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/kick:
    post:
      operationId: post_metis_tps_zn_kick
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Kick
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Kick", "target": { "domain": "<domain_name>", "zone": "<zone_name>",
        "agent": "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Kick
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Kick:
                summary: 'Example: ZN_Kick'
                value:
                  service: ZN_Kick
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/read:
    post:
      operationId: post_metis_tps_zn_read
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Read
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Read", "target": { "domain": "<domain_name>", "zone": "<zone_name>",
        "agent": "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 }, "profile": [ ... ], "content": [ ... ], "...": "service-specific fields
        may appear" }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Read
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Read:
                summary: 'Example: ZN_Read'
                value:
                  service: ZN_Read
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/select:
    post:
      operationId: post_metis_tps_zn_select
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Select
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Select", "target": { "domain": "<domain_name>", "zone": "<zone_name>"
        } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Select
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Select:
                summary: 'Example: ZN_Select'
                value:
                  service: ZN_Select
                  target:
                    domain: workspace-ALPHA
                    zone: general
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/unban:
    post:
      operationId: post_metis_tps_zn_unban
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Unban
      description: '**Input requirements**


        - No explicit "missing ..." checks in the endpoint wrapper; core may still
        reject invalid input.


        **Example request**

        ```json

        { "service": "ZN_Unban", "target": { "domain": "<domain_name>", "zone": "<zone_name>",
        "agent": "<agent_name_optional>" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Unban
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Unban:
                summary: 'Example: ZN_Unban'
                value:
                  service: ZN_Unban
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /demo/v1/Metis/tps/zone/update:
    post:
      operationId: post_metis_tps_zn_update
      tags:
      - 04 - Zone
      summary: 04 - Zone / ZN_Update
      description: 'Input requirements enforced by endpoint: - missing description
        field - missing identity field - missing name field

        SAO services SAO_STORE Example request JSON: { "service": "_SAOStore", "target":
        { "bank": "<bank_name>", "agent": "<agent_name>" }, "sao": { "subject": "...",
        "aux": "...", "object": "..." } } Expected response JSON: { "header": { ...
        }, "status": { "success": true, "internal_c


        **Example request**

        ```json

        { "service": "ZN_Update", "target": { "domain": "<domain_name>", "zone": "<zone_name>",
        "agent": "<agent_name_optional>" }, "vx": { "name": "<zone_name>", "description":
        "<description>", "access": "zone" } }

        ```


        **Example success response**

        ```json

        { "header": { ... }, "status": { "success": true, "internal_code": 0, "http_code":
        200 } }

        ```


        **Example error response**

        ```json

        { "header": { ... }, "status": { "success": false, "note": "human-readable
        error note", "internal_code": 123, "http_code": 401 } }

        ```


        Alias endpoint for documentation grouping. Sends the request to POST /demo/v1/Metis/tps
        with fixed `service` value.'
      x-service: ZN_Update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TPSRequest'
            examples:
              ZN_Update:
                summary: 'Example: ZN_Update'
                value:
                  service: ZN_Update
      responses:
        '200':
          description: Command response (service-specific)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TPSResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limited
        '500':
          description: Server error
  /api/health:
    get:
      tags:
      - Gateway
      summary: Health
      security: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HealthResponse'
  /api/health/deps:
    get:
      tags:
      - Gateway
      summary: Dependency health
      security: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DepsHealthResponse'
        '503':
          description: Dependencies unavailable
  /api/public-config:
    get:
      tags:
      - Gateway
      summary: Public runtime config
      security: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicConfigResponse'
  /api/dev/sandbox-key:
    post:
      tags:
      - Gateway
      summary: Create sandbox API key (docs/testing)
      security: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SandboxKeyRequest'
      responses:
        '200':
          description: Key created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SandboxKeyResponse'
        '400':
          description: Invalid request
        '403':
          description: Forbidden
        '404':
          description: Sandbox keys disabled
        '503':
          description: Service unavailable
  /api/api-keys:
    get:
      tags:
      - API Keys
      summary: List API keys (metadata only)
      responses:
        '200':
          description: Keys
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiKeyListResponse'
        '401':
          description: Unauthorized
    post:
      tags:
      - API Keys
      summary: Create API key (returns raw key once)
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiKeyCreateRequest'
      responses:
        '200':
          description: Key created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiKeyCreateResponse'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden (plan/entitlement)
  /api/api-keys/{key_id}:
    delete:
      tags:
      - API Keys
      summary: Revoke API key
      parameters:
      - name: key_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Revoked
        '401':
          description: Unauthorized
        '404':
          description: Not found
  /api/webhooks/events:
    get:
      tags:
      - Webhooks
      summary: List supported webhook event types
      responses:
        '200':
          description: Events
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEventsResponse'
        '401':
          description: Unauthorized
  /api/webhooks/endpoints:
    get:
      tags:
      - Webhooks
      summary: List webhook endpoints
      responses:
        '200':
          description: Endpoints
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEndpointsResponse'
        '401':
          description: Unauthorized
    post:
      tags:
      - Webhooks
      summary: Create webhook endpoint (returns secret once)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookEndpointCreateRequest'
      responses:
        '200':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEndpointCreateResponse'
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
  /api/webhooks/endpoints/{endpoint_id}:
    patch:
      tags:
      - Webhooks
      summary: Update webhook endpoint
      parameters:
      - name: endpoint_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookEndpointUpdateRequest'
      responses:
        '200':
          description: Updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEndpointUpdateResponse'
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
        '404':
          description: Not found
    delete:
      tags:
      - Webhooks
      summary: Disable webhook endpoint (or hard-delete with ?hard=true)
      parameters:
      - name: endpoint_id
        in: path
        required: true
        schema:
          type: string
      - name: hard
        in: query
        required: false
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: Deleted/disabled
        '401':
          description: Unauthorized
        '404':
          description: Not found
  /api/webhooks/deliveries:
    get:
      tags:
      - Webhooks
      summary: List webhook deliveries
      parameters:
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 50
          minimum: 1
          maximum: 200
      responses:
        '200':
          description: Deliveries
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookDeliveriesResponse'
        '401':
          description: Unauthorized
  /api/webhooks/test:
    post:
      tags:
      - Webhooks
      summary: Queue a test webhook event delivery
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookTestRequest'
      responses:
        '200':
          description: Queued
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookTestResponse'
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
  /api/mcp/tools:
    get:
      tags:
      - MCP
      summary: List MCP tools available to the user
      responses:
        '200':
          description: Tools
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpToolsResponse'
        '401':
          description: Unauthorized
  /api/mcp/tools/install:
    post:
      tags:
      - MCP
      summary: Install/claim an MCP tool template
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/McpToolInstallRequest'
      responses:
        '200':
          description: Installed
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
  /api/mcp/tools/invoke:
    post:
      tags:
      - MCP
      summary: Invoke an MCP tool implementation by name
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/McpToolInvokeRequest'
      responses:
        '200':
          description: Invocation result
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
  /api/skills:
    get:
      tags:
      - Skills
      summary: List skills (published by default)
      responses:
        '200':
          description: Skills
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '401':
          description: Unauthorized
  /api/skills/install:
    post:
      tags:
      - Skills
      summary: Install/enable a skill (toggle)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SkillInstallRequest'
      responses:
        '200':
          description: Installed/enabled
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
  /api/rules:
    get:
      tags:
      - Rules
      summary: List rules (placeholder)
      responses:
        '501':
          description: Not implemented
    post:
      tags:
      - Rules
      summary: Create a rule (placeholder)
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RuleCreateRequest'
      responses:
        '501':
          description: Not implemented
  /api/rules/apply:
    post:
      tags:
      - Rules
      summary: Apply a rule (placeholder)
      responses:
        '501':
          description: Not implemented
  /api/documents/ingest:
    post:
      tags:
      - Documents
      summary: Ingest a document (mock queue)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentsIngestRequest'
      responses:
        '202':
          description: Queued
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DocumentsIngestResponse'
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
components:
  schemas:
    TPSService:
      type: string
      enum:
      - AP_Add
      - AP_Chat
      - AP_Create
      - AP_Destroy
      - AP_List
      - AP_LogOff
      - AP_LogOn
      - AP_Modify
      - AP_Read
      - AP_Remove
      - AP_Select
      - AP_Update
      - DM_Ban
      - DM_Create
      - DM_Destroy
      - DM_Invite
      - DM_Kick
      - DM_Read
      - DM_Unban
      - DM_Update
      - MB_AgentList
      - MB_Censor
      - MB_Create
      - MB_Delete
      - MB_Destroy
      - MB_Load
      - MB_Permissions
      - MB_Read
      - MB_Save
      - MB_Show
      - MB_Unload
      - MB_Update
      - US_Chat
      - US_Create
      - US_Destroy
      - US_LogOff
      - US_LogOn
      - US_Read
      - US_Select
      - US_Selectx
      - US_Show
      - US_Update
      - ZN_Ban
      - ZN_Create
      - ZN_Destroy
      - ZN_Invite
      - ZN_Kick
      - ZN_Read
      - ZN_Select
      - ZN_Unban
      - ZN_Update
    TPSRequest:
      type: object
      required:
      - service
      properties:
        service:
          $ref: '#/components/schemas/TPSService'
        category:
          type: string
          description: Top-level category used by read/list operations.
        vx:
          type: object
          description: VX entity context (user/agent/domain/zone/bank).
        target:
          type: object
          description: Target entity identifiers or addressing.
        access:
          type: object
          description: Access/authorization context.
        cmd:
          type: object
          description: Optional command payload wrapper.
      additionalProperties: true
    TPSResponse:
      type: object
      description: Generic command response envelope. Shape varies by service.
      additionalProperties: true
    HealthResponse:
      type: object
      properties:
        status:
          type: string
          example: ok
      required:
      - status
    DepsHealthResponse:
      type: object
      properties:
        ok:
          type: boolean
        deps:
          type: object
          additionalProperties: true
      required:
      - ok
      - deps
    PublicConfigResponse:
      type: object
      properties:
        mcp_hub_url:
          type: string
          nullable: true
        skills_hub_url:
          type: string
          nullable: true
        exchange_v2_only_mode:
          type: boolean
        feature_flags:
          type: object
          additionalProperties: true
    SandboxKeyRequest:
      type: object
      properties:
        email:
          type: string
          format: email
        usecase:
          type: string
        user_id:
          type: string
          description: Optional Supabase user id (uuid) for hosted flows.
      required:
      - email
      - usecase
    SandboxKeyResponse:
      type: object
      properties:
        key:
          type: string
          example: TITAN-XXXXXXXXXXXXXXXXXXXXXXXX
      required:
      - key
    ApiKeyMeta:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        active:
          type: boolean
        created_at:
          type: string
    ApiKeyListResponse:
      type: object
      properties:
        keys:
          type: array
          items:
            $ref: '#/components/schemas/ApiKeyMeta'
    ApiKeyCreateRequest:
      type: object
      properties:
        name:
          type: string
          description: Optional label for the key.
    ApiKeyCreateResponse:
      type: object
      properties:
        key:
          type: string
      required:
      - key
    WebhookEventsResponse:
      type: object
      properties:
        events:
          type: array
          items:
            type: string
    WebhookEndpoint:
      type: object
      properties:
        id:
          type: string
        url:
          type: string
        events:
          type: array
          items:
            type: string
        active:
          type: boolean
        created_at:
          type: string
        updated_at:
          type: string
        secret:
          type: string
          description: Only returned when created or rotated.
          nullable: true
    WebhookEndpointsResponse:
      type: object
      properties:
        endpoints:
          type: array
          items:
            $ref: '#/components/schemas/WebhookEndpoint'
    WebhookEndpointCreateRequest:
      type: object
      properties:
        url:
          type: string
          description: Must be https://...
        events:
          type: array
          items:
            type: string
      required:
      - url
    WebhookEndpointCreateResponse:
      type: object
      properties:
        endpoint:
          $ref: '#/components/schemas/WebhookEndpoint'
      required:
      - endpoint
    WebhookEndpointUpdateRequest:
      type: object
      properties:
        url:
          type: string
        events:
          type: array
          items:
            type: string
        active:
          type: boolean
        rotate_secret:
          type: boolean
          default: false
    WebhookEndpointUpdateResponse:
      type: object
      properties:
        endpoint:
          $ref: '#/components/schemas/WebhookEndpoint'
      required:
      - endpoint
    WebhookDelivery:
      type: object
      properties:
        id:
          type: string
        endpoint_id:
          type: string
        event_id:
          type: string
        event_type:
          type: string
        status:
          type: string
        attempt_count:
          type: integer
        next_attempt_at:
          type: string
        last_attempt_at:
          type: string
          nullable: true
        last_http_status:
          type: integer
          nullable: true
        last_error:
          type: string
          nullable: true
        created_at:
          type: string
    WebhookDeliveriesResponse:
      type: object
      properties:
        deliveries:
          type: array
          items:
            $ref: '#/components/schemas/WebhookDelivery'
    WebhookTestRequest:
      type: object
      properties:
        endpoint_id:
          type: string
        event_type:
          type: string
          example: webhook.test
        data:
          type: object
          additionalProperties: true
    WebhookTestResponse:
      type: object
      properties:
        status:
          type: string
          example: queued
        event_id:
          type: string
        deliveries:
          type: integer
    McpToolsResponse:
      type: object
      properties:
        tools:
          type: array
          items:
            type: object
            additionalProperties: true
    McpToolInstallRequest:
      type: object
      properties:
        template_id:
          type: string
        tool_id:
          type: string
          description: Alias for template_id (accepted for compatibility).
    McpToolInvokeRequest:
      type: object
      properties:
        tool_name:
          type: string
        tool_id:
          type: string
          description: Alias for tool_name (accepted for compatibility).
        input:
          type: object
          additionalProperties: true
        context:
          type: object
          additionalProperties: true
    SkillInstallRequest:
      type: object
      properties:
        skill_name:
          type: string
        skill_id:
          type: string
          description: Alias for skill_name.
    RuleCreateRequest:
      type: object
      properties:
        name:
          type: string
        description:
          type: string
        inputs:
          type: object
          additionalProperties: true
        actions:
          type: object
          additionalProperties: true
        scope:
          type: string
          example: agent
    DocumentsIngestRequest:
      type: object
      properties:
        source_type:
          type: string
          enum:
          - url
          - text
          default: url
        url:
          type: string
          description: Required when source_type=url
        text:
          type: string
          description: Required when source_type=text
      required:
      - source_type
    DocumentsIngestResponse:
      type: object
      properties:
        status:
          type: string
          example: queued
        document_id:
          type: string
          example: doc_0123456789
      required:
      - status
      - document_id
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-Api-Key
    BearerAuth:
      type: http
      scheme: bearer
  parameters: {}
  responses: {}
  requestBodies: {}
security:
- ApiKeyAuth: []
- BearerAuth: []
x-tagGroups:
- name: Gateway
  tags:
  - Gateway
  - API Keys
  - Webhooks
  - MCP
  - Skills
  - Rules
  - Documents
- name: Workflow
  tags:
  - 01 - User
  - 02 - Agent
  - 03 - Domain
  - 04 - Zone
  - 05 - Bank
