{
  "openapi": "3.0.0",
  "paths": {
    "/core/api/v1/user": {
      "post": {
        "description": "Public endpoint — no authentication required. Used for the sign-up flow.",
        "operationId": "UserController_createUser",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "description": "Create a new user",
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/CreateUserDTO"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Register a new user (self-signup)",
        "tags": [
          "user"
        ]
      },
      "get": {
        "description": "Tenant-scoped for regular admins; SUPER_ADMIN may filter across tenants via the tenantId param.",
        "operationId": "UserController_getAll",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "example": "ACTIVE",
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "schema": {
              "example": "USER",
              "type": "string"
            }
          },
          {
            "name": "searchKey",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Filter users by tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "example": 1,
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List users (paginated, filterable)",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/invite-tenant-user": {
      "post": {
        "operationId": "UserController_inviteTenantUser",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteTenantUserDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Invite a user (platform admin or tenant user)",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/email/{email}": {
      "get": {
        "description": "Returns null (HTTP 200) rather than 404 when not found — used to probe email availability, e.g. by the tenant-provisioning wizard.",
        "operationId": "UserController_getUserByEmail",
        "parameters": [
          {
            "name": "email",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Look up a user by email",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/by-id/{userId}": {
      "get": {
        "operationId": "UserController_getUserById",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a user by ID",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/by-id/{userId}/essential": {
      "get": {
        "operationId": "UserController_getEssentialUserData",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get essential user data for fast initial page load",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/{userId}/details": {
      "get": {
        "operationId": "UserController_getUserDetails",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "User ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "User details with roles and permissions",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user details with roles and permissions",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/user/profile/{userId}": {
      "get": {
        "operationId": "UserController_getUserProfile",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a user's profile",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/update-profile": {
      "patch": {
        "operationId": "UserController_updateProfile",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProfileDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update own profile (any authenticated user)",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/user/complete-mine-setup": {
      "patch": {
        "operationId": "UserController_completeMineSetup",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Mark the Mine Setup Wizard as confirmed (clears the first-login redirect)",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/complete-inspector-profile": {
      "post": {
        "operationId": "UserController_completeInspectorProfile",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompleteInspectorProfileDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CLM-010 — Government Inspector first-login profile completion",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/tenant-engineers": {
      "get": {
        "operationId": "UserController_listTenantEngineers",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List users in the current tenant who can be assigned as Zone Engineer",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/assignable-personnel": {
      "get": {
        "operationId": "UserController_listAssignablePersonnel",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List active tenant personnel for assignee/operator pickers (id/name/role only)",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/{id}": {
      "patch": {
        "description": "Admin-only.",
        "operationId": "UserController_updateUser",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUserDTO"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "description": "Admin-only.",
        "operationId": "UserController_deleteUser",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/update/profile-picture": {
      "patch": {
        "operationId": "UserController_updateProfilePicture",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "profilePicture": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "required": [
                  "profilePicture"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update user profile picture",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/update/settings": {
      "patch": {
        "operationId": "UserController_updateSettings",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSettingsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update user settings",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/user/terms-and-conditions/accept": {
      "patch": {
        "operationId": "UserController_acceptTermsAndConditions",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Accept the platform's terms and conditions",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/deactivate/{userId}": {
      "patch": {
        "description": "Admin-only.",
        "operationId": "UserController_deactivateUser",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeactivateUserDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate a user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/activate/{userId}": {
      "patch": {
        "description": "Admin-only.",
        "operationId": "UserController_activateUser",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reactivate a deactivated user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/suspend/{userId}": {
      "patch": {
        "description": "Admin-only.",
        "operationId": "UserController_suspendUser",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "reason": {
                    "type": "string",
                    "nullable": true
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Suspend a user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/analytics": {
      "get": {
        "description": "Admin-only.",
        "operationId": "UserController_getUserAnalytics",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user analytics summary",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/growth-trends": {
      "get": {
        "description": "Admin-only. Bucketed by the requested interval (default: day).",
        "operationId": "UserController_getUserGrowthTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "interval",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "day",
                "week",
                "month"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user growth trends over time",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/bulk-action": {
      "post": {
        "description": "Admin-only.",
        "operationId": "UserController_bulkUserAction",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "userIds": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "action": {
                    "type": "string",
                    "enum": [
                      "activate",
                      "deactivate",
                      "suspend"
                    ]
                  },
                  "reason": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "required": [
                  "userIds",
                  "action"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Activate, deactivate, or suspend multiple users at once",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/create-random-dummy-users": {
      "post": {
        "description": "Public endpoint — no authentication required. Not intended for production use.",
        "operationId": "UserController_createRandomDummyUsers",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "[Dev/test utility] Seed a set of hardcoded dummy users",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/test/upload-file": {
      "post": {
        "description": "Public endpoint — no authentication required. Not intended for production use.",
        "operationId": "UserController_testUploadFile",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "My File Name"
                  },
                  "picture": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "required": [
                  "name",
                  "picture"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "[Dev/test utility] Upload a file to object storage",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/invite/invite-user": {
      "patch": {
        "operationId": "UserController_inviteUserController",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "emails": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "user@example.com"
                    },
                    "example": [
                      "user1@example.com",
                      "user2@example.com"
                    ]
                  },
                  "referralCode": {
                    "type": "string",
                    "example": "REF123",
                    "nullable": true
                  }
                },
                "required": [
                  "email"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "Invalid input data."
          },
          "404": {
            "description": "Referral code not found (if provided)."
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Invite a new user via email",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/invite/upload": {
      "post": {
        "description": "Admin-only.",
        "operationId": "UserController_inviteUsersBulk",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary",
                    "description": "CSV or Excel file containing user data"
                  }
                },
                "required": [
                  "file"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          },
          {
            "bearer": []
          }
        ],
        "summary": "Bulk-invite users from a CSV/Excel file",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/test-notify-platform": {
      "get": {
        "description": "Public endpoint — no authentication required. Sends a real notification to the given userId. Not intended for production use.",
        "operationId": "UserController_testNotifyPlatform",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "[Dev/test utility] Trigger a test platform notification for a user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/create-admin-user": {
      "post": {
        "description": "Public endpoint — no login token required, but the request body must include a valid adminCreationCode matching the server's configured value, or it is rejected. Creates a user with the ADMIN role directly.",
        "operationId": "UserController_createAdminUser",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUserDTO"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create an admin user",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/transform-users-profile-picture": {
      "get": {
        "description": "Public endpoint — no authentication required. Not intended for production use.",
        "operationId": "UserController_transformUsersProfilePicture",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "[Dev/migration utility] Normalize stored profile picture paths",
        "tags": [
          "user"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/user-details/update-password": {
      "patch": {
        "operationId": "UserController_updatePassword",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePasswordDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Password updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": true
                    },
                    "message": {
                      "type": "string",
                      "example": "Password updated successfully"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid old password or validation error"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update user password",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/user/request-email-update": {
      "post": {
        "operationId": "UserController_requestEmailUpdate",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestEmailUpdateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OTP sent to new email address",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": true
                    },
                    "message": {
                      "type": "string",
                      "example": "OTP sent to new email address"
                    },
                    "otpValidityMinutes": {
                      "type": "number",
                      "example": 15
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "New email is same as current or validation error"
          },
          "409": {
            "description": "Email already exists"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Request email update - sends OTP to new email",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/user/update-email/verify": {
      "patch": {
        "operationId": "UserController_verifyAndUpdateEmail",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyEmailUpdateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Email updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": true
                    },
                    "message": {
                      "type": "string",
                      "example": "Email updated successfully"
                    },
                    "newEmail": {
                      "type": "string",
                      "example": "newemail@example.com"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid or expired OTP"
          },
          "409": {
            "description": "Email already exists"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify OTP and update email",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/user/{userId}/conversation": {
      "post": {
        "description": "Creates a conversation between the authenticated admin and the specified user. If a conversation already exists, returns the existing conversation ID.",
        "operationId": "UserController_getOrCreateConversation",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "The ID of the user to create a conversation with",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Conversation created or retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "conversationId": {
                      "type": "string",
                      "example": "conv_1234567890"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "User not found"
          },
          "500": {
            "description": "Failed to create conversation"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get or create a conversation with a user",
        "tags": [
          "user"
        ]
      }
    },
    "/core/api/v1/notifications/preferences": {
      "get": {
        "operationId": "NotificationPreferencesController_get",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the caller's notification channel preferences",
        "tags": [
          "Notification Preferences"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "NotificationPreferencesController_update",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNotificationPreferencesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update the caller's notification channel preferences",
        "tags": [
          "Notification Preferences"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/notifications/preferences/digest": {
      "get": {
        "operationId": "NotificationPreferencesController_getDigest",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the caller's per-type digest frequencies + digestible catalog",
        "tags": [
          "Notification Preferences"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "NotificationPreferencesController_setDigest",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetDigestPreferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Set the caller's digest frequency for one notification type",
        "tags": [
          "Notification Preferences"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/notifications/preferences/digest/run-now": {
      "post": {
        "operationId": "NotificationPreferencesController_runDigestNow",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Immediately send the caller's queued daily digest (flush now)",
        "tags": [
          "Notification Preferences"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/analytics/registration-trends": {
      "get": {
        "operationId": "UserAnalyticsController_getRegistrationTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user registration trends over time",
        "tags": [
          "User Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/analytics/role-distribution": {
      "get": {
        "operationId": "UserAnalyticsController_getRoleDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user role distribution",
        "tags": [
          "User Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/analytics/activity-metrics": {
      "get": {
        "operationId": "UserAnalyticsController_getActivityMetrics",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user activity metrics",
        "tags": [
          "User Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/analytics/status-distribution": {
      "get": {
        "operationId": "UserAnalyticsController_getStatusDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get user status distribution",
        "tags": [
          "User Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/signing-keys": {
      "post": {
        "operationId": "UserSigningKeyController_registerKey",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterSigningKeyDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-021 — Register a device-generated public key for the current user.",
        "tags": [
          "User · Signing Keys (FR-CRYPTO-021/022)"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "UserSigningKeyController_listMyKeys",
        "parameters": [
          {
            "name": "userId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "ACTIVE",
                "REVOKED"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-022 — List signing keys for the current user (or a specified user when ADMIN).",
        "tags": [
          "User · Signing Keys (FR-CRYPTO-021/022)"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/user/signing-keys/{id}/revoke": {
      "post": {
        "operationId": "UserSigningKeyController_revokeKey",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Signing key ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RevokeSigningKeyDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-022 — Revoke a registered signing key.",
        "tags": [
          "User · Signing Keys (FR-CRYPTO-021/022)"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/health": {
      "get": {
        "operationId": "HealthController_health",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "tags": [
          "Health"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/login": {
      "post": {
        "description": "Authenticates a user and issues an access/refresh token pair. Locks the account for a cooldown period after 5 consecutive failed password attempts. Set NotifyUser=false to suppress the \"new login detected\" notification.",
        "operationId": "AuthController_login",
        "parameters": [
          {
            "name": "NotifyUser",
            "required": false,
            "in": "query",
            "description": "Whether to send login detected notification. Defaults to true.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginDTO"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Login succeeded",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResDto"
                }
              }
            }
          },
          "401": {
            "description": "Invalid credentials, account temporarily locked, or account not verified/deactivated/suspended"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Log in with email and password",
        "tags": [
          "Auth"
        ]
      }
    },
    "/core/api/v1/auth/verify-login-otp": {
      "post": {
        "description": "Completes a two-step login by checking the OTP code against the pending login session, then issues an access/refresh token pair.",
        "operationId": "AuthController_verifyLoginOtp",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyLoginOtpDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OTP verified, login completed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResDto"
                }
              }
            }
          },
          "400": {
            "description": "OTP expired or invalid"
          },
          "401": {
            "description": "Login session expired or too many failed OTP attempts"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify the OTP for a pending two-factor login",
        "tags": [
          "Auth"
        ]
      }
    },
    "/core/api/v1/auth/resend-login-otp/{email}": {
      "post": {
        "description": "Generates a new OTP for a pending two-factor login session and re-sends it by email (and SMS if a phone number is on file).",
        "operationId": "AuthController_resendLoginOtp",
        "parameters": [
          {
            "name": "email",
            "required": true,
            "in": "path",
            "schema": {
              "example": "user@example.com",
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "401": {
            "description": "Login session expired or account temporarily locked"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Resend the login OTP code",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/refresh": {
      "post": {
        "description": "Issues a new access token (and rotates the refresh token) as long as the refresh token is valid and was not issued before the user's last logout.",
        "operationId": "AuthController_refreshTokens",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "401": {
            "description": "Refresh token invalid, expired, or session revoked"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Exchange a refresh token for a new access token",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/send-otp/{email}": {
      "post": {
        "description": "Used for both new-account email verification and password-reset flows, depending on the isResetPassword query flag.",
        "operationId": "AuthController_sendOpt",
        "parameters": [
          {
            "name": "email",
            "required": true,
            "in": "path",
            "schema": {
              "example": "user@example.com",
              "type": "string"
            }
          },
          {
            "name": "isResetPassword",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "Email not found (when isResetPassword is true)"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Send a one-time verification code to an email",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/send-otp-additional-email/{email}": {
      "post": {
        "description": "Sends an OTP to a secondary email address the logged-in user wants to add to their account, ahead of calling verify-email-additional-email.",
        "operationId": "AuthController_sendOptAdditionalEmail",
        "parameters": [
          {
            "name": "email",
            "required": true,
            "in": "path",
            "schema": {
              "example": "test@example.com",
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Send a one-time verification code to an additional email",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/verify-email": {
      "post": {
        "description": "Completes new-user registration: validates the OTP sent to the email, provisions payment/finance accounts for the user, and sends a welcome email.",
        "operationId": "AuthController_verifyEmail",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ActivateAccount"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "OTP invalid/expired, or account/finance setup failed"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify email OTP and activate a new account",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/verify-email-additional-email": {
      "post": {
        "description": "Confirms an OTP sent to a secondary email and adds it to the logged-in user's list of additional emails.",
        "operationId": "AuthController_verifyEmailAdditionalEmail",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ActivateAccount"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "OTP invalid or expired"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify OTP for an additional email address",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/forgot-password": {
      "post": {
        "description": "Sends a one-time verification code to the given email to start the password-reset flow. An optional redirectUrl is remembered and returned by /auth/reset-password once the flow completes.",
        "operationId": "AuthController_forgotPassword",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ForgotPasswordDTO"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "Email not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Request a password-reset code",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/reset-password": {
      "patch": {
        "description": "Sets a new password after verifying the OTP sent via /auth/forgot-password (or /auth/send-otp).",
        "operationId": "AuthController_resetPassword",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "OTP invalid or expired"
          },
          "401": {
            "description": "Account not eligible to authenticate (deactivated/suspended/unverified)"
          },
          "404": {
            "description": "User not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reset a password using an OTP",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/get-profile": {
      "get": {
        "description": "Returns the current user's profile along with their effective permissions (used for client-side UI gating).",
        "operationId": "AuthController_getProfile",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "404": {
            "description": "User not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the logged-in user's profile",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/logout": {
      "post": {
        "description": "Revokes the caller's current access and refresh tokens by recording a logout epoch; any token issued before this moment is rejected going forward.",
        "operationId": "AuthController_logout",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Log out the current session",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/phone-otp/request": {
      "post": {
        "description": "Sends a 6-digit SMS OTP to the given phone number so the logged-in user can verify it.",
        "operationId": "AuthController_requestPhoneOtp",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestPhoneOtpDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "Phone number could not be normalized to E.164 format"
          },
          "401": {
            "description": "Too many attempts — temporarily locked"
          },
          "404": {
            "description": "User not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Request an OTP to verify a phone number",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/phone-otp/verify": {
      "post": {
        "description": "Confirms the SMS OTP and marks the phone number as verified on the logged-in user's account.",
        "operationId": "AuthController_verifyPhoneOtp",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyPhoneOtpDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "Phone number invalid, or OTP expired/incorrect"
          },
          "401": {
            "description": "Too many attempts — temporarily locked"
          },
          "404": {
            "description": "User not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify a phone number's OTP",
        "tags": [
          "Auth"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/auth/analytics/overview": {
      "get": {
        "operationId": "AuthAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get auth analytics overview",
        "tags": [
          "Auth Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/minio/analytics/overview": {
      "get": {
        "operationId": "MinioAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Cross-tenant storage usage totals",
        "tags": [
          "Storage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/minio/analytics/by-tenant": {
      "get": {
        "operationId": "MinioAnalyticsController_getByTenant",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Per-tenant storage usage breakdown",
        "tags": [
          "Storage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/minio/analytics/trend": {
      "get": {
        "operationId": "MinioAnalyticsController_getStorageTrend",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Cumulative storage growth over time",
        "tags": [
          "Storage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/webhook": {
      "post": {
        "description": "Called by Stripe directly, not by frontend clients. Public by design — authentication is done via Stripe's signature header (stripe-signature) rather than a bearer token.",
        "operationId": "PaymentController_handleWebhook",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "400": {
            "description": "Signature invalid or event could not be verified"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Stripe webhook receiver",
        "tags": [
          "Payment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/buy-credits": {
      "post": {
        "operationId": "PaymentController_buyCredits",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "credits": {
                    "type": "number",
                    "example": 10
                  },
                  "password": {
                    "type": "string",
                    "example": "userpassword"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Purchase credits",
        "tags": [
          "Payment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/create": {
      "post": {
        "operationId": "PaymentController_createStripeAccount",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a new Stripe account for the user",
        "tags": [
          "Payment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/status": {
      "get": {
        "operationId": "PaymentController_checkPaymentCapability",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Check if user can proceed with payments",
        "tags": [
          "Payment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/withdraw": {
      "post": {
        "operationId": "PaymentController_withdraw",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WithdrawCreditsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Withdraw credits",
        "tags": [
          "Payment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/analytics/overview": {
      "get": {
        "operationId": "PaymentAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment overview",
        "tags": [
          "Payment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/analytics/status-distribution": {
      "get": {
        "operationId": "PaymentAnalyticsController_getStatusDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment status distribution",
        "tags": [
          "Payment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment/analytics/trends": {
      "get": {
        "operationId": "PaymentAnalyticsController_getTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment volume trend",
        "tags": [
          "Payment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-model": {
      "post": {
        "description": "Admin-only.",
        "operationId": "FinanceController_createPricingModel",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePricingModelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Pricing model created"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a pricing model",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-model/{id}": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getPricingModelById",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing model ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a pricing model by ID",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "description": "Admin-only.",
        "operationId": "FinanceController_updatePricingModel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing model ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePricingModelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a pricing model",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "description": "Admin-only.",
        "operationId": "FinanceController_deletePricingModel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing model ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a pricing model",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-models": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getPricingModels",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all pricing models",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-rule": {
      "post": {
        "description": "Admin-only.",
        "operationId": "FinanceController_createPricingRule",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePricingRuleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Pricing rule created"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a pricing rule under a pricing model",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-rule/{id}": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getPricingRuleById",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a pricing rule by ID",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "description": "Admin-only.",
        "operationId": "FinanceController_updatePricingRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePricingRuleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a pricing rule",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "description": "Admin-only.",
        "operationId": "FinanceController_deletePricingRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a pricing rule",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-model/{pricingModelId}/pricing-rules": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getPricingRules",
        "parameters": [
          {
            "name": "pricingModelId",
            "required": true,
            "in": "path",
            "description": "Pricing model ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all pricing rules under a pricing model",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-rules/bulk": {
      "put": {
        "description": "Admin-only.",
        "operationId": "FinanceController_updateBulkPricingRuleValue",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBulkPricingRuleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update the value of multiple pricing rules at once",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-rules/reset-all/{pricingModelId}": {
      "put": {
        "description": "Admin-only.",
        "operationId": "FinanceController_resetAllPricingRulesToDefault",
        "parameters": [
          {
            "name": "pricingModelId",
            "required": true,
            "in": "path",
            "description": "Pricing model ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reset all pricing rules under a model back to their defaults",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/history/whole": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getWholeFinancialHistory",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the tenant's entire financial history",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/buy-credits/{userId}": {
      "post": {
        "operationId": "FinanceController_buyCredits",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "User ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BuyCreditsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Buy credits for a user account",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-rule/{id}/activate": {
      "post": {
        "description": "Admin-only.",
        "operationId": "FinanceController_activatePricingRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Activate a pricing rule",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/pricing-rule/{id}/deactivate": {
      "post": {
        "description": "Admin-only.",
        "operationId": "FinanceController_deactivatePricingRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Pricing rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate a pricing rule",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/create-account": {
      "post": {
        "operationId": "FinanceController_createAccount",
        "parameters": [
          {
            "name": "accountType",
            "required": true,
            "in": "query",
            "schema": {
              "enum": [
                "default",
                "wallet"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Account created"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a finance account for the logged-in user",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/amount-to-charge": {
      "get": {
        "description": "Resolves the tenant's active pricing rule for the given code/type and returns the amount it would charge, without actually charging anything.",
        "operationId": "FinanceController_getAmountToCharge",
        "parameters": [
          {
            "name": "pricingRuleCode",
            "required": true,
            "in": "query",
            "schema": {
              "enum": [
                "OPERATIONAL_PERCENTAGE_PROFIT",
                "OPERATIONAL_FIXED_PROFIT",
                "SERVICE_BOOKING_FEE",
                "SERVICE_CANCELLATION_FEE",
                "MINIMUM_CREDITS_SERVICES",
                "COMMISSION_PERCENTAGE",
                "SINGLE_SERVICE_REFUND_PERCENTAGE",
                "CONTRACT_EXPIRATION_PERIOD",
                "NON_REFUNDABLE_BOOKING"
              ],
              "type": "string"
            }
          },
          {
            "name": "pricingRuleType",
            "required": true,
            "in": "query",
            "schema": {
              "enum": [
                "percentage",
                "fixed"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the amount to charge for a given pricing rule",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/accounts/mine": {
      "get": {
        "operationId": "FinanceController_getAccount",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the logged-in user's finance account",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/my-transactions": {
      "get": {
        "operationId": "FinanceController_getMyTransactions",
        "parameters": [
          {
            "name": "type",
            "required": false,
            "in": "query",
            "description": "Filter by transaction type",
            "schema": {
              "type": "string",
              "enum": [
                "CREDIT_PURCHASE",
                "CREDITS_WITHDRAW",
                "REFUND"
              ]
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date for filtering transactions",
            "schema": {
              "example": "2025-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date for filtering transactions",
            "schema": {
              "example": "2025-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "Page number for pagination",
            "schema": {
              "minimum": 1,
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Number of items per page",
            "schema": {
              "minimum": 1,
              "maximum": 500,
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List the logged-in user's finance transactions (paginated)",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/payment-transactions": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getPaymentTransactions",
        "parameters": [
          {
            "name": "type",
            "required": false,
            "in": "query",
            "description": "Filter by transaction type",
            "schema": {
              "type": "string",
              "enum": [
                "CREDIT_PURCHASE",
                "CREDITS_WITHDRAW",
                "REFUND"
              ]
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "description": "Filter by transaction status",
            "schema": {
              "type": "string",
              "enum": [
                "PENDING",
                "COMPLETED",
                "FAILED",
                "REVERSED"
              ]
            }
          },
          {
            "name": "recipientId",
            "required": false,
            "in": "query",
            "description": "Filter by recipient ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "payerId",
            "required": false,
            "in": "query",
            "description": "Filter by payer ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date for filtering transactions",
            "schema": {
              "example": "2025-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date for filtering transactions",
            "schema": {
              "example": "2025-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "Page number for pagination",
            "schema": {
              "minimum": 1,
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Number of items per page",
            "schema": {
              "minimum": 1,
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "description": "Search query to filter transactions by ID, recipient email, payer email, etc.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List payment transactions (paginated, filterable)",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/payment-transactions/analytics": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getPaymentTransactionAnalytics",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date for analytics",
            "schema": {
              "example": "2025-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date for analytics",
            "schema": {
              "example": "2025-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Limit for top earners query",
            "schema": {
              "minimum": 1,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "interval",
            "required": false,
            "in": "query",
            "description": "Interval for revenue trends (day, week, month)",
            "schema": {
              "default": "day",
              "type": "string",
              "enum": [
                "day",
                "week",
                "month"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment transaction analytics summary",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/payment-transactions/revenue-trends": {
      "get": {
        "description": "Admin-only. Bucketed by the requested interval (default: day).",
        "operationId": "FinanceController_getRevenueTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date for analytics",
            "schema": {
              "example": "2025-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date for analytics",
            "schema": {
              "example": "2025-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Limit for top earners query",
            "schema": {
              "minimum": 1,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "interval",
            "required": false,
            "in": "query",
            "description": "Interval for revenue trends (day, week, month)",
            "schema": {
              "default": "day",
              "type": "string",
              "enum": [
                "day",
                "week",
                "month"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get revenue trends over time",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/payment-transactions/top-earners": {
      "get": {
        "description": "Admin-only. Defaults to the top 10.",
        "operationId": "FinanceController_getTopEarners",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date for analytics",
            "schema": {
              "example": "2025-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date for analytics",
            "schema": {
              "example": "2025-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Limit for top earners query",
            "schema": {
              "minimum": 1,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "interval",
            "required": false,
            "in": "query",
            "description": "Interval for revenue trends (day, week, month)",
            "schema": {
              "default": "day",
              "type": "string",
              "enum": [
                "day",
                "week",
                "month"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List the top earners by payment volume",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/payment-transactions/metrics": {
      "get": {
        "description": "Admin-only.",
        "operationId": "FinanceController_getEnhancedMetrics",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date for analytics",
            "schema": {
              "example": "2025-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date for analytics",
            "schema": {
              "example": "2025-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Limit for top earners query",
            "schema": {
              "minimum": 1,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "interval",
            "required": false,
            "in": "query",
            "description": "Interval for revenue trends (day, week, month)",
            "schema": {
              "default": "day",
              "type": "string",
              "enum": [
                "day",
                "week",
                "month"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get enhanced payment transaction metrics",
        "tags": [
          "Finance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/revenue": {
      "get": {
        "operationId": "FinanceAnalyticsController_getRevenueAnalytics",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get revenue analytics",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/revenue-monthly-delta": {
      "get": {
        "operationId": "FinanceAnalyticsController_getRevenueMonthlyDelta",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "This-month revenue vs last-month with delta %",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/transaction-trends": {
      "get": {
        "operationId": "FinanceAnalyticsController_getTransactionTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get transaction trends over time",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/payment-type-distribution": {
      "get": {
        "operationId": "FinanceAnalyticsController_getPaymentTypeDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment type distribution",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/status-distribution": {
      "get": {
        "operationId": "FinanceAnalyticsController_getPaymentStatusDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment status distribution",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/revenue-cost-summary": {
      "get": {
        "operationId": "FinanceAnalyticsController_getRevenueCostSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Revenue and Cost Summary (SRS §13.3.1) — compensation costs, production volumes, cost per tonne",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/payroll-summary": {
      "get": {
        "operationId": "FinanceAnalyticsController_getPayrollSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Payroll Summary Report (SRS §13.3.3) — per-worker earnings by site/zone/subcontractor/payment method",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/wage-distribution": {
      "get": {
        "operationId": "FinanceAnalyticsController_getWageDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Wage Distribution Report (SRS §13.3.3) — total compensation by worker role, zone, site",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/commission-calculations": {
      "get": {
        "operationId": "FinanceAnalyticsController_getCommissionCalculations",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Commission Calculations Report (SRS §13.3.3) — per-worker commission detail + active rules",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/payment-reconciliation": {
      "get": {
        "operationId": "FinanceAnalyticsController_getPaymentReconciliation",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Payment Reconciliation Report (SRS §13.3.3) — batches × status × success/failure rates + outstanding",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/payment-reconciliation/export": {
      "get": {
        "operationId": "FinanceAnalyticsController_exportPaymentReconciliation",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "format",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-PAY-040 — download the reconciliation report as CSV or PDF",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/finance/analytics/compensation-period-over-period": {
      "get": {
        "operationId": "FinanceAnalyticsController_getCompensationPeriodOverPeriod",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Period-Over-Period Compensation (SRS §13.3.3) — month-on-month compensation by site and zone",
        "tags": [
          "Finance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/legal-document": {
      "post": {
        "description": "Admin-only. Creates a new legal document in draft form.",
        "operationId": "AppController_createLegalDocument",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLegalDocumentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Legal document created"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a legal document (draft)",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/legal-document/{id}": {
      "put": {
        "description": "Admin-only. Does not affect the published content until publish is called.",
        "operationId": "AppController_updateLegalDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Legal document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLegalDocumentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "404": {
            "description": "Legal document not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a legal document's draft content and title",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "description": "Admin-only.",
        "operationId": "AppController_getLegalDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Legal document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "404": {
            "description": "Legal document not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a legal document by ID",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/legal-document/{id}/title": {
      "put": {
        "description": "Admin-only.",
        "operationId": "AppController_updateLegalDocumentTitle",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Legal document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLegalDocumentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "404": {
            "description": "Legal document not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update only a legal document's title",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/legal-document/{id}/publish": {
      "put": {
        "description": "Admin-only. Copies the draft content into the published content and marks the document as PUBLISHED, making it visible to users.",
        "operationId": "AppController_publishLegalDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Legal document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "404": {
            "description": "Legal document not found"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Publish a legal document",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/legal-document/by-title/{title}": {
      "get": {
        "description": "Available to admins and regular users, e.g. to render Terms & Conditions or a Privacy Policy at signup.",
        "operationId": "AppController_getLegalDocumentByTitle",
        "parameters": [
          {
            "name": "title",
            "required": true,
            "in": "path",
            "description": "Legal document title",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "draft",
                "published"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a legal document by its title",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app": {
      "get": {
        "description": "Admin-only. Filterable by status, title search, and type.",
        "operationId": "AppController_getLegalDocuments",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "draft",
                "published"
              ],
              "type": "string"
            }
          },
          {
            "name": "searchKey",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "terms_and_conditions",
                "privacy_policy",
                "cookie_policy",
                "disclaimer",
                "copyright",
                "safety_policy",
                "environmental_policy",
                "operational_guidelines"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List legal documents",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/activities": {
      "post": {
        "description": "Generic activity feed entry (backed by the audit log), used for the platform-wide activity timeline shown to admins.",
        "operationId": "AppController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateActivityDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Activity recorded"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record a system activity entry",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "description": "Admin-only. Filterable by activity type and free-text search.",
        "operationId": "AppController_getAll",
        "parameters": [
          {
            "name": "type",
            "required": false,
            "in": "query",
            "schema": {
              "example": "LOGIN",
              "type": "string"
            }
          },
          {
            "name": "searchKey",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "example": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "example": 10,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List system activities (paginated)",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/activities/recent": {
      "get": {
        "description": "Admin-only. Defaults to the last 24 hours.",
        "operationId": "AppController_getRecent",
        "parameters": [
          {
            "name": "hours",
            "required": false,
            "in": "query",
            "schema": {
              "example": 24,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List activities from the last N hours",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/activities/user-registration": {
      "post": {
        "description": "Admin-only. Convenience wrapper around /activities for this event type.",
        "operationId": "AppController_createUserRegistration",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Activity recorded"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record a \"new user registered\" activity",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/activities/payment-processed": {
      "post": {
        "description": "Admin-only. Convenience wrapper around /activities for this event type.",
        "operationId": "AppController_createPaymentProcessed",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Activity recorded"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record a \"payment processed\" activity",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/activities/terms-updated": {
      "post": {
        "description": "Admin-only. Convenience wrapper around /activities for this event type.",
        "operationId": "AppController_createTermsUpdate",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Activity recorded"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record a \"terms & conditions updated\" activity",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/app/announcement": {
      "post": {
        "description": "Admin-only. Convenience wrapper around /activities for this event type.",
        "operationId": "AppController_createAnnouncement",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "Activity recorded"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record an \"announcement sent\" activity",
        "tags": [
          "App"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/roles": {
      "post": {
        "operationId": "RoleController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoleDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Role created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a new role",
        "tags": [
          "roles"
        ]
      },
      "get": {
        "operationId": "RoleController_findAll",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get all roles",
        "tags": [
          "roles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/roles/search": {
      "get": {
        "operationId": "RoleController_searchNames",
        "parameters": [
          {
            "name": "q",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Search role names (lightweight)",
        "tags": [
          "roles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/roles/{id}": {
      "get": {
        "operationId": "RoleController_findOne",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Role details",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get role by ID",
        "tags": [
          "roles"
        ]
      },
      "put": {
        "operationId": "RoleController_update",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRoleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Role updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update role",
        "tags": [
          "roles"
        ]
      },
      "delete": {
        "operationId": "RoleController_delete",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "204": {
            "description": "Role deleted successfully"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete role",
        "tags": [
          "roles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/roles/{id}/activate": {
      "patch": {
        "operationId": "RoleController_activate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Role activated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Activate role",
        "tags": [
          "roles"
        ]
      }
    },
    "/core/api/v1/roles/{id}/deactivate": {
      "patch": {
        "operationId": "RoleController_deactivate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Role deactivated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate role",
        "tags": [
          "roles"
        ]
      }
    },
    "/core/api/v1/roles/assign-to-user": {
      "post": {
        "operationId": "RoleController_assignRolesToUser",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignRolesToUserDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Assign roles to user",
        "tags": [
          "roles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/roles/assign-permissions": {
      "post": {
        "operationId": "RoleController_assignPermissionsToRole",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignPermissionsToRoleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Permissions assigned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Assign permissions to role",
        "tags": [
          "roles"
        ]
      }
    },
    "/core/api/v1/role/analytics/overview": {
      "get": {
        "operationId": "RoleAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get role overview",
        "tags": [
          "Role Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/role/analytics/distribution": {
      "get": {
        "operationId": "RoleAnalyticsController_getRoleDistribution",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get role distribution",
        "tags": [
          "Role Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/permissions": {
      "post": {
        "operationId": "PermissionController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePermissionDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Permission created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permission"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a new permission",
        "tags": [
          "permissions"
        ]
      },
      "get": {
        "operationId": "PermissionController_findAll",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get all permissions",
        "tags": [
          "permissions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/permissions/{id}": {
      "get": {
        "operationId": "PermissionController_findOne",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Permission ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Permission details",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permission"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get permission by ID",
        "tags": [
          "permissions"
        ]
      },
      "put": {
        "operationId": "PermissionController_update",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Permission ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePermissionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Permission updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permission"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update permission",
        "tags": [
          "permissions"
        ]
      },
      "delete": {
        "operationId": "PermissionController_delete",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Permission ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "204": {
            "description": "Permission deleted successfully"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete permission",
        "tags": [
          "permissions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/permissions/{id}/activate": {
      "patch": {
        "operationId": "PermissionController_activate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Permission ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Permission activated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permission"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Activate permission",
        "tags": [
          "permissions"
        ]
      }
    },
    "/core/api/v1/permissions/{id}/deactivate": {
      "patch": {
        "operationId": "PermissionController_deactivate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Permission ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Permission deactivated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permission"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate permission",
        "tags": [
          "permissions"
        ]
      }
    },
    "/core/api/v1/permission/analytics/overview": {
      "get": {
        "operationId": "PermissionAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get permission overview",
        "tags": [
          "Permission Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-log/analytics/overview": {
      "get": {
        "operationId": "AuditLogAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit log overview",
        "tags": [
          "Audit Log Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-log/analytics/actor-type-distribution": {
      "get": {
        "operationId": "AuditLogAnalyticsController_getActorTypeDistribution",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get actor type distribution",
        "tags": [
          "Audit Log Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-log/analytics/trends": {
      "get": {
        "operationId": "AuditLogAnalyticsController_getTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit log volume trend",
        "tags": [
          "Audit Log Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/incidents": {
      "get": {
        "operationId": "SystemIncidentController_getAllIncidents",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "OPEN",
                "INVESTIGATING",
                "RESOLVED"
              ],
              "type": "string"
            }
          },
          {
            "name": "severity",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "CRITICAL",
                "HIGH",
                "MEDIUM"
              ],
              "type": "string"
            }
          },
          {
            "name": "searchKeyword",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get all system incidents (admin)",
        "tags": [
          "System Incidents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/incidents/{id}": {
      "get": {
        "operationId": "SystemIncidentController_getIncidentById",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get incident by ID",
        "tags": [
          "System Incidents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/incidents/{id}/status": {
      "post": {
        "operationId": "SystemIncidentController_updateIncidentStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IncidentStatusUpdateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update incident status",
        "tags": [
          "System Incidents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/incidents/{id}/resolve": {
      "post": {
        "operationId": "SystemIncidentController_resolveIncident",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveIncidentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Resolve incident and optionally notify user",
        "tags": [
          "System Incidents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/incidents/analytics/summary": {
      "get": {
        "operationId": "IncidentAnalyticsController_getSummary",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get incident analytics summary",
        "tags": [
          "Incident Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/billing/invoices": {
      "get": {
        "operationId": "BillingController_listInvoices",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all invoices",
        "tags": [
          "Billing & Subscriptions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/billing/invoices/{tenantId}": {
      "get": {
        "operationId": "BillingController_getTenantInvoices",
        "parameters": [
          {
            "name": "tenantId",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get invoices for a tenant",
        "tags": [
          "Billing & Subscriptions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/billing/usage/{tenantId}": {
      "get": {
        "operationId": "BillingController_getUsage",
        "parameters": [
          {
            "name": "tenantId",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get usage metrics for a tenant",
        "tags": [
          "Billing & Subscriptions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/billing/analytics/overview": {
      "get": {
        "operationId": "BillingAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get billing overview",
        "tags": [
          "Billing Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/billing/analytics/status-distribution": {
      "get": {
        "operationId": "BillingAnalyticsController_getStatusDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get invoice status distribution",
        "tags": [
          "Billing Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/billing/analytics/trends": {
      "get": {
        "operationId": "BillingAnalyticsController_getTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get invoice volume trend",
        "tags": [
          "Billing Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit": {
      "get": {
        "operationId": "PlatformAuditController_listAuditLogs",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "string"
            }
          },
          {
            "name": "action",
            "required": false,
            "in": "query",
            "description": "Filter by action (CREATE, UPDATE, DELETE, etc.)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource",
            "required": false,
            "in": "query",
            "description": "Filter by resource name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "FR-AUD-006 — filter by module (e.g., workforce, compliance)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "outcome",
            "required": false,
            "in": "query",
            "description": "Filter by outcome",
            "schema": {
              "type": "string",
              "enum": [
                "SUCCESS",
                "FAILURE",
                "FLAGGED"
              ]
            }
          },
          {
            "name": "userId",
            "required": false,
            "in": "query",
            "description": "Filter by user ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchKeyword",
            "required": false,
            "in": "query",
            "description": "Search by user name, action, resource, or details",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all platform audit logs (super-admin)",
        "tags": [
          "Platform Audit"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/stats": {
      "get": {
        "operationId": "PlatformAuditController_getAuditStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get platform-wide audit statistics",
        "tags": [
          "Platform Audit"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/export/csv": {
      "get": {
        "operationId": "PlatformAuditController_exportAuditLogsCsv",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "string"
            }
          },
          {
            "name": "action",
            "required": false,
            "in": "query",
            "description": "Filter by action (CREATE, UPDATE, DELETE, etc.)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource",
            "required": false,
            "in": "query",
            "description": "Filter by resource name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "FR-AUD-006 — filter by module (e.g., workforce, compliance)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "outcome",
            "required": false,
            "in": "query",
            "description": "Filter by outcome",
            "schema": {
              "type": "string",
              "enum": [
                "SUCCESS",
                "FAILURE",
                "FLAGGED"
              ]
            }
          },
          {
            "name": "userId",
            "required": false,
            "in": "query",
            "description": "Filter by user ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchKeyword",
            "required": false,
            "in": "query",
            "description": "Search by user name, action, resource, or details",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Export platform audit logs as CSV",
        "tags": [
          "Platform Audit"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/resources/{resourceId}": {
      "get": {
        "operationId": "PlatformAuditController_getResourceAuditTimeline",
        "parameters": [
          {
            "name": "resourceId",
            "required": true,
            "in": "path",
            "description": "ID of the resource whose audit timeline to fetch",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the audit timeline for one resource id (cross-module). Tenant-scoped.",
        "tags": [
          "Platform Audit"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/resources/{resourceId}/ratify": {
      "post": {
        "operationId": "PlatformAuditController_ratifyResource",
        "parameters": [
          {
            "name": "resourceId",
            "required": true,
            "in": "path",
            "description": "ID of the resource being ratified",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RatifyResourceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Ratify (acknowledge as accepted) an outstanding issue on a record. Records a RECORD_RATIFIED audit row.",
        "tags": [
          "Platform Audit"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/{id}": {
      "get": {
        "operationId": "PlatformAuditController_getAuditEntry",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Audit log entry ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit entry by ID",
        "tags": [
          "Platform Audit"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-logs": {
      "get": {
        "operationId": "TenantAuditController_getAuditLogs",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "string"
            }
          },
          {
            "name": "action",
            "required": false,
            "in": "query",
            "description": "Filter by action (CREATE, UPDATE, DELETE, etc.)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource",
            "required": false,
            "in": "query",
            "description": "Filter by resource name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "FR-AUD-006 — filter by module (e.g., workforce, compliance)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "outcome",
            "required": false,
            "in": "query",
            "description": "Filter by outcome",
            "schema": {
              "type": "string",
              "enum": [
                "SUCCESS",
                "FAILURE",
                "FLAGGED"
              ]
            }
          },
          {
            "name": "userId",
            "required": false,
            "in": "query",
            "description": "Filter by user ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchKeyword",
            "required": false,
            "in": "query",
            "description": "Search by user name, action, resource, or details",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List audit logs for current tenant",
        "tags": [
          "Audit Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-logs/stats": {
      "get": {
        "operationId": "TenantAuditController_getAuditStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit log statistics for current tenant",
        "tags": [
          "Audit Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-logs/export/csv": {
      "get": {
        "operationId": "TenantAuditController_exportAuditLogsCsv",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "string"
            }
          },
          {
            "name": "action",
            "required": false,
            "in": "query",
            "description": "Filter by action (CREATE, UPDATE, DELETE, etc.)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource",
            "required": false,
            "in": "query",
            "description": "Filter by resource name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "FR-AUD-006 — filter by module (e.g., workforce, compliance)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "outcome",
            "required": false,
            "in": "query",
            "description": "Filter by outcome",
            "schema": {
              "type": "string",
              "enum": [
                "SUCCESS",
                "FAILURE",
                "FLAGGED"
              ]
            }
          },
          {
            "name": "userId",
            "required": false,
            "in": "query",
            "description": "Filter by user ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchKeyword",
            "required": false,
            "in": "query",
            "description": "Search by user name, action, resource, or details",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (ISO 8601)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-AUD-007 — Export tenant audit logs as CSV (respects filter params)",
        "tags": [
          "Audit Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/audit-logs/{id}": {
      "get": {
        "operationId": "TenantAuditController_getAuditLogById",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Audit log entry ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a single audit log entry",
        "tags": [
          "Audit Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/overview": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit log overview",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/action-distribution": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getActionDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit action distribution",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/outcome-distribution": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getOutcomeDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit outcome distribution",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/trends": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get audit log volume trend",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/activity-summary": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getActivitySummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Audit Activity Summary (SRS §13.3.1) — system activity + unusual access events + permission changes",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/active-users": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getActiveUsersSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-1 — DAU/WAU/MAU as of the end of the selected range, each vs. the prior equivalent window",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/companies": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getCompaniesSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-2 — total/active companies for the selected range, vs. prior range, plus a trend line",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/frequency": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getFrequencyDistribution",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-7 — distribution of active users by days-active-per-week, plus the average",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/engagement-trends": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_getEngagementTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-8 — active users, adopting users (module-attributed activity), and avg days/week, each per period bucket, at the requested granularity",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-audit/analytics/export": {
      "get": {
        "operationId": "PlatformAuditAnalyticsController_exportDataset",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dataset",
            "required": true,
            "in": "query",
            "schema": {
              "enum": [
                "companies",
                "frequency",
                "engagement-trends"
              ],
              "type": "string"
            }
          },
          {
            "name": "format",
            "required": true,
            "in": "query",
            "schema": {
              "enum": [
                "csv",
                "json"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "SRS §13.4 — export the underlying figures behind one chart (Companies/Frequency/Engagement Trend only — Active Users has no chart on this page), in the requested format",
        "tags": [
          "Platform Audit Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health": {
      "get": {
        "operationId": "PlatformHealthController_getHealth",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get platform health status",
        "tags": [
          "Platform Health"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/security-events": {
      "get": {
        "operationId": "PlatformHealthController_getSecurityEvents",
        "parameters": [
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get security event feed",
        "tags": [
          "Platform Health"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/failed-logins": {
      "get": {
        "operationId": "PlatformHealthController_getFailedLogins",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Failed login attempts aggregated over the last 24 hours",
        "tags": [
          "Platform Health"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/analytics/overview": {
      "get": {
        "operationId": "PlatformHealthAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Latest per-service health snapshot + healthy/total counts",
        "tags": [
          "Platform Health Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/analytics/uptime": {
      "get": {
        "operationId": "PlatformHealthAnalyticsController_getUptime",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Per-service uptime % over time, bucketed by granularity",
        "tags": [
          "Platform Health Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/analytics/latency": {
      "get": {
        "operationId": "PlatformHealthAnalyticsController_getLatency",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Per-service avg/max latency over time",
        "tags": [
          "Platform Health Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/analytics/daily": {
      "get": {
        "operationId": "PlatformHealthAnalyticsController_getDailyHealth",
        "parameters": [
          {
            "name": "days",
            "required": false,
            "in": "query",
            "description": "How many days back to include",
            "schema": {
              "minimum": 1,
              "maximum": 365,
              "default": 90,
              "type": "number"
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Daily per-service health rollup (powers 90-day uptime bars + long-range graphs)",
        "tags": [
          "Platform Health Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-health/analytics/incidents": {
      "get": {
        "operationId": "PlatformHealthAnalyticsController_getIncidents",
        "parameters": [
          {
            "name": "days",
            "required": false,
            "in": "query",
            "description": "How many days back to include",
            "schema": {
              "minimum": 1,
              "maximum": 365,
              "default": 90,
              "type": "number"
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Service downtime/degradation incidents derived from metrics",
        "tags": [
          "Platform Health Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-usage/analytics/module-usage": {
      "get": {
        "operationId": "PlatformUsageAnalyticsController_getModuleUsage",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "companyId",
            "required": false,
            "in": "query",
            "description": "Drill down to a single company (tenant). Omit for the platform-wide view.",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Drill down to a single user role (e.g. mine_manager). Omit for all roles.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "Restrict to a single canonical module.",
            "schema": {
              "type": "string",
              "enum": [
                "Compliance",
                "Operations",
                "Workforce",
                "Safety",
                "Environmental",
                "Stock / Inventory",
                "Blasting",
                "Subcontractor",
                "Reporting",
                "Finance"
              ]
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Max rows to return for ranked lists (FR-4 / FR-5).",
            "schema": {
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-3 — Feature usage by module: volume + distinct active users per canonical module, zero-filled for unused modules.",
        "tags": [
          "Platform Usage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-usage/analytics/most-used": {
      "get": {
        "operationId": "PlatformUsageAnalyticsController_getMostUsed",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "companyId",
            "required": false,
            "in": "query",
            "description": "Drill down to a single company (tenant). Omit for the platform-wide view.",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Drill down to a single user role (e.g. mine_manager). Omit for all roles.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "Restrict to a single canonical module.",
            "schema": {
              "type": "string",
              "enum": [
                "Compliance",
                "Operations",
                "Workforce",
                "Safety",
                "Environmental",
                "Stock / Inventory",
                "Blasting",
                "Subcontractor",
                "Reporting",
                "Finance"
              ]
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Max rows to return for ranked lists (FR-4 / FR-5).",
            "schema": {
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-4 — Most-used features/modules, ranked by usage volume.",
        "tags": [
          "Platform Usage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-usage/analytics/least-used": {
      "get": {
        "operationId": "PlatformUsageAnalyticsController_getLeastUsed",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "companyId",
            "required": false,
            "in": "query",
            "description": "Drill down to a single company (tenant). Omit for the platform-wide view.",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Drill down to a single user role (e.g. mine_manager). Omit for all roles.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "Restrict to a single canonical module.",
            "schema": {
              "type": "string",
              "enum": [
                "Compliance",
                "Operations",
                "Workforce",
                "Safety",
                "Environmental",
                "Stock / Inventory",
                "Blasting",
                "Subcontractor",
                "Reporting",
                "Finance"
              ]
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Max rows to return for ranked lists (FR-4 / FR-5).",
            "schema": {
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-5 — Least-used features/modules, including zero-usage ones, flagged as never vs. rarely used.",
        "tags": [
          "Platform Usage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/platform-usage/analytics/adoption": {
      "get": {
        "operationId": "PlatformUsageAnalyticsController_getAdoption",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "companyId",
            "required": false,
            "in": "query",
            "description": "Drill down to a single company (tenant). Omit for the platform-wide view.",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Drill down to a single user role (e.g. mine_manager). Omit for all roles.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "required": false,
            "in": "query",
            "description": "Restrict to a single canonical module.",
            "schema": {
              "type": "string",
              "enum": [
                "Compliance",
                "Operations",
                "Workforce",
                "Safety",
                "Environmental",
                "Stock / Inventory",
                "Blasting",
                "Subcontractor",
                "Reporting",
                "Finance"
              ]
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "description": "Max rows to return for ranked lists (FR-4 / FR-5).",
            "schema": {
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-6 — User adoption across modules: distinct active users per module, and (under a company breakdown) the % of that company's users it represents.",
        "tags": [
          "Platform Usage Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboard": {
      "get": {
        "operationId": "DashboardController_getDashboard",
        "parameters": [
          {
            "name": "role",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get role-specific dashboard data",
        "tags": [
          "Dashboard"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboard/executive": {
      "get": {
        "operationId": "DashboardController_getExecutiveSummary",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Cross-site executive roll-up: production MTD, workforce, per-site summary",
        "tags": [
          "Dashboard"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboard/widget": {
      "get": {
        "operationId": "DashboardController_getDashboardWidget",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a specific dashboard widget",
        "tags": [
          "Dashboard"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboard/analytics/overview": {
      "get": {
        "operationId": "DashboardAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get dashboard analytics overview",
        "tags": [
          "Dashboard Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboards/me": {
      "get": {
        "operationId": "DashboardsController_getMyDashboard",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Composed dashboard for the caller's role (data + layout)",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboards/{role}": {
      "get": {
        "operationId": "DashboardsController_getDashboardForRole",
        "parameters": [
          {
            "name": "role",
            "required": true,
            "in": "path",
            "description": "Role to preview the dashboard for",
            "schema": {
              "enum": [
                "super_admin",
                "it_administrator",
                "mine_director",
                "mine_manager",
                "mine_engineer",
                "zone_engineer",
                "senior_safety_engineer",
                "junior_safety_engineer",
                "environmentalist",
                "stock_manager",
                "finance_officer",
                "field_supervisor",
                "subcontractor",
                "government_inspector"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Admin — composed dashboard for an arbitrary role (read-only preview)",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboards/me/layout": {
      "get": {
        "operationId": "DashboardsController_getMyLayout",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the caller's saved layout (with fallback)",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "operationId": "DashboardsController_saveMyLayout",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLayoutDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Save the caller's layout. Government Inspector is read-only and rejected.",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "DashboardsController_resetMyLayout",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reset the caller's layout to the role default",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboards/widgets/catalog": {
      "get": {
        "operationId": "DashboardsController_getCatalog",
        "parameters": [
          {
            "name": "role",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List widget catalog entries available to the caller",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboards/widgets/{widgetId}/data": {
      "get": {
        "operationId": "DashboardsController_getWidgetData",
        "parameters": [
          {
            "name": "widgetId",
            "required": true,
            "in": "path",
            "description": "Widget catalog entry ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "obligationType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Fetch a single widget's data (for refresh / drill-down)",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/dashboards/admin/roles/{role}/default": {
      "get": {
        "operationId": "DashboardsController_getRoleDefault",
        "parameters": [
          {
            "name": "role",
            "required": true,
            "in": "path",
            "description": "Role whose default layout to read",
            "schema": {
              "enum": [
                "super_admin",
                "it_administrator",
                "mine_director",
                "mine_manager",
                "mine_engineer",
                "zone_engineer",
                "senior_safety_engineer",
                "junior_safety_engineer",
                "environmentalist",
                "stock_manager",
                "finance_officer",
                "field_supervisor",
                "subcontractor",
                "government_inspector"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Admin — read the tenant's role-default layout (or the catalog fallback)",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "operationId": "DashboardsController_setRoleDefault",
        "parameters": [
          {
            "name": "role",
            "required": true,
            "in": "path",
            "description": "Role whose default layout to set",
            "schema": {
              "enum": [
                "super_admin",
                "it_administrator",
                "mine_director",
                "mine_manager",
                "mine_engineer",
                "zone_engineer",
                "senior_safety_engineer",
                "junior_safety_engineer",
                "environmentalist",
                "stock_manager",
                "finance_officer",
                "field_supervisor",
                "subcontractor",
                "government_inspector"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLayoutDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Admin — set the tenant's role-default layout",
        "tags": [
          "Dashboards"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/governor": {
      "get": {
        "operationId": "ReportGovernorController_getConfig",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the reporting query-governor configuration",
        "tags": [
          "Reporting Governor"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "ReportGovernorController_updateConfig",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateReportGovernorDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update the reporting query-governor configuration (Super Admin)",
        "tags": [
          "Reporting Governor"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/generate": {
      "post": {
        "operationId": "ReportingController_generate",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Generate a report",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/preview": {
      "post": {
        "operationId": "ReportingController_previewReport",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Preview the row count + sample for a would-be report run",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/run-sync": {
      "post": {
        "operationId": "ReportingController_runSync",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-RPT-001 Tier 1 — run a small/short report synchronously and return data inline (else signals async required)",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/exports": {
      "post": {
        "operationId": "ReportingController_requestExport",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateExportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Request a data export",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ReportingController_listExports",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List exports",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/exports/estimate": {
      "post": {
        "operationId": "ReportingController_estimateExport",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateExportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-EXP-003 — estimate row count + file size for an export before queueing",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/exports/{id}/status": {
      "get": {
        "operationId": "ReportingController_getExportStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Export job ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get export job status",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/exports/{id}/download": {
      "get": {
        "operationId": "ReportingController_getExportDownloadUrl",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Export job ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get pre-signed download URL for export",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/schedules": {
      "post": {
        "operationId": "ReportingController_createSchedule",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateScheduleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a report schedule",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ReportingController_listSchedules",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List report schedules",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/schedules/{id}": {
      "put": {
        "operationId": "ReportingController_updateSchedule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report schedule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateScheduleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a report schedule",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "ReportingController_deleteSchedule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report schedule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a report schedule",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/{id}/share-link": {
      "get": {
        "operationId": "ReportingController_getReportShareLink",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Generate a copy-able presigned share URL for a report. Pass ?expiresAt=&lt;iso&gt; to pick when the link expires (clamped to the report’s 7-day window).",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/schedules/{id}/share-link": {
      "get": {
        "operationId": "ReportingController_getScheduleShareLink",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report schedule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Generate a copy-able presigned share URL for the schedule’s most recent run. Pass ?expiresAt=&lt;iso&gt; to pick when the link expires.",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/schedules/{id}/download": {
      "get": {
        "operationId": "ReportingController_downloadScheduleLastRun",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report schedule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a time-bounded presigned download URL for the schedule’s most recent run",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/schedules/{id}/toggle": {
      "post": {
        "operationId": "ReportingController_toggleSchedule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report schedule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Toggle schedule active/inactive",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports": {
      "get": {
        "operationId": "ReportingController_listReports",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "QUEUED",
                "GENERATING",
                "COMPLETED",
                "FAILED",
                "EXPIRED"
              ]
            }
          },
          {
            "name": "reportType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "COMPLIANCE_SUMMARY",
                "COMPLIANCE_STATUS",
                "COMPLIANCE_LICENSE_PORTFOLIO",
                "COMPLIANCE_OVERDUE",
                "COMPLIANCE_DOCUMENT_EXPIRY",
                "COMPLIANCE_TREND",
                "PRODUCTION_WEEKLY",
                "PRODUCTION_MONTHLY",
                "DEVELOPMENT_PROGRESS",
                "SAFETY_MONTHLY",
                "SAFETY_INCIDENT",
                "SAFETY_KPI",
                "INSPECTION_COMPLIANCE",
                "PAYROLL",
                "PAYMENT_RECONCILIATION",
                "ENVIRONMENTAL",
                "ATTENDANCE",
                "WORKER_REGISTRATION",
                "TRACEABILITY_CERTIFICATE",
                "INTEGRITY_VERIFICATION",
                "INTEGRITY_REPORT",
                "WEEKLY_MINE_REPORT",
                "HAZARD_REGISTER",
                "CORRECTIVE_ACTION",
                "STOCK_INVENTORY",
                "REVENUE_SHARING"
              ]
            }
          },
          {
            "name": "format",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PDF",
                "CSV",
                "XLSX",
                "JSON"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List generated reports",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/{id}": {
      "get": {
        "operationId": "ReportingController_getStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get report details",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "ReportingController_deleteReport",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a report",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/{id}/download": {
      "get": {
        "operationId": "ReportingController_getDownloadUrl",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get pre-signed download URL",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reports/{id}/retry": {
      "post": {
        "operationId": "ReportingController_retryReport",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Report ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Retry a failed report",
        "tags": [
          "Reporting"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reporting/analytics/overview": {
      "get": {
        "operationId": "ReportingAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get reporting overview",
        "tags": [
          "Reporting Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reporting/analytics/job-status-distribution": {
      "get": {
        "operationId": "ReportingAnalyticsController_getJobStatusDistribution",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get report job status distribution",
        "tags": [
          "Reporting Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/reporting/analytics/execution-trends": {
      "get": {
        "operationId": "ReportingAnalyticsController_getExecutionTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get report execution trends",
        "tags": [
          "Reporting Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/report-builder/tables": {
      "get": {
        "operationId": "ReportBuilderController_getTables",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all database tables grouped by category",
        "tags": [
          "Report Builder"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/report-builder/query": {
      "post": {
        "operationId": "ReportBuilderController_queryTable",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DynamicQueryDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Preview data with dynamic query",
        "tags": [
          "Report Builder"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/report-builder/generate": {
      "post": {
        "operationId": "ReportBuilderController_generateReport",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateDynamicReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Queue a dynamic report export",
        "tags": [
          "Report Builder"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/report-builder/analytics/overview": {
      "get": {
        "operationId": "ReportBuilderAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get report builder analytics overview",
        "tags": [
          "Report Builder Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/registry": {
      "get": {
        "operationId": "FeatureFlagController_getRegistry",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Canonical feature-flag registry (all flags + metadata)",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/features": {
      "get": {
        "operationId": "FeatureFlagController_getFeatures",
        "parameters": [
          {
            "name": "type",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "SYSTEM_FEATURE",
                "TENANT_FEATURE"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all features from DB (with optional type filter)",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags": {
      "get": {
        "operationId": "FeatureFlagController_getAllFlags",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all feature flags (legacy enum)",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/me": {
      "get": {
        "operationId": "FeatureFlagController_getMyFlags",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Effective feature flags for current user+tenant",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/global": {
      "get": {
        "operationId": "FeatureFlagController_getGlobalDefaults",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Effective platform-wide flag defaults (GLOBAL layer)",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "operationId": "FeatureFlagController_setGlobalFlag",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetGlobalFlagDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Set or clear the platform-wide default for a flag",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/overrides": {
      "get": {
        "operationId": "FeatureFlagController_listOverrides",
        "parameters": [
          {
            "name": "scope",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "GLOBAL",
                "TENANT",
                "USER"
              ],
              "type": "string"
            }
          },
          {
            "name": "scopeId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List overrides, optionally filtered by scope/scopeId",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/overrides/bulk": {
      "put": {
        "operationId": "FeatureFlagController_bulkOverrides",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkOverrideDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Apply one flag change to a set of tenants or users",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/tenant/{tenantId}/effective": {
      "get": {
        "operationId": "FeatureFlagController_getTenantEffective",
        "parameters": [
          {
            "name": "tenantId",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Effective flags for a tenant with the deciding layer per flag",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/tenant/{tenantId}": {
      "get": {
        "operationId": "FeatureFlagController_getTenantFeatures",
        "parameters": [
          {
            "name": "tenantId",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get features for a tenant with restriction status",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/tenant/{tenantId}/restrict": {
      "put": {
        "operationId": "FeatureFlagController_restrictFeatures",
        "parameters": [
          {
            "name": "tenantId",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRestrictedFeaturesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Restrict features for a tenant",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/tenant/{tenantId}/unrestrict": {
      "put": {
        "operationId": "FeatureFlagController_unrestrictFeatures",
        "parameters": [
          {
            "name": "tenantId",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRestrictedFeaturesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Unrestrict features for a tenant",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/user/{userId}/effective": {
      "get": {
        "operationId": "FeatureFlagController_getUserEffective",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "User ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Effective flags for a user with the deciding layer per flag",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/user/{userId}": {
      "get": {
        "operationId": "FeatureFlagController_getUserFeatures",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "User ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get effective features for a user (tenant + user restrictions)",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/system/feature-flags/user/{userId}/restrict": {
      "put": {
        "operationId": "FeatureFlagController_restrictUserFeatures",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "User ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRestrictedFeaturesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Set restricted features for a user (IT admin)",
        "tags": [
          "Feature Flags"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/feature-flag/analytics/overview": {
      "get": {
        "operationId": "FeatureFlagAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get feature flag overview",
        "tags": [
          "Feature Flag Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants": {
      "get": {
        "operationId": "TenantConfigController_listTenants",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all tenants (lightweight, for dropdowns)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "TenantConfigController_createTenant",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create/provision a new tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/quarterly-delta": {
      "get": {
        "operationId": "TenantConfigController_getQuarterlyDelta",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "New tenants this quarter vs last quarter with delta %",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/all": {
      "get": {
        "operationId": "TenantConfigController_listTenantsPageable",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "enum": [
                "PROVISIONING",
                "ACTIVE",
                "SUSPENDED",
                "MAINTENANCE",
                "DEPROVISIONED"
              ],
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List tenants with pagination and search",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}": {
      "get": {
        "operationId": "TenantConfigController_getTenant",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tenant by ID",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "operationId": "TenantConfigController_updateTenant",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "TenantConfigController_deprovisionTenant",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deprovision tenant (soft delete)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/suspend": {
      "patch": {
        "operationId": "TenantConfigController_suspendTenant",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Suspend tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/activate": {
      "patch": {
        "operationId": "TenantConfigController_activateTenant",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Activate tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/maintenance": {
      "patch": {
        "operationId": "TenantConfigController_toggleMaintenance",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Toggle maintenance mode",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/kyb/upload": {
      "post": {
        "operationId": "TenantConfigController_uploadKybFile",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "required": [
                  "file"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upload a KYB document file",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/kyb/files/{fileName}": {
      "get": {
        "operationId": "TenantConfigController_serveKybFile",
        "parameters": [
          {
            "name": "fileName",
            "required": true,
            "in": "path",
            "description": "Stored KYB file name (as returned by the upload endpoint)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Serve a KYB uploaded file",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/kyb-reviews": {
      "get": {
        "operationId": "TenantConfigController_getKybReviews",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all KYB submissions for super admin review",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/kyb": {
      "get": {
        "operationId": "TenantConfigController_getTenantKyb",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get KYB data and status for a tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/kyb/submit": {
      "post": {
        "operationId": "TenantConfigController_submitKybBulk",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitKybBulkDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Submit all KYB items for review (IT admin)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/kyb/document": {
      "post": {
        "operationId": "TenantConfigController_submitKybDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitKybDocumentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Submit a KYB document (IT admin)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/tenants/{id}/kyb/review/{documentIndex}": {
      "patch": {
        "operationId": "TenantConfigController_reviewKybDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tenant ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "documentIndex",
            "required": true,
            "in": "path",
            "description": "Zero-based index of the KYB document within the tenant's submitted document list",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReviewKybDocumentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Review a KYB document (super admin)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/kyb-requirements": {
      "get": {
        "operationId": "TenantConfigController_getKybRequirements",
        "parameters": [
          {
            "name": "activeOnly",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all KYB requirements",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "TenantConfigController_createKybRequirement",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateKybRequirementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create KYB requirement",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/kyb-requirements/{id}": {
      "get": {
        "operationId": "TenantConfigController_getKybRequirement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "KYB requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get KYB requirement by ID",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "operationId": "TenantConfigController_updateKybRequirement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "KYB requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateKybRequirementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update KYB requirement",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "TenantConfigController_deleteKybRequirement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "KYB requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate KYB requirement (soft delete)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/kyb-requirements/{id}/reorder": {
      "patch": {
        "operationId": "TenantConfigController_reorderKybRequirement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "KYB requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderKybRequirementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Change KYB requirement order",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/hierarchy-labels": {
      "get": {
        "operationId": "TenantConfigController_getHierarchyLabels",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get hierarchy labels for tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "put": {
        "operationId": "TenantConfigController_updateHierarchyLabels",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHierarchyLabelsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update hierarchy labels for tenant",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/subdomain/available": {
      "get": {
        "operationId": "TenantConfigController_checkSubdomainAvailability",
        "parameters": [
          {
            "name": "subdomain",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Check whether a subdomain is available",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/settings": {
      "get": {
        "operationId": "TenantConfigController_getTenantSettings",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tenant configuration settings",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "TenantConfigController_updateTenantSettings",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantSettingsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update tenant configuration settings",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/onboarding": {
      "get": {
        "operationId": "TenantConfigController_getOnboardingChecklist",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get onboarding checklist with progress",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/onboarding/{stepName}": {
      "patch": {
        "description": "Request body is an inline object, not a validated DTO — fields are not schema-checked.",
        "operationId": "TenantConfigController_markChecklistItem",
        "parameters": [
          {
            "name": "stepName",
            "required": true,
            "in": "path",
            "description": "Onboarding checklist step key",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Mark a checklist step complete or incomplete",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/workflows": {
      "get": {
        "operationId": "TenantConfigController_listWorkflows",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all workflow configurations for the current tenant; seeds defaults on first read",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/workflows/{workflowName}/history": {
      "get": {
        "operationId": "TenantConfigController_getWorkflowHistory",
        "parameters": [
          {
            "name": "workflowName",
            "required": true,
            "in": "path",
            "description": "Workflow configuration name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the change history for a single workflow",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/workflows/{workflowName}": {
      "patch": {
        "operationId": "TenantConfigController_updateWorkflow",
        "parameters": [
          {
            "name": "workflowName",
            "required": true,
            "in": "path",
            "description": "Workflow configuration name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateWorkflowDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a workflow configuration (writes a UPDATE history row)",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/workflows/{workflowName}/reset-defaults": {
      "post": {
        "operationId": "TenantConfigController_resetWorkflowToDefaults",
        "parameters": [
          {
            "name": "workflowName",
            "required": true,
            "in": "path",
            "description": "Workflow configuration name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reset a workflow to its SRS-mandated default configuration; writes a RESET_TO_DEFAULTS history row",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant-config/workflows/{workflowName}/revert/{historyId}": {
      "post": {
        "operationId": "TenantConfigController_revertWorkflow",
        "parameters": [
          {
            "name": "workflowName",
            "required": true,
            "in": "path",
            "description": "Workflow configuration name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "historyId",
            "required": true,
            "in": "path",
            "description": "Workflow configuration history entry ID to revert to",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Revert a workflow to a prior history entry; writes a new REVERT history row",
        "tags": [
          "Tenant Configuration"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant/analytics/overview": {
      "get": {
        "operationId": "TenantAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tenant overview",
        "tags": [
          "Tenant Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant/analytics/quarterly-delta": {
      "get": {
        "operationId": "TenantAnalyticsController_getQuarterlyDelta",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "New tenants this quarter vs last quarter with delta %",
        "tags": [
          "Tenant Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/tenant/analytics/onboarding-trends": {
      "get": {
        "operationId": "TenantAnalyticsController_getOnboardingTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tenant onboarding trends",
        "tags": [
          "Tenant Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses/stats": {
      "get": {
        "operationId": "ComplianceController_getLicenseStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get license KPI stats",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses/internal/run-expiry-warning": {
      "post": {
        "operationId": "ComplianceController_runLicenseExpiryWarningNow",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "[Admin] Manually fire the license expiry warning cron (FR-CLM-020/021/022).",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses": {
      "post": {
        "operationId": "ComplianceController_createLicense",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLicenseDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a mine license record",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ComplianceController_listLicenses",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "ACTIVE",
                "SUSPENDED",
                "EXPIRED",
                "UNDER_RENEWAL",
                "REVOKED"
              ]
            }
          },
          {
            "name": "licenseType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "EXPLORATION",
                "EXTRACTION",
                "PROCESSING",
                "TRADING"
              ]
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all licenses with filters",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses/site-status/{siteId}": {
      "get": {
        "operationId": "ComplianceController_getSiteLicenseStatus",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "path",
            "description": "Mine site ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-013 — per-site license status (zone inherits its site license); drives the proactive logging warning.",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses/{id}": {
      "get": {
        "operationId": "ComplianceController_getLicense",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "License ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get license by ID",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "ComplianceController_updateLicense",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "License ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLicenseDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a license",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "ComplianceController_deleteLicense",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "License ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a license",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses/{id}/renew": {
      "post": {
        "operationId": "ComplianceController_renewLicense",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "License ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RenewLicenseDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Renew a license (extends expiry, records renewal history)",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/licenses/{id}/override": {
      "post": {
        "operationId": "ComplianceController_overrideLicense",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "License ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OverrideLicenseDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Grant a production override for a license (records justification, audit-logged)",
        "tags": [
          "Compliance & Licensing / Licenses"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/requirements": {
      "post": {
        "operationId": "ComplianceController_createRequirement",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateComplianceRequirementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a compliance requirement",
        "tags": [
          "Compliance & Licensing / Requirements"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ComplianceController_listRequirements",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PENDING",
                "IN_PROGRESS",
                "COMPLIANT",
                "NON_COMPLIANT",
                "OVERDUE"
              ]
            }
          },
          {
            "name": "frequency",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "ONE_TIME",
                "DAILY",
                "WEEKLY",
                "MONTHLY",
                "QUARTERLY",
                "BI_ANNUALLY",
                "ANNUALLY"
              ]
            }
          },
          {
            "name": "licenseId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List compliance requirements",
        "tags": [
          "Compliance & Licensing / Requirements"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/requirements/{id}": {
      "patch": {
        "operationId": "ComplianceController_updateRequirement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateComplianceRequirementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a compliance requirement",
        "tags": [
          "Compliance & Licensing / Requirements"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/overdue": {
      "get": {
        "operationId": "ComplianceController_listOverdueObligations",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List overdue obligations (compliance requirements UNION statutory inspections).",
        "tags": [
          "Compliance & Licensing / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/requirements/{id}/status": {
      "patch": {
        "operationId": "ComplianceController_updateRequirementStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRequirementStatusDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRequirementStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update requirement status (auto-generates next if recurring)",
        "tags": [
          "Compliance & Licensing / Requirements"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/requirements/{id}/issues": {
      "post": {
        "operationId": "ComplianceController_createComplianceIssue",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateComplianceIssueDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Raise an immediate-attention issue against a NON_COMPLIANT requirement",
        "tags": [
          "Compliance & Licensing / Requirements"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ComplianceController_listIssuesForRequirement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance requirement ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List immediate-attention issues for a requirement",
        "tags": [
          "Compliance & Licensing / Requirements"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/issues": {
      "get": {
        "operationId": "ComplianceController_listAllIssues",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all immediate-attention issues for the tenant",
        "tags": [
          "Compliance & Licensing / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/issues/{id}": {
      "patch": {
        "operationId": "ComplianceController_updateComplianceIssue",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance issue ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateComplianceIssueDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an immediate-attention issue resolution",
        "tags": [
          "Compliance & Licensing / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/commitments": {
      "post": {
        "operationId": "ComplianceController_createCommitment",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCommitmentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a compliance commitment",
        "tags": [
          "Compliance & Licensing / Commitments"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ComplianceController_listCommitments",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PENDING",
                "IN_PROGRESS",
                "COMPLIANT",
                "NON_COMPLIANT",
                "OVERDUE"
              ]
            }
          },
          {
            "name": "licenseId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List compliance commitments",
        "tags": [
          "Compliance & Licensing / Commitments"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/commitments/{id}": {
      "get": {
        "operationId": "ComplianceController_getCommitment",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance commitment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get commitment by ID",
        "tags": [
          "Compliance & Licensing / Commitments"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "ComplianceController_updateCommitment",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance commitment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCommitmentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update commitment",
        "tags": [
          "Compliance & Licensing / Commitments"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "ComplianceController_deleteCommitment",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance commitment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a commitment",
        "tags": [
          "Compliance & Licensing / Commitments"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/commitments/{id}/activities": {
      "get": {
        "operationId": "ComplianceController_getCommitmentActivities",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance commitment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get commitment activity timeline",
        "tags": [
          "Compliance & Licensing / Commitments"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/feedback": {
      "post": {
        "operationId": "ComplianceController_createFeedback",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInspectionFeedbackDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create inspection feedback issue",
        "tags": [
          "Compliance & Licensing / Feedback"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ComplianceController_listFeedback",
        "parameters": [
          {
            "name": "requirementId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List feedback for a requirement",
        "tags": [
          "Compliance & Licensing / Feedback"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/feedback/{id}": {
      "patch": {
        "operationId": "ComplianceController_updateFeedback",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection feedback ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInspectionFeedbackDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update feedback resolution status",
        "tags": [
          "Compliance & Licensing / Feedback"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/inspections": {
      "get": {
        "operationId": "ComplianceController_listInspections",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Paginated tenant-wide inspection-feedback list with optional filters",
        "tags": [
          "Compliance & Licensing / Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "ComplianceController_createInspection",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInspectionFeedbackDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create an inspection-feedback issue",
        "tags": [
          "Compliance & Licensing / Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/inspections/{id}/resolution": {
      "patch": {
        "operationId": "ComplianceController_updateInspectionResolution",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection feedback ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an inspection-feedback resolution",
        "tags": [
          "Compliance & Licensing / Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/calendar": {
      "get": {
        "operationId": "ComplianceController_getCalendarEvents",
        "parameters": [
          {
            "name": "startDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get compliance calendar events",
        "tags": [
          "Compliance & Licensing / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/alerts": {
      "get": {
        "operationId": "ComplianceController_getPermitAlerts",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get permit expiry alerts",
        "tags": [
          "Compliance & Licensing / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/permit-alerts": {
      "get": {
        "operationId": "ComplianceController_getPermitAlertsAlias",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get permit expiry alerts (dashboard alias)",
        "tags": [
          "Compliance & Licensing / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/documents": {
      "post": {
        "operationId": "ComplianceController_uploadDocument",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/UploadDocumentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upload a compliance document",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "ComplianceController_listDocuments",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "documentType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "Environmental Impact Assessment",
                "Safety Audit Report",
                "License Document",
                "Community Development Agreement",
                "Geotechnical Report",
                "Regulatory Filing",
                "Other"
              ]
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tag",
            "required": false,
            "in": "query",
            "description": "Single tag to match (jsonb contains)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expiresBefore",
            "required": false,
            "in": "query",
            "description": "Expiry on or before this date",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expiresAfter",
            "required": false,
            "in": "query",
            "description": "Expiry on or after this date",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "uploadedFrom",
            "required": false,
            "in": "query",
            "description": "Uploaded on or after this date",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "uploadedTo",
            "required": false,
            "in": "query",
            "description": "Uploaded on or before this date",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeSuperseded",
            "required": false,
            "in": "query",
            "description": "Include superseded prior versions (default false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 10,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List compliance documents",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/documents/stats": {
      "get": {
        "operationId": "ComplianceController_getDocumentStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get document repository statistics",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/documents/{id}": {
      "get": {
        "operationId": "ComplianceController_getDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a compliance document by ID",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "ComplianceController_deleteDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a compliance document",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/documents/{id}/versions": {
      "get": {
        "operationId": "ComplianceController_getDocumentVersions",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all versions for a compliance document",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/documents/{id}/download": {
      "get": {
        "operationId": "ComplianceController_downloadDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compliance document ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Mint a time-limited pre-signed download URL for a document",
        "tags": [
          "Compliance & Licensing / Documents"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/analytics/overview": {
      "get": {
        "operationId": "ComplianceAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get compliance overview",
        "tags": [
          "Compliance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/analytics/license-status-distribution": {
      "get": {
        "operationId": "ComplianceAnalyticsController_getLicenseStatusDistribution",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get license status distribution",
        "tags": [
          "Compliance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/analytics/license-trends": {
      "get": {
        "operationId": "ComplianceAnalyticsController_getLicenseTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get license registration trends",
        "tags": [
          "Compliance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/analytics/compliance-health": {
      "get": {
        "operationId": "ComplianceAnalyticsController_getComplianceHealth",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Compliance Health Report (SRS §13.3.1) — licenses + obligations with traffic-light + 12-month trend",
        "tags": [
          "Compliance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/analytics/compliance-action-list": {
      "get": {
        "operationId": "ComplianceAnalyticsController_getComplianceActionList",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Compliance Action List (SRS §13.3.2) — overdue + upcoming obligations for assigned sites",
        "tags": [
          "Compliance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/analytics/compliance-verification": {
      "get": {
        "operationId": "ComplianceAnalyticsController_getComplianceVerification",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Compliance Verification Report (SRS §13.3.7) — licenses, permits, obligations with evidence documents",
        "tags": [
          "Compliance Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/reports/{reportType}/preview": {
      "get": {
        "operationId": "ComplianceReportsController_preview",
        "parameters": [
          {
            "name": "reportType",
            "required": true,
            "in": "path",
            "description": "Compliance report slug (status-summary, license-portfolio, overdue, document-expiry, trend)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "obligationType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "SAFETY",
                "ENVIRONMENTAL",
                "OPERATIONAL",
                "FINANCIAL",
                "OTHER"
              ]
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PENDING",
                "IN_PROGRESS",
                "COMPLIANT",
                "NON_COMPLIANT",
                "OVERDUE"
              ]
            }
          },
          {
            "name": "responsiblePersonId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "ISO date string (inclusive)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "ISO date string (inclusive)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "monthsBack",
            "required": false,
            "in": "query",
            "description": "For trend report — number of months to look back, default 12",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "projectionSummary",
            "required": false,
            "in": "query",
            "schema": {
              "default": false,
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Preview a compliance report (first 100 rows JSON) for the UI",
        "tags": [
          "Compliance Reports"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/reports/status-summary": {
      "post": {
        "operationId": "ComplianceReportsController_generateStatusSummary",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateComplianceReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Compliance Status Summary (SRS §5.6)",
        "tags": [
          "Compliance Reports"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/reports/license-portfolio": {
      "post": {
        "operationId": "ComplianceReportsController_generateLicensePortfolio",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateComplianceReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "License Portfolio Report (SRS §5.6)",
        "tags": [
          "Compliance Reports"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/reports/overdue": {
      "post": {
        "operationId": "ComplianceReportsController_generateOverdue",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateComplianceReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Overdue Compliance Report (SRS §5.6)",
        "tags": [
          "Compliance Reports"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/reports/document-expiry": {
      "post": {
        "operationId": "ComplianceReportsController_generateDocumentExpiry",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateComplianceReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Document Expiry Report (SRS §5.6)",
        "tags": [
          "Compliance Reports"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/compliance/reports/trend": {
      "post": {
        "operationId": "ComplianceReportsController_generateTrend",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateComplianceReportDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Compliance Trend Report (SRS §5.6)",
        "tags": [
          "Compliance Reports"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/sites": {
      "post": {
        "operationId": "OperationsController_createSite",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSiteDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a mine site",
        "tags": [
          "Operations & Traceability / Sites"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listSites",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all sites",
        "tags": [
          "Operations & Traceability / Sites"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/sites/{id}": {
      "patch": {
        "operationId": "OperationsController_updateSite",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Site ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSiteDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a site",
        "tags": [
          "Operations & Traceability / Sites"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "OperationsController_deleteSite",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Site ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a site",
        "tags": [
          "Operations & Traceability / Sites"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/zones": {
      "post": {
        "operationId": "OperationsController_createZone",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateZoneDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a zone within a level",
        "tags": [
          "Operations & Traceability / Zones"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/zones/{id}": {
      "patch": {
        "operationId": "OperationsController_updateZone",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Zone ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a zone",
        "tags": [
          "Operations & Traceability / Zones"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "OperationsController_deleteZone",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Zone ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a zone",
        "tags": [
          "Operations & Traceability / Zones"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/levels": {
      "post": {
        "operationId": "OperationsController_createLevel",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLevelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a level within a site",
        "tags": [
          "Operations & Traceability / Levels"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/levels/{id}": {
      "patch": {
        "operationId": "OperationsController_updateLevel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Level ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a level",
        "tags": [
          "Operations & Traceability / Levels"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "OperationsController_deleteLevel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Level ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a level",
        "tags": [
          "Operations & Traceability / Levels"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tunnels": {
      "post": {
        "operationId": "OperationsController_createTunnel",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTunnelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a tunnel within a zone",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listTunnels",
        "parameters": [
          {
            "name": "zoneId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List tunnels for the current tenant",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/working-places": {
      "get": {
        "operationId": "OperationsController_listWorkingPlaces",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "ACTIVE",
                "COMPLETED",
                "SUSPENDED",
                "REHABILITATING",
                "ALL"
              ]
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List working places (FR-OPS-008 register)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tunnels/{id}": {
      "get": {
        "operationId": "OperationsController_getTunnel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tunnel ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a tunnel by id (tenant-scoped)",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "OperationsController_updateTunnel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tunnel ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTunnelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a tunnel (including status transitions)",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "OperationsController_deleteTunnel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tunnel ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a tunnel",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tunnels/{id}/reactivate": {
      "post": {
        "operationId": "OperationsController_reactivateTunnel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tunnel (working place) ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReactivateTunnelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reactivate a Completed/Suspended working place",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/teams": {
      "post": {
        "operationId": "OperationsController_createTeam",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTeamDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a team within a tunnel",
        "tags": [
          "Operations & Traceability / Teams"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listTeams",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List teams (optionally filtered by tunnel / shift / active flag) — used by pickers when creating per-team logs.",
        "tags": [
          "Operations & Traceability / Teams"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/teams/{id}": {
      "patch": {
        "operationId": "OperationsController_updateTeam",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Team ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a team",
        "tags": [
          "Operations & Traceability / Teams"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "OperationsController_deleteTeam",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Team ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a team",
        "tags": [
          "Operations & Traceability / Teams"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hierarchy": {
      "get": {
        "operationId": "OperationsController_getFullHierarchy",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get full hierarchy tree for all sites",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hierarchy/{siteId}": {
      "get": {
        "operationId": "OperationsController_getHierarchy",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "path",
            "description": "Site ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get full hierarchy tree for a site",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/sites/{siteId}/setup-status": {
      "get": {
        "operationId": "OperationsController_getSiteSetupStatus",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "path",
            "description": "Site ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the Mine Setup Wizard completion status for a site",
        "tags": [
          "Operations & Traceability / Sites"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-targets": {
      "post": {
        "operationId": "OperationsController_createProductionTarget",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProductionTargetDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a production target for a scoped entity (site/level/zone/tunnel)",
        "tags": [
          "Operations & Traceability / Production Targets"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listProductionTargets",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List production targets (filter by scopeId and/or scopeType)",
        "tags": [
          "Operations & Traceability / Production Targets"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-targets/{id}": {
      "delete": {
        "operationId": "OperationsController_deleteProductionTarget",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Production target ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-014 — delete a production target",
        "tags": [
          "Operations & Traceability / Production Targets"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/shift-logs": {
      "post": {
        "operationId": "OperationsController_createShiftLog",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateShiftLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a shift log (production or blasting)",
        "tags": [
          "Operations & Traceability / Shift Logs"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listShiftLogs",
        "parameters": [
          {
            "name": "logType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PRODUCTION",
                "BLASTING"
              ]
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List shift logs with optional type filter",
        "tags": [
          "Operations & Traceability / Shift Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/shift-logs/stats": {
      "get": {
        "operationId": "OperationsController_getShiftLogStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get shift log statistics",
        "tags": [
          "Operations & Traceability / Shift Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-variance": {
      "get": {
        "operationId": "OperationsController_getProductionVariance",
        "parameters": [
          {
            "name": "scopeId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scopeType",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get production variance summary for dashboard period",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production/by-zone": {
      "get": {
        "operationId": "OperationsController_getProductionByZone",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodEnd",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Per-zone production summary with achievement vs target (RED/AMBER/GREEN)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production/overnight": {
      "get": {
        "operationId": "OperationsController_getOvernightProductionSummary",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Most-recent night-shift production summary by zone",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/teams/efficiency-ranking": {
      "get": {
        "operationId": "OperationsController_getTeamEfficiencyRanking",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodEnd",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Team efficiency ranking (tonnes per crew member) for a period",
        "tags": [
          "Operations & Traceability / Teams"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-logs": {
      "post": {
        "operationId": "OperationsController_createProductionLog",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProductionLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-010 — Create a daily production log entry (DRAFT).",
        "tags": [
          "Operations & Traceability / Production Logs"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listProductionLogs",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "teamId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "oreType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "submissionStatus",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DRAFT",
                "SUBMITTED",
                "AMENDED",
                "SUPERSEDED"
              ]
            }
          },
          {
            "name": "shiftDesignation",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeSuperseded",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-010 — List production logs.",
        "tags": [
          "Operations & Traceability / Production Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-logs/{id}/submit": {
      "post": {
        "operationId": "OperationsController_submitProductionLog",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Production log ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitProductionLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-013/015 — Submit a DRAFT production log. Requires license override justification when zone license is not active.",
        "tags": [
          "Operations & Traceability / Production Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-logs/submit-batch": {
      "post": {
        "operationId": "OperationsController_submitProductionLogsBatch",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkSubmitProductionLogsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-015 — bulk-submit DRAFT production logs (all, or a given id list). Returns submitted count + per-log skip reasons.",
        "tags": [
          "Operations & Traceability / Production Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-logs/{id}/verify": {
      "patch": {
        "description": "Request body is an inline object, not a validated DTO — note/outcome are not schema-checked.",
        "operationId": "OperationsController_verifyProductionLog",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Production log ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-ORG-040 — Reconciliation Engineer verifies a SUB-submitted production log.",
        "tags": [
          "Operations & Traceability / Production Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-logs/amend": {
      "post": {
        "operationId": "OperationsController_amendProductionLog",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AmendProductionLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-015 — Mine Manager amends a submitted production log (version chain).",
        "tags": [
          "Operations & Traceability / Production Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-weekly-summary": {
      "get": {
        "operationId": "OperationsController_getProductionWeeklySummary",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "description": "ISO date for the Monday at the start of the week.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-011 — Weekly production rollup feeding Section B.",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/production-vs-target": {
      "get": {
        "operationId": "OperationsController_getProductionVsTarget",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-014 — Real-time variance vs. configured targets.",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/team-labour-logs": {
      "post": {
        "operationId": "OperationsController_upsertTeamLabourLog",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertTeamLabourLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-012 — Upsert per-shift team labour roster.",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listTeamLabourLogs",
        "parameters": [
          {
            "name": "teamId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-012 — List team labour rosters.",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/blasting-logs": {
      "post": {
        "operationId": "OperationsController_createBlastingLog",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBlastingLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deprecated: use POST shift-logs with logType=BLASTING",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/development-shifts": {
      "post": {
        "operationId": "OperationsController_createDevelopmentShift",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDevelopmentShiftDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a development shift record",
        "tags": [
          "Operations & Traceability / Development Shifts"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listDevelopmentShifts",
        "parameters": [
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "teamId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List development shift records",
        "tags": [
          "Operations & Traceability / Development Shifts"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus": {
      "post": {
        "operationId": "OperationsController_createMeu",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMeuDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Register a Mineral Extraction Unit",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listMeus",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "location",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "UNDERGROUND_FACE",
                "SURFACE_STOCKPILE",
                "PROCESSING_INTAKE",
                "STORAGE_WAREHOUSE"
              ]
            }
          },
          {
            "name": "materialType",
            "required": false,
            "in": "query",
            "description": "Filter by material classification key (tenant-configurable).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter MEUs by tunnel id (UUID)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List MEUs with pagination and search",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus/stats": {
      "get": {
        "operationId": "OperationsController_getMeuStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get MEU statistics",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus/{id}": {
      "get": {
        "operationId": "OperationsController_getMeu",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "MEU (Mineral Extraction Unit) ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a single MEU by ID",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus/{id}/chain": {
      "get": {
        "operationId": "OperationsController_getMeuChain",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "MEU (Mineral Extraction Unit) ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get chain of custody for an MEU",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus/{meuId}/chain-head": {
      "get": {
        "operationId": "OperationsController_getMeuChainHead",
        "parameters": [
          {
            "name": "meuId",
            "required": true,
            "in": "path",
            "description": "MEU (Mineral Extraction Unit) ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-013 — Get the signed chain-head for an MEU custody chain.",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus/{id}/certificate": {
      "get": {
        "operationId": "OperationsController_getMeuCertificate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "MEU (Mineral Extraction Unit) ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "format",
            "required": false,
            "in": "query",
            "schema": {
              "default": "json",
              "type": "string",
              "enum": [
                "json",
                "html",
                "pdf"
              ]
            }
          },
          {
            "name": "includeWaste",
            "required": false,
            "in": "query",
            "description": "Include WASTE-classified MEUs in the certificate body.",
            "schema": {
              "default": true,
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-TRACE-023 — Mineral Traceability Certificate for an MEU (json | html | pdf).",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/custody-transfers": {
      "post": {
        "operationId": "OperationsController_createCustodyTransfer",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustodyTransferDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record a custody transfer event",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/meus/{id}/label": {
      "post": {
        "operationId": "OperationsController_attachMEULabel",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "MEU (Mineral Extraction Unit) ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AttachMEULabelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Attach a printed or written label to an MEU (FR-TRACE-002)",
        "tags": [
          "Operations & Traceability / Meus"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots": {
      "post": {
        "operationId": "OperationsController_createLot",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a lot by aggregating MEUs",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listLots",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "AGGREGATING",
                "PROCESSING",
                "IN_STORAGE",
                "DISPATCHED",
                "EXPORTED"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List lots with pagination and search",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/stats": {
      "get": {
        "operationId": "OperationsController_getLotStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get lot statistics",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}": {
      "get": {
        "operationId": "OperationsController_getLot",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a single lot with its MEUs",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}/status": {
      "patch": {
        "operationId": "OperationsController_updateLotStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLotStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update lot status",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}/meus": {
      "post": {
        "operationId": "OperationsController_addMeusToLot",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMeusToLotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Add MEUs to a lot",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "OperationsController_removeMeusFromLot",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMeusToLotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Remove MEUs from a lot",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}/split": {
      "post": {
        "operationId": "OperationsController_splitLot",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID to split",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SplitLotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Split a lot into two lots",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}/merge": {
      "post": {
        "operationId": "OperationsController_mergeLots",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID that other lots are merged into",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MergeLotsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Merge other lots into this lot",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}/lineage": {
      "get": {
        "operationId": "OperationsController_getLotLineage",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-TRACE-022 — Lot ancestry + descendants + lineage events.",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/lots/{id}/certificate": {
      "get": {
        "operationId": "OperationsController_getLotCertificate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Lot ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "format",
            "required": false,
            "in": "query",
            "schema": {
              "default": "json",
              "type": "string",
              "enum": [
                "json",
                "html",
                "pdf"
              ]
            }
          },
          {
            "name": "includeWaste",
            "required": false,
            "in": "query",
            "description": "Include WASTE-classified MEUs in the certificate body.",
            "schema": {
              "default": true,
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-TRACE-023 — Mineral Traceability Certificate for a Lot (json | html | pdf).",
        "tags": [
          "Operations & Traceability / Lots"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tsf-cells": {
      "post": {
        "operationId": "OperationsController_createTsfCell",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTsfCellDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a new TSF cell",
        "tags": [
          "Operations & Traceability / Tsf Cells"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listTsfCells",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all TSF cells",
        "tags": [
          "Operations & Traceability / Tsf Cells"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tsf-cells/{id}": {
      "get": {
        "operationId": "OperationsController_getTsfCell",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "TSF (Tailings Storage Facility) cell ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a TSF cell by ID",
        "tags": [
          "Operations & Traceability / Tsf Cells"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "OperationsController_updateTsfCell",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "TSF (Tailings Storage Facility) cell ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTsfCellDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a TSF cell (status, inspections, capacity)",
        "tags": [
          "Operations & Traceability / Tsf Cells"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tsf-cells/{id}/placements": {
      "get": {
        "operationId": "OperationsController_listTsfCellPlacements",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "TSF (Tailings Storage Facility) cell ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": true,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": true,
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List placement history for a TSF cell",
        "tags": [
          "Operations & Traceability / Tsf Cells"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tailings/generations": {
      "post": {
        "operationId": "OperationsController_createTailingsGeneration",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTailingsGenerationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a tailings generation record from a processing batch",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listTailingsGenerations",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "batchReference",
            "required": false,
            "in": "query",
            "description": "Filter by batch reference",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List tailings generation records",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tailings/generations/{id}": {
      "get": {
        "operationId": "OperationsController_getTailingsGeneration",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tailings generation record ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a tailings generation record with traceability",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tailings/placements": {
      "post": {
        "operationId": "OperationsController_createTailingsPlacement",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTailingsPlacementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a tailings placement record (deposit into TSF cell)",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listTailingsPlacements",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "tsfCellId",
            "required": false,
            "in": "query",
            "description": "Filter by TSF cell ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "generationId",
            "required": false,
            "in": "query",
            "description": "Filter by generation record ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List tailings placement records",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tailings/placements/{id}": {
      "get": {
        "operationId": "OperationsController_getTailingsPlacement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tailings placement record ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a tailings placement record with traceability",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tailings/placements/{id}/traceability": {
      "get": {
        "operationId": "OperationsController_getPlacementTraceability",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tailings placement record ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-TAIL-005 — Source lots, MEUs, originating tunnels + shifts for a placement.",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tailings/environmental-feed": {
      "get": {
        "operationId": "OperationsController_getTailingsEnvironmentalFeed",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tsfCellId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-TAIL-006 — Aggregate tailings stats per TSF cell for env reporting.",
        "tags": [
          "Operations & Traceability / Tailings"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hash-chain/verify": {
      "post": {
        "operationId": "OperationsController_verifyHashChain",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyHashChainDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify hash chain integrity for a tunnel",
        "tags": [
          "Operations & Traceability / Hash Chain"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hash-chain/blocks": {
      "get": {
        "operationId": "OperationsController_getHashChainBlocks",
        "parameters": [
          {
            "name": "tunnelId",
            "required": true,
            "in": "query",
            "description": "UUID of the tunnel to verify",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (ISO format). Omit for no lower bound.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (ISO format). Omit for no upper bound.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get hash chain blocks for a tunnel",
        "tags": [
          "Operations & Traceability / Hash Chain"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hash-chain/stats": {
      "get": {
        "operationId": "OperationsController_getVerificationStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get hash chain verification statistics",
        "tags": [
          "Operations & Traceability / Hash Chain"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hash-chain/heads": {
      "get": {
        "operationId": "OperationsController_listTunnelChainHeads",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-012 — signed chain head for every active tunnel (IT-Admin dashboard).",
        "tags": [
          "Operations & Traceability / Hash Chain"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/integrity-report": {
      "get": {
        "operationId": "OperationsController_getIntegrityReport",
        "parameters": [
          {
            "name": "tunnelId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeMeus",
            "required": false,
            "in": "query",
            "description": "Include MEUs + custody chain in the per-record list.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-030 — Integrity Verification Report (totals + hash + signature + chain stats).",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/integrity-report/pdf": {
      "get": {
        "operationId": "OperationsController_downloadIntegrityReportPdf",
        "parameters": [
          {
            "name": "tunnelId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeMeus",
            "required": false,
            "in": "query",
            "description": "Include MEUs + custody chain in the per-record list.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-031 — Download a signed, hash-stamped PDF of the Integrity Report.",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/weekly-report/export": {
      "get": {
        "operationId": "OperationsController_downloadWeeklyReport",
        "parameters": [
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "format",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-WEEKLY-005 — Download the Weekly Mine Report (format=pdf | xlsx).",
        "tags": [
          "Operations & Traceability / Weekly Report"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/weekly-report/comparators": {
      "get": {
        "operationId": "OperationsController_getWeeklyReportComparators",
        "parameters": [
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-WEEKLY-006 — Weekly report with currentWeek + priorWeek blocks.",
        "tags": [
          "Operations & Traceability / Weekly Report"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/weekly-report": {
      "get": {
        "operationId": "OperationsController_getWeeklyMineReport",
        "parameters": [
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-WEEKLY-001..006 — Weekly mine report: 7 daily columns + total + comparators, per zone.",
        "tags": [
          "Operations & Traceability / Weekly Report"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/weekly-report/drill": {
      "get": {
        "operationId": "OperationsController_getWeeklyReportDrill",
        "parameters": [
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "date",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "section",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metricKey",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-WEEKLY-005 — Underlying shift records for one report cell.",
        "tags": [
          "Operations & Traceability / Weekly Report"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hash-chain/head/{tunnelId}": {
      "get": {
        "operationId": "OperationsController_getChainHead",
        "parameters": [
          {
            "name": "tunnelId",
            "required": true,
            "in": "path",
            "description": "Tunnel ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-012 — Signed chain-head for a tunnel (HMAC-SHA256).",
        "tags": [
          "Operations & Traceability / Hash Chain"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/hash-chain/runs": {
      "get": {
        "operationId": "OperationsController_listHashChainVerificationRuns",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-CRYPTO-002 — List recent hash-chain verification runs.",
        "tags": [
          "Operations & Traceability / Hash Chain"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/development-shifts/{id}/correct": {
      "post": {
        "operationId": "OperationsController_correctDevelopmentShift",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Development shift record ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CorrectDevelopmentShiftDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a corrected version of a development shift record (original retained)",
        "tags": [
          "Operations & Traceability / Development Shifts"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/development-plans": {
      "post": {
        "operationId": "OperationsController_createDevelopmentPlan",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDevelopmentPlanDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a development plan (DRAFT)",
        "tags": [
          "Operations & Traceability / Development Plans"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listDevelopmentPlans",
        "parameters": [
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DRAFT",
                "ACTIVE",
                "SUPERSEDED",
                "COMPLETED"
              ]
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List development plans (FR-DEV-001)",
        "tags": [
          "Operations & Traceability / Development Plans"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/development-plans/{id}": {
      "get": {
        "operationId": "OperationsController_getDevelopmentPlan",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Development plan ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a development plan by id",
        "tags": [
          "Operations & Traceability / Development Plans"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "OperationsController_updateDevelopmentPlan",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Development plan ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDevelopmentPlanDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a development plan",
        "tags": [
          "Operations & Traceability / Development Plans"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/development-plans/{id}/approve": {
      "post": {
        "operationId": "OperationsController_approveDevelopmentPlan",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Development plan ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveDevelopmentPlanDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Approve a development plan (DRAFT → ACTIVE)",
        "tags": [
          "Operations & Traceability / Development Plans"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/tunnels/{id}/development-progress": {
      "get": {
        "operationId": "OperationsController_getDevelopmentProgress",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Tunnel ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Cumulative development progress (week/month/YTD + projected completion)",
        "tags": [
          "Operations & Traceability / Tunnels"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/development-weekly-summary": {
      "get": {
        "operationId": "OperationsController_getWeeklyDevelopmentSummary",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "description": "Monday of the target week (ISO date).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Weekly development summary (plan vs actual, workplace breakdown, shift variance, working days)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/working-days": {
      "post": {
        "operationId": "OperationsController_upsertWorkingDay",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertWorkingDayDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upsert a working-day status for a tunnel + date",
        "tags": [
          "Operations & Traceability / Working Days"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listWorkingDays",
        "parameters": [
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List working-day entries",
        "tags": [
          "Operations & Traceability / Working Days"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/working-days/bulk": {
      "post": {
        "operationId": "OperationsController_bulkUpsertWorkingDays",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkUpsertWorkingDaysDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Bulk upsert (e.g. week-at-a-glance editor)",
        "tags": [
          "Operations & Traceability / Working Days"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/shift-logs/{id}/close": {
      "post": {
        "operationId": "OperationsController_closeShiftLog",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Shift log ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CloseShiftLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Close a shift log (FR-BLAST-003 enforces disposition gate)",
        "tags": [
          "Operations & Traceability / Shift Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/shift-logs/{id}/misfire-disposition": {
      "patch": {
        "operationId": "OperationsController_recordMisfireDisposition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Shift log ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecordMisfireDispositionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record misfire disposition (FR-BLAST-003)",
        "tags": [
          "Operations & Traceability / Shift Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/blasting-weekly-summary": {
      "get": {
        "operationId": "OperationsController_getWeeklyBlastingSummary",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "description": "Monday of the target week (ISO date).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Weekly blasting summary (holes per type, misfire counts, lost-blast breakdown, efficiency)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/blaster-certificates": {
      "post": {
        "operationId": "OperationsController_createBlasterCertificate",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBlasterCertificateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Register a certified blaster (FR-BLAST-004)",
        "tags": [
          "Operations & Traceability / Blaster Certificates"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listBlasterCertificates",
        "parameters": [
          {
            "name": "userId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isActive",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List blaster certificates",
        "tags": [
          "Operations & Traceability / Blaster Certificates"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/blaster-certificates/{id}": {
      "get": {
        "operationId": "OperationsController_getBlasterCertificate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Blaster certificate ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a blaster certificate by id",
        "tags": [
          "Operations & Traceability / Blaster Certificates"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "OperationsController_updateBlasterCertificate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Blaster certificate ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlasterCertificateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a blaster certificate",
        "tags": [
          "Operations & Traceability / Blaster Certificates"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/blaster-certificates/{id}/revoke": {
      "post": {
        "operationId": "OperationsController_revokeBlasterCertificate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Blaster certificate ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RevokeBlasterCertificateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Revoke a blaster certificate (FR-BLAST-004)",
        "tags": [
          "Operations & Traceability / Blaster Certificates"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/equipment-logs": {
      "post": {
        "operationId": "OperationsController_upsertEquipmentLog",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertEquipmentLogDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upsert an equipment shift log (FR-EQUIP-001)",
        "tags": [
          "Operations & Traceability / Equipment Logs"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listEquipmentLogs",
        "parameters": [
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "equipmentId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "srsCategory",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "LOCOMOTIVE",
                "WAGON",
                "COMPRESSOR",
                "BOBCAT_LHD",
                "BOESMAN_DRILL",
                "PUMP",
                "LAMP"
              ]
            }
          },
          {
            "name": "shiftDesignation",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List equipment logs",
        "tags": [
          "Operations & Traceability / Equipment Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/equipment-logs/bulk": {
      "post": {
        "operationId": "OperationsController_bulkUpsertEquipmentLogs",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkUpsertEquipmentLogsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Bulk upsert equipment logs for one shift",
        "tags": [
          "Operations & Traceability / Equipment Logs"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/equipment-utilization": {
      "get": {
        "operationId": "OperationsController_getEquipmentUtilization",
        "parameters": [
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "equipmentId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Equipment utilization rate (FR-EQUIP-002) per shift / per tunnel",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/equipment-weekly-summary": {
      "get": {
        "operationId": "OperationsController_getEquipmentWeeklySummary",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "description": "Monday of the target week (ISO date).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Weekly equipment summary (rollup, breakdowns, lamps reconciliation)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/material-availability": {
      "post": {
        "operationId": "OperationsController_upsertMaterialAvailability",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertMaterialAvailabilityDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upsert per-shift wagon material availability (FR-EQUIP-004)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "OperationsController_listMaterialAvailability",
        "parameters": [
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List per-shift wagon material availability",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/material-weekly-summary": {
      "get": {
        "operationId": "OperationsController_getMaterialWeeklySummary",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "weekStart",
            "required": true,
            "in": "query",
            "description": "Monday of the target week (ISO date).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Weekly material variance summary (FR-EQUIP-004)",
        "tags": [
          "Operations & Traceability / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/overview": {
      "get": {
        "operationId": "OperationsAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get operations overview",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/production-trends": {
      "get": {
        "operationId": "OperationsAnalyticsController_getProductionTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get production log trends",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/blasting-trends": {
      "get": {
        "operationId": "OperationsAnalyticsController_getBlastingTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get blasting event trends",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/executive-production-overview": {
      "get": {
        "operationId": "OperationsAnalyticsController_getExecutiveProductionOverview",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Executive Production Overview (SRS §13.3.1) — org-wide tonnage vs target with 12-month trend",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/zone-production": {
      "get": {
        "operationId": "OperationsAnalyticsController_getZoneProduction",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Zone Production Report (SRS §13.3.2) — daily/weekly/monthly per zone with target + variance",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/production-breakdown": {
      "get": {
        "operationId": "OperationsAnalyticsController_getProductionBreakdown",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-OPS-040(a) — extraction vs target broken down by site/zone/level/tunnel at the chosen granularity",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/operational-efficiency": {
      "get": {
        "operationId": "OperationsAnalyticsController_getOperationalEfficiency",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Operational Efficiency Report (SRS §13.3.2) — shift performance, idle-time, shift-vs-shift",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/production-declaration": {
      "get": {
        "operationId": "OperationsAnalyticsController_getProductionDeclaration",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Production Declaration (SRS §13.3.7) — aggregate by commodity, NO worker financial/identifier data",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/top-performers": {
      "get": {
        "operationId": "OperationsAnalyticsController_getTopPerformers",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Top-performing tunnels and teams by extraction volume (FR-OPS-040)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/development-progress": {
      "get": {
        "operationId": "OperationsAnalyticsController_getDevelopmentProgress",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Development advance vs plan by tunnel (FR-OPS-040/041)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/misfire-summary": {
      "get": {
        "operationId": "OperationsAnalyticsController_getMisfireSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Misfire count for the current week + disposition breakdown (FR-OPS-040)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/teams-by-tunnel": {
      "get": {
        "operationId": "OperationsAnalyticsController_getTeamsByTunnel",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Active teams by tunnel with current-shift attendance (FR-OPS-041)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/current-shift-blasting": {
      "get": {
        "operationId": "OperationsAnalyticsController_getCurrentShiftBlasting",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Blasting for the current shift (FR-OPS-041)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/meu-traceability": {
      "get": {
        "operationId": "OperationsAnalyticsController_getMeuTraceability",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "MEU lifecycle counts: created / in-transit / awaiting-processing / in-storage (FR-OPS-042)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/custody-integrity": {
      "get": {
        "operationId": "OperationsAnalyticsController_getCustodyIntegrity",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Custody chain / hash-integrity alerts across MEUs (FR-OPS-042)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/operations/analytics/custody-integrity/{alertId}/acknowledge": {
      "patch": {
        "description": "Request body is an inline object, not a validated DTO — the note field is not schema-checked.",
        "operationId": "OperationsAnalyticsController_acknowledgeCustodyAlert",
        "parameters": [
          {
            "name": "alertId",
            "required": true,
            "in": "path",
            "description": "Custody-integrity alert ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Acknowledge a custody-integrity alert (FR-OPS-042)",
        "tags": [
          "Operations Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/sync/pull": {
      "get": {
        "operationId": "SyncController_pullOne",
        "parameters": [
          {
            "name": "resource",
            "required": true,
            "in": "query",
            "description": "Resource key to pull (hierarchy | workers | workforce.roles | incident).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "since",
            "required": false,
            "in": "query",
            "description": "ISO watermark; only records changed strictly after this are returned. Omit for a full pull.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delta-pull a single resource since a watermark (FR §8.4)",
        "tags": [
          "Sync"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "SyncController_pullBatch",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SyncPullBatchDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Batch delta-pull of multiple resources in one round-trip (FR §8.4)",
        "tags": [
          "Sync"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/material-categories": {
      "post": {
        "operationId": "InventoryController_createMaterialCategory",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMaterialCategoryDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a material category",
        "tags": [
          "Inventory & Stock / Material Categories"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listMaterialCategories",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isActive",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List material categories",
        "tags": [
          "Inventory & Stock / Material Categories"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/material-categories/{id}": {
      "get": {
        "operationId": "InventoryController_getMaterialCategory",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material category ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a material category by ID",
        "tags": [
          "Inventory & Stock / Material Categories"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "InventoryController_updateMaterialCategory",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material category ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a material category",
        "tags": [
          "Inventory & Stock / Material Categories"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InventoryController_deleteMaterialCategory",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material category ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a material category",
        "tags": [
          "Inventory & Stock / Material Categories"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/material-categories/{id}/toggle-status": {
      "patch": {
        "operationId": "InventoryController_toggleMaterialCategoryStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material category ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Toggle material category active/inactive",
        "tags": [
          "Inventory & Stock / Material Categories"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment-types": {
      "post": {
        "operationId": "InventoryController_createEquipmentType",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEquipmentTypeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create an equipment type",
        "tags": [
          "Inventory & Stock / Equipment Types"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listEquipmentTypes",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isActive",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List equipment types",
        "tags": [
          "Inventory & Stock / Equipment Types"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment-types/{id}": {
      "get": {
        "operationId": "InventoryController_getEquipmentType",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get an equipment type by ID",
        "tags": [
          "Inventory & Stock / Equipment Types"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "InventoryController_updateEquipmentType",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an equipment type",
        "tags": [
          "Inventory & Stock / Equipment Types"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InventoryController_deleteEquipmentType",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete an equipment type",
        "tags": [
          "Inventory & Stock / Equipment Types"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment-types/{id}/toggle-status": {
      "patch": {
        "operationId": "InventoryController_toggleEquipmentTypeStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Toggle equipment type active/inactive",
        "tags": [
          "Inventory & Stock / Equipment Types"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/stats": {
      "get": {
        "operationId": "InventoryController_getStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get inventory KPI statistics",
        "tags": [
          "Inventory & Stock / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment/availability-by-zone": {
      "get": {
        "operationId": "InventoryController_getEquipmentAvailabilityByZone",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Equipment availability summary grouped by zone",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/materials": {
      "post": {
        "operationId": "InventoryController_createMaterial",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMaterialDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a material record",
        "tags": [
          "Inventory & Stock / Materials"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listMaterials",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List materials",
        "tags": [
          "Inventory & Stock / Materials"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/materials/{id}": {
      "get": {
        "operationId": "InventoryController_getMaterial",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a material by ID",
        "tags": [
          "Inventory & Stock / Materials"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "InventoryController_updateMaterial",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a material",
        "tags": [
          "Inventory & Stock / Materials"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InventoryController_deleteMaterial",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a material",
        "tags": [
          "Inventory & Stock / Materials"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment": {
      "post": {
        "operationId": "InventoryController_createEquipment",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEquipmentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Register equipment",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listEquipment",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List equipment",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment/{id}": {
      "get": {
        "operationId": "InventoryController_getEquipment",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get equipment by ID",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "InventoryController_updateEquipment",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update equipment",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InventoryController_deleteEquipment",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete equipment",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/equipment/{id}/assign": {
      "post": {
        "operationId": "InventoryController_assignEquipmentOperator",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Equipment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignEquipmentOperatorDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Assign an operator to a piece of equipment",
        "tags": [
          "Inventory & Stock / Equipment"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/ore-stockpiles": {
      "post": {
        "operationId": "InventoryController_createStockpile",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOreStockpileDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create an ore stockpile entry",
        "tags": [
          "Inventory & Stock / Ore Stockpiles"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listStockpiles",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List ore stockpiles",
        "tags": [
          "Inventory & Stock / Ore Stockpiles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/ore-stockpiles/stats": {
      "get": {
        "operationId": "InventoryController_getStockpileStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get ore stockpile KPI stats",
        "tags": [
          "Inventory & Stock / Ore Stockpiles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/ore-stockpiles/{id}": {
      "patch": {
        "operationId": "InventoryController_updateStockpile",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Ore stockpile ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOreStockpileDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an ore stockpile",
        "tags": [
          "Inventory & Stock / Ore Stockpiles"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InventoryController_deleteStockpile",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Ore stockpile ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete an ore stockpile",
        "tags": [
          "Inventory & Stock / Ore Stockpiles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/stock-movements": {
      "post": {
        "operationId": "InventoryController_createMovement",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateStockMovementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record stock movement",
        "tags": [
          "Inventory & Stock / Stock Movements"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listMovements",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List stock movements",
        "tags": [
          "Inventory & Stock / Stock Movements"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/stock-movements/stats": {
      "get": {
        "operationId": "InventoryController_getMovementStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get stock movement KPI stats",
        "tags": [
          "Inventory & Stock / Stock Movements"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions": {
      "post": {
        "operationId": "InventoryController_createRequisition",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMaterialRequisitionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create material requisition",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "InventoryController_listRequisitions",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List requisitions",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions/stats": {
      "get": {
        "operationId": "InventoryController_getRequisitionStats",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get requisition KPI stats",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions/{id}": {
      "get": {
        "operationId": "InventoryController_getRequisition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material requisition ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a single requisition with items",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InventoryController_deleteRequisition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material requisition ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete/revoke a requisition (only if SUBMITTED)",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions/{id}/edit": {
      "patch": {
        "operationId": "InventoryController_updateRequisition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material requisition ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMaterialRequisitionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a requisition (only if SUBMITTED)",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions/{id}/approve": {
      "patch": {
        "operationId": "InventoryController_approveRequisition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material requisition ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Approve a requisition",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions/{id}/reject": {
      "patch": {
        "operationId": "InventoryController_rejectRequisition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material requisition ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RejectRequisitionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reject a requisition",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/requisitions/{id}/fulfill": {
      "patch": {
        "operationId": "InventoryController_fulfillRequisition",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Material requisition ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FulfillRequisitionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Fulfill or partially fulfill a requisition",
        "tags": [
          "Inventory & Stock / Requisitions"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/overview": {
      "get": {
        "operationId": "InventoryAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get inventory overview",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/stock-movement-trends": {
      "get": {
        "operationId": "InventoryAnalyticsController_getStockMovementTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get stock movement trends",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/requisition-trends": {
      "get": {
        "operationId": "InventoryAnalyticsController_getRequisitionTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get material requisition trends",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/ore-stockpile": {
      "get": {
        "operationId": "InventoryAnalyticsController_getOreStockpileReport",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Ore Stockpile Report (SRS §13.3.6) — inventory by type, grade, location + movement history",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/inventory-movement": {
      "get": {
        "operationId": "InventoryAnalyticsController_getInventoryMovementReport",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Inventory Movement Report (SRS §13.3.6) — transactions grouped by category",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/grade-assay": {
      "get": {
        "operationId": "InventoryAnalyticsController_getGradeAndAssayReport",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Grade and Assay Report (SRS §13.3.6) — ore grade by zone/period, AssayRecord + ShiftLog fallback",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/inventory/analytics/material-reconciliation": {
      "get": {
        "operationId": "InventoryAnalyticsController_getMaterialReconciliationReport",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Material Reconciliation Report (SRS §13.3.6) — extracted vs received vs dispatched",
        "tags": [
          "Inventory Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/roles": {
      "get": {
        "operationId": "WorkforceController_listWorkerRoles",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List worker roles",
        "tags": [
          "Workforce & Labor / Roles"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "WorkforceController_createWorkerRole",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWorkerRoleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a custom worker role",
        "tags": [
          "Workforce & Labor / Roles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/roles/{id}": {
      "patch": {
        "operationId": "WorkforceController_updateWorkerRole",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Worker role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateWorkerRoleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a custom worker role",
        "tags": [
          "Workforce & Labor / Roles"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "WorkforceController_deactivateWorkerRole",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Worker role ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate a custom worker role",
        "tags": [
          "Workforce & Labor / Roles"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/workers": {
      "post": {
        "operationId": "WorkforceController_registerWorker",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/RegisterWorkerDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterWorkerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Register a new worker",
        "tags": [
          "Workforce & Labor / Workers"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "WorkforceController_listWorkers",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PENDING_VERIFICATION",
                "ACTIVE",
                "INACTIVE",
                "SUSPENDED",
                "TERMINATED"
              ]
            }
          },
          {
            "name": "workerCategory",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DIRECT_CASUAL_LABORER",
                "SUBCONTRACTOR_WORKER"
              ]
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter workers by zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter workers by site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter workers by level",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "teamId",
            "required": false,
            "in": "query",
            "description": "Filter workers by team",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List workers",
        "tags": [
          "Workforce & Labor / Workers"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/uploads": {
      "post": {
        "operationId": "WorkforceController_uploadWorkerImage",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upload a worker image (profile photo or national ID front/back)",
        "tags": [
          "Workforce & Labor / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/workers/{id}/payment-history": {
      "get": {
        "operationId": "WorkforceController_getWorkerPaymentHistory",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Worker ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "from",
            "required": false,
            "in": "query",
            "description": "Filter batches with periodStart &gt;= from (YYYY-MM-DD)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "to",
            "required": false,
            "in": "query",
            "description": "Filter batches with periodStart &lt;= to (YYYY-MM-DD)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment history for a worker",
        "tags": [
          "Workforce & Labor / Workers"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/workers/{id}": {
      "get": {
        "operationId": "WorkforceController_getWorker",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Worker ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get worker by ID",
        "tags": [
          "Workforce & Labor / Workers"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/workers/{id}/approve": {
      "patch": {
        "operationId": "WorkforceController_approveWorker",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Worker ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-LBR-003 — Mine Manager approves a Subcontractor-registered worker (PENDING_VERIFICATION → ACTIVE).",
        "tags": [
          "Workforce & Labor / Workers"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/workers/{id}/verify": {
      "post": {
        "operationId": "WorkforceController_verifyWorker",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Worker ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyWorkerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Verify worker through NIDA and OTP stages",
        "tags": [
          "Workforce & Labor / Workers"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions": {
      "post": {
        "operationId": "WorkforceController_createAttendanceSession",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAttendanceSessionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create an attendance session",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "WorkforceController_listAttendanceSessions",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List attendance sessions",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}": {
      "get": {
        "operationId": "WorkforceController_getAttendanceSession",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get attendance session with entries",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}/workers": {
      "post": {
        "operationId": "WorkforceController_addWorkersToSession",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddWorkersToSessionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Add workers to an attendance session",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}/check-in": {
      "post": {
        "operationId": "WorkforceController_checkInWorker",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Check in a worker",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}/check-out": {
      "post": {
        "operationId": "WorkforceController_checkOutWorker",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Check out a worker",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/records/{recordId}/unlock": {
      "patch": {
        "operationId": "WorkforceController_unlockAttendanceRecord",
        "parameters": [
          {
            "name": "recordId",
            "required": true,
            "in": "path",
            "description": "Attendance record ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UnlockAttendanceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Unlock an attendance record (Mine Manager / Director only)",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}/workers/{workerId}": {
      "delete": {
        "operationId": "WorkforceController_removeWorkerFromSession",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workerId",
            "required": true,
            "in": "path",
            "description": "Worker ID to remove from the session",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Remove a worker from an attendance session",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}/close": {
      "patch": {
        "operationId": "WorkforceController_closeAttendanceSession",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Close an attendance session",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/attendance/sessions/{id}/lock": {
      "patch": {
        "operationId": "WorkforceController_lockAttendanceSession",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Attendance session ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Lock an attendance session for payroll",
        "tags": [
          "Workforce & Labor / Attendance"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/compensation/rules": {
      "post": {
        "operationId": "WorkforceController_createCompensationRule",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCompensationRuleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a compensation rule",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "WorkforceController_listCompensationRules",
        "parameters": [
          {
            "name": "compensationType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isActive",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "approvalStatus",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "PENDING_APPROVAL",
                "APPROVED",
                "REJECTED"
              ]
            }
          },
          {
            "name": "includeSuperseded",
            "required": false,
            "in": "query",
            "schema": {
              "default": false,
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List compensation rules",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/compensation/rules/{id}/versions": {
      "get": {
        "operationId": "WorkforceController_getCompensationRuleVersions",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compensation rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List all versions of a compensation rule",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/compensation/rules/{id}": {
      "patch": {
        "operationId": "WorkforceController_updateCompensationRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compensation rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCompensationRuleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a compensation rule — creates a new version, supersedes the old one (FR-LBR-044)",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/compensation/rules/{id}/approve": {
      "patch": {
        "operationId": "WorkforceController_approveCompensationRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compensation rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Approve a pending compensation rule (Mine Manager or above)",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/compensation/rules/{id}/reject": {
      "patch": {
        "operationId": "WorkforceController_rejectCompensationRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compensation rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RejectCompensationRuleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reject a pending compensation rule (Mine Manager or above)",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/compensation/rules/{id}/toggle": {
      "patch": {
        "operationId": "WorkforceController_toggleCompensationRule",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Compensation rule ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Toggle compensation rule active/inactive",
        "tags": [
          "Workforce & Labor / Compensation"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/subcontractors": {
      "post": {
        "operationId": "WorkforceController_createSubcontractor",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubcontractorDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create a subcontractor",
        "tags": [
          "Workforce & Labor / Subcontractors"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "WorkforceController_listSubcontractors",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List subcontractors",
        "tags": [
          "Workforce & Labor / Subcontractors"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/zone-ownerships": {
      "post": {
        "operationId": "WorkforceController_submitZoneOwnership",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignZoneOwnershipDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-ORG-030 — Mine Manager submits a Subcontractor-owned-Zone for Director approval.",
        "tags": [
          "Workforce & Labor / Zone Ownerships"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "WorkforceController_listZoneOwnerships",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List Subcontractor-owned-Zone ownerships.",
        "tags": [
          "Workforce & Labor / Zone Ownerships"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/zone-ownerships/{id}/approve": {
      "patch": {
        "operationId": "WorkforceController_approveZoneOwnership",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Zone ownership assignment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-ORG-030 — Mine Director approves a pending Subcontractor-owned-Zone assignment.",
        "tags": [
          "Workforce & Labor / Zone Ownerships"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/zone-ownerships/{id}/revoke": {
      "patch": {
        "operationId": "WorkforceController_revokeZoneOwnership",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Zone ownership assignment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RevokeZoneOwnershipDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Revoke a Subcontractor-owned-Zone ownership. Both PENDING and ACTIVE can be revoked.",
        "tags": [
          "Workforce & Labor / Zone Ownerships"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/zone-ownerships/{id}/revenue-agreement": {
      "post": {
        "operationId": "WorkforceController_attachRevenueAgreement",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Zone ownership assignment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRevenueShareAgreementDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-ORG-040 — Attach a revenue-sharing agreement to an ACTIVE zone-ownership.",
        "tags": [
          "Workforce & Labor / Zone Ownerships"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/zone-ownerships/{id}/revenue-agreements": {
      "get": {
        "operationId": "WorkforceController_listRevenueAgreements",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Zone ownership assignment ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List revenue-share agreements for a zone-ownership.",
        "tags": [
          "Workforce & Labor / Zone Ownerships"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/subcontractors/{id}/deactivate": {
      "patch": {
        "operationId": "WorkforceController_deactivateSubcontractor",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Subcontractor ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate a subcontractor",
        "tags": [
          "Workforce & Labor / Subcontractors"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/preview": {
      "post": {
        "operationId": "WorkforceController_previewCompensation",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PreviewCompensationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Preview payroll calculation without creating a batch",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/generate": {
      "post": {
        "operationId": "WorkforceController_generatePaymentBatch",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GeneratePaymentBatchDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Generate a new DRAFT payment batch",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches": {
      "get": {
        "operationId": "WorkforceController_listPaymentBatches",
        "parameters": [
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DRAFT",
                "PENDING_APPROVAL",
                "APPROVED",
                "SUBMITTED",
                "READY_FOR_DISBURSEMENT",
                "REJECTED",
                "PROCESSING",
                "COMPLETED",
                "ACKNOWLEDGED",
                "PARTIALLY_COMPLETED",
                "PARTIALLY_FAILED",
                "FAILED"
              ]
            }
          },
          {
            "name": "paymentFrequency",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DAILY",
                "WEEKLY",
                "BI_WEEKLY",
                "MONTHLY"
              ]
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List payment batches",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-history": {
      "get": {
        "operationId": "WorkforceController_getPaymentHistory",
        "parameters": [
          {
            "name": "search",
            "required": false,
            "in": "query",
            "description": "Free-text search across worker name / ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "DRAFT",
                "PENDING_APPROVAL",
                "APPROVED",
                "SUBMITTED",
                "READY_FOR_DISBURSEMENT",
                "REJECTED",
                "PROCESSING",
                "COMPLETED",
                "ACKNOWLEDGED",
                "PARTIALLY_COMPLETED",
                "PARTIALLY_FAILED",
                "FAILED"
              ]
            }
          },
          {
            "name": "paymentMethod",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "MOBILE_MONEY",
                "BANK_TRANSFER",
                "CASH",
                "THIRD_PARTY_PAYROLL"
              ]
            }
          },
          {
            "name": "batchId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workerId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Inclusive lower bound on batch.periodStart",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "Inclusive upper bound on batch.periodEnd",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Flat per-worker payment history across all batches",
        "tags": [
          "Workforce & Labor / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-reconciliation/overview": {
      "get": {
        "operationId": "WorkforceController_getPaymentReconciliationOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reconciliation dashboard aggregates",
        "tags": [
          "Workforce & Labor / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}": {
      "get": {
        "operationId": "WorkforceController_getPaymentBatch",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payment batch with line items",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/submit-for-review": {
      "patch": {
        "operationId": "WorkforceController_submitBatchForReview",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Submit DRAFT batch for Finance Officer review (DRAFT → PENDING_APPROVAL)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/request-approval-otp": {
      "post": {
        "operationId": "WorkforceController_requestApprovalOtp",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-PAYSEC-005 — issue a 2FA OTP to the approver for an above-threshold batch (no-op below threshold)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/approve": {
      "patch": {
        "operationId": "WorkforceController_approveBatch",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveBatchDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Approve a PENDING_APPROVAL batch (MM / FO / Director — above-threshold batches require Director + 2FA OTP — SRS 7.7 / FR-PAYSEC-005)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/reject": {
      "patch": {
        "operationId": "WorkforceController_rejectBatch",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RejectBatchDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Reject a PENDING_APPROVAL batch back to DRAFT (MM / FO / Director — SRS 7.7)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/submit": {
      "patch": {
        "operationId": "WorkforceController_submitBatch",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Submit an APPROVED batch for disbursement (SRS 7.7)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/acknowledge": {
      "patch": {
        "operationId": "WorkforceController_acknowledgeBatch",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Acknowledge receipt of a COMPLETED batch — Subcontractor only, scoped to their own workers (SRS 7.7)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/disbursement-failure": {
      "post": {
        "description": "Request body is an inline object, not a validated DTO. The reason field does get a manual length check in the handler, but no formal schema.",
        "operationId": "WorkforceController_recordDisbursementFailure",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-PAY-041 — Record a disbursement failure; notifies FO + affected SUB(s) and flips batch to PARTIALLY_FAILED.",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/mark-paid": {
      "patch": {
        "operationId": "WorkforceController_markBatchPaid",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MarkBatchPaidDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Manually mark a SUBMITTED / PROCESSING / PARTIALLY_FAILED batch as COMPLETED (SRS 7.7)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/{id}/retry-failed": {
      "post": {
        "operationId": "WorkforceController_retryFailedItems",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Payment batch ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-PAY-041 — re-queue a batch’s FAILED items into a fresh DRAFT batch",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/payment-batches/items/{itemId}/payment-status": {
      "patch": {
        "operationId": "WorkforceController_updateItemPaymentStatus",
        "parameters": [
          {
            "name": "itemId",
            "required": true,
            "in": "path",
            "description": "Payment batch item ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateItemPaymentStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "FR-PAY-040 — update a single worker’s payment status (FAILED / CONFIRMED / REVERSED)",
        "tags": [
          "Workforce & Labor / Payment Batches"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/zones/mine": {
      "get": {
        "operationId": "WorkforceController_listZonesAssignedToMe",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List zones where the caller is the assigned engineer",
        "tags": [
          "Workforce & Labor / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/labor-efficiency": {
      "get": {
        "operationId": "WorkforceController_getLaborEfficiency",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodEnd",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Labor efficiency: workers deployed, hours, tonnage per zone",
        "tags": [
          "Workforce & Labor / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/cost-per-ton": {
      "get": {
        "operationId": "WorkforceController_getCostPerTonByZone",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodStart",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "periodEnd",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Cost per ton by zone (payroll allocation by zone hours)",
        "tags": [
          "Workforce & Labor / Other"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/overview": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get workforce overview",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/attendance-trends": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getAttendanceTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get attendance trends",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/payroll-trends": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getPayrollTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get payroll batch trends",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/workforce-summary": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getWorkforceSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Workforce Summary (SRS §13.3.1) — headcount, absenteeism, active subcontractors, payment batch status",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/workforce-productivity": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getWorkforceProductivity",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Workforce Productivity Report (SRS §13.3.2) — output per team/worker, utilization, attendance×production correlation",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/worker-compensation-summary": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getWorkerCompensationSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Worker Compensation Summary (SRS §13.3.2) — pending/approved batches, accrued comp, commission breakdown",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/workforce/analytics/attendance-overview": {
      "get": {
        "operationId": "WorkforceAnalyticsController_getAttendanceOverview",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Attendance Overview (FR-OPS-040) — workers on-site vs expected, with per-shift and per-site breakdowns",
        "tags": [
          "Workforce Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/payment-webhooks/provider-confirmation": {
      "post": {
        "operationId": "PaymentWebhookController_providerConfirmation",
        "parameters": [
          {
            "name": "x-webhook-signature",
            "required": true,
            "in": "header",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProviderConfirmationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "summary": "Payment provider delivery confirmation → auto-complete batch (HMAC-signed).",
        "tags": [
          "Payment Webhooks"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incidents": {
      "post": {
        "operationId": "SafetyController_createIncident",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/CreateIncidentDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIncidentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Report a safety incident",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "SafetyController_listIncidents",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "severity",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "MINOR",
                "MODERATE",
                "MAJOR",
                "CRITICAL"
              ]
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "REPORTED",
                "UNDER_INVESTIGATION",
                "CORRECTIVE_ACTIONS_ASSIGNED",
                "IN_PROGRESS",
                "RESOLVED",
                "CLOSED"
              ]
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List safety incidents",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incidents/{id}": {
      "get": {
        "operationId": "SafetyController_getIncident",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Safety incident ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get incident by ID",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "SafetyController_updateIncident",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Safety incident ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIncidentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Edit a safety incident’s descriptive fields",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incidents/{id}/timeline": {
      "get": {
        "operationId": "SafetyController_getIncidentTimeline",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Safety incident ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the full state-transition timeline for an incident",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incidents/{id}/linked-environmental-incident": {
      "get": {
        "operationId": "SafetyController_getLinkedEnvironmentalIncident",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Safety incident ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get linked environmental incident (cross-module link)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incidents/{id}/status": {
      "patch": {
        "operationId": "SafetyController_updateIncidentStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Safety incident ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIncidentStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update incident workflow status",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspections": {
      "post": {
        "operationId": "SafetyController_createInspection",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/CreateInspectionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInspectionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Submit inspection with checklist",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "SafetyController_listInspections",
        "parameters": [
          {
            "name": "siteId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List inspections",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspections/{id}": {
      "get": {
        "operationId": "SafetyController_getInspection",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a single inspection",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspections/{id}/acknowledge-unsatisfactory": {
      "patch": {
        "operationId": "SafetyController_acknowledgeUnsatisfactory",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Acknowledge an unsatisfactory inspection finding",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspections/{id}/amend": {
      "post": {
        "operationId": "SafetyController_amendInspection",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AmendInspectionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Amend an inspection (Mine Manager only)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-schedules": {
      "post": {
        "operationId": "SafetyController_createSchedule",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInspectionScheduleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create inspection schedule",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "SafetyController_listInspectionSchedules",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List inspection schedules",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-schedules/mine": {
      "get": {
        "operationId": "SafetyController_listMyPendingSchedules",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List my pending scheduled inspections (assigned to my role), sorted by due date",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/hazards": {
      "post": {
        "operationId": "SafetyController_createHazard",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateHazardDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Log a hazard observation",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "SafetyController_listHazards",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "GROUND_STABILITY",
                "ELECTRICAL",
                "MECHANICAL",
                "CHEMICAL",
                "ERGONOMIC",
                "ENVIRONMENTAL",
                "TRAFFIC",
                "FIRE",
                "OTHER"
              ]
            }
          },
          {
            "name": "riskClassification",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "LOW",
                "MEDIUM",
                "HIGH",
                "EXTREME"
              ]
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "OBSERVED",
                "OPEN",
                "CONTROLLED",
                "CLOSED",
                "CLOSED_NOT_SIGNIFICANT"
              ]
            }
          },
          {
            "name": "q",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List hazard register",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/hazards/{id}/photos": {
      "post": {
        "operationId": "SafetyController_addHazardPhotos",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Attach photo evidence to a hazard",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/hazards/{id}/triage": {
      "post": {
        "operationId": "SafetyController_triageHazard",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Hazard observation ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TriageHazardDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Triage a hazard observation (promote or close as not significant)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/corrective-actions": {
      "post": {
        "operationId": "SafetyController_createCorrectiveAction",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCorrectiveActionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create corrective action",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "SafetyController_listCorrectiveActions",
        "parameters": [
          {
            "name": "sourceType",
            "required": false,
            "in": "query",
            "description": "incident | inspection | hazard",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "assignedTo",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "priority",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "IMMEDIATE",
                "HIGH",
                "MEDIUM",
                "LOW"
              ]
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "OPEN",
                "IN_PROGRESS",
                "COMPLETED",
                "VERIFIED"
              ]
            }
          },
          {
            "name": "dueBefore",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 50,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List corrective actions",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/corrective-actions/{id}/status": {
      "patch": {
        "operationId": "SafetyController_updateCorrectiveActionStatus",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Corrective action ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCorrectiveActionStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update corrective action status",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/dashboard": {
      "get": {
        "operationId": "SafetyController_getSafetyDashboard",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get safety dashboard",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/overview": {
      "get": {
        "operationId": "SafetyAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get safety overview",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/incident-trends": {
      "get": {
        "operationId": "SafetyAnalyticsController_getIncidentTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get safety incident trends",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/hazard-distribution": {
      "get": {
        "operationId": "SafetyAnalyticsController_getHazardDistribution",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get hazard risk-level distribution",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/incident-summary": {
      "get": {
        "operationId": "SafetyAnalyticsController_getIncidentSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Safety Incident Summary (SRS §13.3.2) — open incidents + overdue actions + compliance rate",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/incident-register": {
      "get": {
        "operationId": "SafetyAnalyticsController_getIncidentRegister",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Incident Register (SRS §13.3.4) — filterable incidents with time-to-resolution",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/inspection-log": {
      "get": {
        "operationId": "SafetyAnalyticsController_getInspectionLog",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Safety Inspection Log (SRS §13.3.4) — inspections × findings × corrective actions",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/corrective-action-status": {
      "get": {
        "operationId": "SafetyAnalyticsController_getCorrectiveActionStatus",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Corrective Action Status Report (SRS §13.3.4) — responsible person, due date, completion, overdue",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/safety-kpi": {
      "get": {
        "operationId": "SafetyAnalyticsController_getSafetyKpi",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Safety KPI Dashboard (SRS §13.3.4) — incident frequency rate, LTIFR, days since last recordable, closure rate",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/safety-compliance": {
      "get": {
        "operationId": "SafetyAnalyticsController_getSafetyCompliance",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Safety Compliance Report (SRS §13.3.4) — safety-specific obligations with evidence",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/analytics/safety-compliance-summary": {
      "get": {
        "operationId": "SafetyAnalyticsController_getSafetyComplianceSummary",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Safety Compliance Summary (SRS §13.3.7) — incident summary + corrective action status (read-only)",
        "tags": [
          "Safety Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incident-types": {
      "get": {
        "operationId": "IncidentTypeConfigController_list",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List enabled incident types for the current tenant",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "IncidentTypeConfigController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIncidentTypeConfigDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Add a custom incident type (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incident-types/all": {
      "get": {
        "operationId": "IncidentTypeConfigController_listAll",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List ALL incident types (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/incident-types/{id}": {
      "patch": {
        "operationId": "IncidentTypeConfigController_update",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Incident type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIncidentTypeConfigDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an incident type (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "IncidentTypeConfigController_remove",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Incident type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a custom incident type (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-types": {
      "get": {
        "operationId": "InspectionTypeConfigController_list",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List enabled inspection types for the current tenant",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "InspectionTypeConfigController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInspectionTypeConfigDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Add a custom inspection type (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-types/all": {
      "get": {
        "operationId": "InspectionTypeConfigController_listAll",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List ALL inspection types (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-types/{id}": {
      "patch": {
        "operationId": "InspectionTypeConfigController_update",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInspectionTypeConfigDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an inspection type (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InspectionTypeConfigController_remove",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Inspection type ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a custom inspection type (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-checklists": {
      "get": {
        "operationId": "InspectionChecklistTemplateController_list",
        "parameters": [
          {
            "name": "inspectionTypeKey",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List active checklist items, optionally filtered by inspection type",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "InspectionChecklistTemplateController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateChecklistTemplateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create checklist item (IT Administrator)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-checklists/all": {
      "get": {
        "operationId": "InspectionChecklistTemplateController_listAll",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List ALL checklist items including disabled (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/inspection-checklists/{id}": {
      "patch": {
        "operationId": "InspectionChecklistTemplateController_update",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Checklist item ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateChecklistTemplateDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update checklist item (IT Administrator)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "InspectionChecklistTemplateController_remove",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "description": "Checklist item ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete checklist item (IT Administrator)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/safety/risk-classification": {
      "get": {
        "operationId": "RiskClassificationConfigController_get",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get the 5×5 risk-matrix thresholds for the tenant",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "RiskClassificationConfigController_update",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRiskClassificationConfigDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update the 5×5 risk-matrix thresholds (admin)",
        "tags": [
          "Safety & Inspections"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/parameters": {
      "post": {
        "operationId": "EnvironmentController_createParameter",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMonitoringParameterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create monitoring parameter",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "EnvironmentController_listParameters",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List monitoring parameters",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/parameters/{id}": {
      "patch": {
        "operationId": "EnvironmentController_updateParameter",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMonitoringParameterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update a monitoring parameter",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      },
      "delete": {
        "operationId": "EnvironmentController_deactivateParameter",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Deactivate a monitoring parameter",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/monitoring-records": {
      "post": {
        "operationId": "EnvironmentController_createRecord",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMonitoringRecordDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Record environmental measurement",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "EnvironmentController_listRecords",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "parameterId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "breached",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List monitoring records",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/monitoring-records/{id}/acknowledge": {
      "patch": {
        "operationId": "EnvironmentController_acknowledgeAlert",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Acknowledge a breaching monitoring-record alert",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/monitoring-records/{id}/resolve": {
      "patch": {
        "operationId": "EnvironmentController_resolveAlert",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Resolve a breaching monitoring-record alert",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/incidents": {
      "post": {
        "operationId": "EnvironmentController_createIncident",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEnvironmentalIncidentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Report environmental incident",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      },
      "get": {
        "operationId": "EnvironmentController_listIncidents",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "parameterId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "breached",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List environmental incidents",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/incidents/{id}": {
      "get": {
        "operationId": "EnvironmentController_getIncident",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get a single environmental incident",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      },
      "patch": {
        "operationId": "EnvironmentController_updateIncident",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEnvironmentalIncidentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an environmental incident",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/compliance-records": {
      "get": {
        "operationId": "EnvironmentController_listComplianceRecords",
        "parameters": [
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "parameterId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "breached",
            "required": false,
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List environmental compliance records",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/compliance-records/{id}/evidence": {
      "post": {
        "operationId": "EnvironmentController_uploadComplianceEvidence",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/UploadComplianceEvidenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Upload an evidence document for a compliance record",
        "tags": [
          "Environmental Management"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/overview": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getOverview",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get environment overview",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/monitoring-trends": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getMonitoringTrends",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get environmental monitoring trends",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/environmental-performance": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getEnvironmentalPerformance",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Environmental Performance Overview (SRS §13.3.1) — incidents by severity, open incidents, monitoring trends, waste volumes",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/monitoring-report": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getEnvironmentalMonitoringReport",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Environmental Monitoring Report (SRS §13.3.5) — parameter readings, trends, exceedance summary",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/incident-report": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getEnvironmentalIncidentReport",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Environmental Incident Report (SRS §13.3.5) — status, severity, cause, resolution",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/waste-management": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getWasteManagement",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Waste Management Report (SRS §13.3.5) — volumes by type/destination, waste-to-ore ratio, tailings utilization",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/compliance-status": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getEnvironmentalComplianceStatus",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Environmental Compliance Status (SRS §13.3.5) — permit obligations with evidence",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/annual-report-draft": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getAnnualEnvironmentalReportDraft",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Annual Environmental Report Draft (SRS §13.3.5) — consolidated annual summary, structured for regulatory submission",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/tsf-utilization": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getTsfUtilization",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "TSF Capacity Utilization (FR-OPS-040) — per-cell fill indicators + tenant-wide totals",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/active-alerts": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getActiveAlerts",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Active Environmental Alerts (FR-OPS-040) — threshold breaches in a recent window, by parameter",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/environment/analytics/compliance-report-inspector": {
      "get": {
        "operationId": "EnvironmentAnalyticsController_getEnvironmentalComplianceReportInspector",
        "parameters": [
          {
            "name": "startDate",
            "required": false,
            "in": "query",
            "description": "Start date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-01-01",
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "required": false,
            "in": "query",
            "description": "End date (YYYY-MM-DD)",
            "schema": {
              "example": "2025-12-31",
              "type": "string"
            }
          },
          {
            "name": "granularity",
            "required": false,
            "in": "query",
            "description": "Time granularity for time-series data",
            "schema": {
              "default": "daily",
              "type": "string",
              "enum": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "yearly"
              ]
            }
          },
          {
            "name": "service",
            "required": false,
            "in": "query",
            "description": "Filter to a single service",
            "schema": {
              "example": "core-service",
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — company-level drill-down (Super Admin only). Not applicable to FR-2 (counting companies is inherently platform-wide).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "role",
            "required": false,
            "in": "query",
            "description": "Platform Usage & Adoption Analytics — role-level drill-down (Super Admin only).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "siteId",
            "required": false,
            "in": "query",
            "description": "Filter to one site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zoneId",
            "required": false,
            "in": "query",
            "description": "Filter to one zone within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "levelId",
            "required": false,
            "in": "query",
            "description": "Filter to one level within the site",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tunnelId",
            "required": false,
            "in": "query",
            "description": "Filter to one tunnel within the zone",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shift",
            "required": false,
            "in": "query",
            "description": "Filter to one shift designation (used by the \"current shift\" preset).",
            "schema": {
              "type": "string",
              "enum": [
                "DAY",
                "NIGHT",
                "CUSTOM"
              ]
            }
          },
          {
            "name": "groupBy",
            "required": false,
            "in": "query",
            "description": "Group the production breakdown by site / zone / level / tunnel.",
            "schema": {
              "type": "string",
              "enum": [
                "site",
                "zone",
                "level",
                "tunnel"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Environmental Compliance Report (SRS §13.3.7) — aggregate monitoring + incidents + waste (read-only)",
        "tags": [
          "Environment Analytics"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/self-health": {
      "get": {
        "operationId": "SelfHealthController_getSelf",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "summary": "Self health probe (used by crons-service polling)",
        "tags": [
          "Self Health"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/alerts/critical": {
      "get": {
        "operationId": "AlertsController_getCriticalAlerts",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Aggregated critical alerts: equipment + safety + compliance + environment",
        "tags": [
          "Critical Alerts"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/api-keys/scopes": {
      "get": {
        "description": "The canonical scope registry. Clients MUST render from this rather than hardcoding a list, so new scopes appear without a redeploy.",
        "operationId": "ApiKeyController_listScopes",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List every grantable API scope",
        "tags": [
          "Developer / API Keys"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/api-keys": {
      "get": {
        "operationId": "ApiKeyController_list",
        "parameters": [
          {
            "name": "environment",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "test"
              ]
            }
          },
          {
            "name": "scopeTarget",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "tenant",
                "platform"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiKeyResponseDto"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List this tenant’s API keys",
        "tags": [
          "Developer / API Keys"
        ]
      },
      "post": {
        "description": "Returns the key and its signing secret exactly once. Neither can be retrieved again — the key is stored only as a bcrypt hash.",
        "operationId": "ApiKeyController_create",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiKeyDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssuedApiKeyResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Issue a new API key",
        "tags": [
          "Developer / API Keys"
        ]
      }
    },
    "/core/api/v1/developer/api-keys/{id}/rotate": {
      "post": {
        "description": "Issues a replacement and then revokes the old key. The previous key stops working immediately — there is no grace window.",
        "operationId": "ApiKeyController_rotate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssuedApiKeyResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Rotate an API key",
        "tags": [
          "Developer / API Keys"
        ]
      }
    },
    "/core/api/v1/developer/api-keys/{id}": {
      "patch": {
        "operationId": "ApiKeyController_update",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateApiKeyDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiKeyResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an API key’s metadata, scopes or limits",
        "tags": [
          "Developer / API Keys"
        ]
      },
      "delete": {
        "description": "Only permitted once the key is already revoked, so tidying the list can never cause an outage.",
        "operationId": "ApiKeyController_remove",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "204": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Permanently delete a revoked API key",
        "tags": [
          "Developer / API Keys"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/api-keys/{id}/revoke": {
      "post": {
        "description": "Takes effect immediately. Idempotent.",
        "operationId": "ApiKeyController_revoke",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RevokeApiKeyDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiKeyResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Revoke an API key",
        "tags": [
          "Developer / API Keys"
        ]
      }
    },
    "/core/api/v1/developer/api-keys/{id}/usage": {
      "get": {
        "operationId": "ApiKeyController_usage",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiKeyUsageResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Usage statistics for one API key",
        "tags": [
          "Developer / API Keys"
        ]
      }
    },
    "/core/api/v1/developer/ip-allowlist": {
      "get": {
        "description": "An EMPTY list for an environment means API requests are accepted from any address. Clients must state this plainly rather than implying protection that is not configured.",
        "operationId": "IpAllowlistController_list",
        "parameters": [
          {
            "name": "environment",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "test"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List allowlisted CIDR blocks",
        "tags": [
          "Developer / IP Allowlist"
        ],
        "x-mt-schema-pending": true
      },
      "post": {
        "operationId": "IpAllowlistController_add",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddIpAllowlistEntryDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "The created entry, plus a warning when the block covers an unusually large range."
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Allowlist a CIDR block",
        "tags": [
          "Developer / IP Allowlist"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/ip-allowlist/{id}": {
      "delete": {
        "description": "Removing the last entry for an environment restores unrestricted access from any address.",
        "operationId": "IpAllowlistController_remove",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "204": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Remove an allowlist entry",
        "tags": [
          "Developer / IP Allowlist"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/webhooks/event-types": {
      "get": {
        "description": "The canonical event registry. Clients MUST render their event picker from this endpoint. A hardcoded list will drift from the server and silently subscribe to nothing.",
        "operationId": "WebhookController_listEventTypes",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List every subscribable webhook event",
        "tags": [
          "Developer / Webhooks"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/webhooks/health": {
      "get": {
        "description": "Counts by status over a rolling window. Cheap enough to poll for a status indicator.",
        "operationId": "WebhookController_health",
        "parameters": [
          {
            "name": "windowHours",
            "required": false,
            "in": "query",
            "schema": {
              "minimum": 1,
              "maximum": 168,
              "default": 24,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookHealthResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Aggregate delivery health",
        "tags": [
          "Developer / Webhooks"
        ]
      }
    },
    "/core/api/v1/developer/webhooks/endpoints": {
      "get": {
        "operationId": "WebhookController_listEndpoints",
        "parameters": [
          {
            "name": "environment",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "test"
              ]
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookEndpointResponseDto"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List registered webhook endpoints",
        "tags": [
          "Developer / Webhooks"
        ]
      },
      "post": {
        "description": "Returns the signing secret exactly once. The URL is validated against SSRF (live endpoints must be https and publicly routable).",
        "operationId": "WebhookController_createEndpoint",
        "parameters": [
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWebhookEndpointDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "201": {
            "description": "The endpoint plus its signing secret."
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Register a webhook endpoint",
        "tags": [
          "Developer / Webhooks"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/webhooks/endpoints/{id}": {
      "patch": {
        "description": "URL and environment are immutable — the signing secret is scoped to them. Register a new endpoint to change either.",
        "operationId": "WebhookController_updateEndpoint",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateWebhookEndpointDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookEndpointResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update an endpoint’s events, headers or status",
        "tags": [
          "Developer / Webhooks"
        ]
      },
      "delete": {
        "description": "To stop deliveries temporarily without losing history, set status to `paused` instead.",
        "operationId": "WebhookController_deleteEndpoint",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success. The response schema for this operation is not yet documented — see the schema-coverage report. The SDK types this as `unknown`.",
            "x-mt-schema-pending": true
          },
          "204": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete a webhook endpoint",
        "tags": [
          "Developer / Webhooks"
        ],
        "x-mt-schema-pending": true
      }
    },
    "/core/api/v1/developer/webhooks/endpoints/{id}/rotate-secret": {
      "post": {
        "description": "Takes effect immediately. Deliveries signed with the previous secret will fail verification, so deploy the new secret to your receiver first.",
        "operationId": "WebhookController_rotateSecret",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssuedWebhookSecretResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Rotate an endpoint’s signing secret",
        "tags": [
          "Developer / Webhooks"
        ]
      }
    },
    "/core/api/v1/developer/webhooks/endpoints/{id}/test": {
      "post": {
        "description": "Delivered through exactly the same signing and delivery path as a real event, so a passing test genuinely proves your receiver works.",
        "operationId": "WebhookController_sendTest",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookDeliveryResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Send a test ping",
        "tags": [
          "Developer / Webhooks"
        ]
      }
    },
    "/core/api/v1/developer/webhooks/deliveries": {
      "get": {
        "operationId": "WebhookController_listDeliveries",
        "parameters": [
          {
            "name": "endpointId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "pending",
                "delivered",
                "failed",
                "exhausted"
              ]
            }
          },
          {
            "name": "eventType",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "safety.incident.reported",
                "safety.incident.resolved",
                "safety.inspection.completed",
                "operations.production_log.created",
                "operations.shift_log.submitted",
                "operations.lot.custody_transferred",
                "compliance.permit.expiring",
                "compliance.submission.status_changed",
                "workforce.payroll_batch.completed",
                "inventory.stock.threshold_breached",
                "environment.threshold.breached",
                "webhook.test"
              ]
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "minimum": 1,
              "maximum": 500,
              "default": 100,
              "type": "number"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookDeliveryResponseDto"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "List recent webhook deliveries",
        "tags": [
          "Developer / Webhooks"
        ]
      }
    },
    "/core/api/v1/developer/webhooks/deliveries/{id}": {
      "get": {
        "description": "Includes the exact request body and signature that were sent, so a signature mismatch can be diagnosed directly.",
        "operationId": "WebhookController_getDelivery",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookDeliveryDetailResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Inspect one delivery",
        "tags": [
          "Developer / Webhooks"
        ]
      }
    },
    "/core/api/v1/developer/webhooks/deliveries/{id}/replay": {
      "post": {
        "description": "Re-signs the original payload with a fresh timestamp and delivers it again. Re-signing is required: a receiver correctly rejecting stale timestamps would refuse a replay that reused the original signature.",
        "operationId": "WebhookController_replay",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-mt-timestamp",
            "in": "header",
            "required": false,
            "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 1735689600
            }
          },
          {
            "name": "x-mt-signature",
            "in": "header",
            "required": false,
            "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
            "schema": {
              "type": "string",
              "example": "t=1735689600,v1=5d41402abc4b…"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": false,
            "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookDeliveryResponseDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Replay a delivery",
        "tags": [
          "Developer / Webhooks"
        ]
      }
    }
  },
  "info": {
    "title": "MineTech Core API",
    "description": "Mining operations, workforce, safety, compliance, inventory, environment, finance and reporting.\n\nMineTech supports two authentication schemes.\n\n**API keys** (`apiKey`) — for server-to-server integrations.\nSend `Authorization: Bearer mt_live_…` (or `mt_test_…` for sandbox). The key\ncarries its own tenant, so no tenant header is required.\n\nKeys may additionally require **request signing**. When enabled, send:\n\n- `x-mt-timestamp`: current Unix time in seconds\n- `x-mt-signature`: `t=<unix-seconds>,v1=<hex HMAC-SHA256>`\n\nThe signed string is `{timestamp}.{METHOD}.{path-with-query}.{sha256hex(body)}`.\nSignatures are accepted within a 300-second window. Signing is on by default for\nlive keys and off for test keys.\n\n**JWT** (`jwt`) — used by the MineTech web and mobile apps.\nNot intended for integrations; API keys cannot reach the auth endpoints.",
    "version": "1.0.0",
    "contact": {
      "name": "MineTech Engineering",
      "url": "https://docs.minetech.rw",
      "email": "engineering@minetech.rw"
    },
    "license": {
      "name": "Proprietary",
      "url": "https://minetech.rw/terms"
    }
  },
  "tags": [
    {
      "name": "Audit",
      "description": "Tenant audit log"
    },
    {
      "name": "Auth",
      "description": "Sign-in and token refresh (JWT only)"
    },
    {
      "name": "Compliance",
      "description": "Licences, permits and requirements"
    },
    {
      "name": "Compliance / Analytics",
      "description": "Compliance analytics"
    },
    {
      "name": "Compliance / Reports",
      "description": "Regulatory submissions"
    },
    {
      "name": "Compliance & Licensing / Commitments",
      "description": "Commitments endpoints under Compliance & Licensing."
    },
    {
      "name": "Compliance & Licensing / Documents",
      "description": "Documents endpoints under Compliance & Licensing."
    },
    {
      "name": "Compliance & Licensing / Feedback",
      "description": "Feedback endpoints under Compliance & Licensing."
    },
    {
      "name": "Compliance & Licensing / Inspections",
      "description": "Inspections endpoints under Compliance & Licensing."
    },
    {
      "name": "Compliance & Licensing / Licenses",
      "description": "Licenses endpoints under Compliance & Licensing."
    },
    {
      "name": "Compliance & Licensing / Other",
      "description": "Remaining Compliance & Licensing endpoints."
    },
    {
      "name": "Compliance & Licensing / Requirements",
      "description": "Requirements endpoints under Compliance & Licensing."
    },
    {
      "name": "Dashboards",
      "description": "Dashboard data"
    },
    {
      "name": "Developers",
      "description": "API keys, webhooks and IP allowlist"
    },
    {
      "name": "Environment",
      "description": "Environmental monitoring and samples"
    },
    {
      "name": "Environment / Analytics",
      "description": "Environmental analytics"
    },
    {
      "name": "Files",
      "description": "File storage and pre-signed URLs"
    },
    {
      "name": "Finance",
      "description": "Invoices, budgets and transactions"
    },
    {
      "name": "Finance / Analytics",
      "description": "Finance analytics"
    },
    {
      "name": "Incidents",
      "description": "Incident register"
    },
    {
      "name": "Inventory",
      "description": "Stock, materials and equipment"
    },
    {
      "name": "Inventory / Analytics",
      "description": "Inventory analytics"
    },
    {
      "name": "Inventory & Stock / Equipment",
      "description": "Equipment endpoints under Inventory & Stock."
    },
    {
      "name": "Inventory & Stock / Equipment Types",
      "description": "Equipment Types endpoints under Inventory & Stock."
    },
    {
      "name": "Inventory & Stock / Material Categories",
      "description": "Material Categories endpoints under Inventory & Stock."
    },
    {
      "name": "Inventory & Stock / Materials",
      "description": "Materials endpoints under Inventory & Stock."
    },
    {
      "name": "Inventory & Stock / Ore Stockpiles",
      "description": "Ore Stockpiles endpoints under Inventory & Stock."
    },
    {
      "name": "Inventory & Stock / Other",
      "description": "Remaining Inventory & Stock endpoints."
    },
    {
      "name": "Inventory & Stock / Requisitions",
      "description": "Requisitions endpoints under Inventory & Stock."
    },
    {
      "name": "Inventory & Stock / Stock Movements",
      "description": "Stock Movements endpoints under Inventory & Stock."
    },
    {
      "name": "Operations / Analytics",
      "description": "Operational analytics"
    },
    {
      "name": "Operations / Development",
      "description": "Development plans and progress"
    },
    {
      "name": "Operations / Hierarchy",
      "description": "Sites, zones, levels and tunnels"
    },
    {
      "name": "Operations / Lots",
      "description": "Mineral lots and splits"
    },
    {
      "name": "Operations / Production",
      "description": "Production logs and targets"
    },
    {
      "name": "Operations / Shifts",
      "description": "Shift logs and working days"
    },
    {
      "name": "Operations / Tailings",
      "description": "Tailings storage facilities and cells"
    },
    {
      "name": "Operations / Teams",
      "description": "Teams, labour logs and equipment logs"
    },
    {
      "name": "Operations / Traceability",
      "description": "MEUs, custody transfer and hash-chain integrity"
    },
    {
      "name": "Operations / Working Places",
      "description": "Working place register"
    },
    {
      "name": "Operations & Traceability / Blaster Certificates",
      "description": "Blaster Certificates endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Development Plans",
      "description": "Development Plans endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Development Shifts",
      "description": "Development Shifts endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Equipment Logs",
      "description": "Equipment Logs endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Hash Chain",
      "description": "Hash Chain endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Levels",
      "description": "Levels endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Lots",
      "description": "Lots endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Meus",
      "description": "Meus endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Other",
      "description": "Remaining Operations & Traceability endpoints."
    },
    {
      "name": "Operations & Traceability / Production Logs",
      "description": "Production Logs endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Production Targets",
      "description": "Production Targets endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Shift Logs",
      "description": "Shift Logs endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Sites",
      "description": "Sites endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Tailings",
      "description": "Tailings endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Teams",
      "description": "Teams endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Tsf Cells",
      "description": "Tsf Cells endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Tunnels",
      "description": "Tunnels endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Weekly Report",
      "description": "Weekly Report endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Working Days",
      "description": "Working Days endpoints under Operations & Traceability."
    },
    {
      "name": "Operations & Traceability / Zones",
      "description": "Zones endpoints under Operations & Traceability."
    },
    {
      "name": "Permissions",
      "description": "Permission catalog"
    },
    {
      "name": "Platform",
      "description": "Cross-tenant platform administration"
    },
    {
      "name": "Report Builder",
      "description": "Custom report definitions"
    },
    {
      "name": "Reporting",
      "description": "Reports, schedules and exports"
    },
    {
      "name": "Roles",
      "description": "Roles and assignments"
    },
    {
      "name": "Safety",
      "description": "Incidents, inspections and hazards"
    },
    {
      "name": "Safety / Analytics",
      "description": "Safety analytics"
    },
    {
      "name": "Safety / Configuration",
      "description": "Incident, inspection and risk configuration"
    },
    {
      "name": "Sync",
      "description": "Offline sync"
    },
    {
      "name": "Tenant Configuration",
      "description": "Tenant settings and hierarchy naming"
    },
    {
      "name": "Users",
      "description": "User management and signing keys"
    },
    {
      "name": "Workforce",
      "description": "Workers, contracts and approvals"
    },
    {
      "name": "Workforce / Analytics",
      "description": "Workforce analytics"
    },
    {
      "name": "Workforce / Attendance",
      "description": "Attendance capture and unlock"
    },
    {
      "name": "Workforce / Payroll",
      "description": "Compensation rules and payroll runs"
    },
    {
      "name": "Workforce & Labor / Attendance",
      "description": "Attendance endpoints under Workforce & Labor."
    },
    {
      "name": "Workforce & Labor / Compensation",
      "description": "Compensation endpoints under Workforce & Labor."
    },
    {
      "name": "Workforce & Labor / Other",
      "description": "Remaining Workforce & Labor endpoints."
    },
    {
      "name": "Workforce & Labor / Payment Batches",
      "description": "Payment Batches endpoints under Workforce & Labor."
    },
    {
      "name": "Workforce & Labor / Roles",
      "description": "Roles endpoints under Workforce & Labor."
    },
    {
      "name": "Workforce & Labor / Subcontractors",
      "description": "Subcontractors endpoints under Workforce & Labor."
    },
    {
      "name": "Workforce & Labor / Workers",
      "description": "Workers endpoints under Workforce & Labor."
    },
    {
      "name": "Workforce & Labor / Zone Ownerships",
      "description": "Zone Ownerships endpoints under Workforce & Labor."
    }
  ],
  "servers": [
    {
      "url": "https://api.minetech.rw",
      "description": "Production"
    },
    {
      "url": "https://sandbox.api.minetech.rw",
      "description": "Sandbox"
    },
    {
      "url": "http://localhost:4001",
      "description": "Local gateway"
    }
  ],
  "components": {
    "securitySchemes": {
      "jwt": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "type": "http",
        "description": "MineTech dashboard session token."
      },
      "apiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "API key as `Bearer mt_live_…` / `Bearer mt_test_…`. Issue keys under Developers → API Keys."
      }
    },
    "schemas": {
      "CreateUserDTO": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "password": {
            "type": "string",
            "example": "StrongP@ssw0rd",
            "description": "User password with at least 8 chars, uppercase, lowercase, number, and special char"
          },
          "referralCode": {
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "profilePicture": {
            "type": "string",
            "format": "binary",
            "description": "Profile picture"
          },
          "adminCreationCode": {
            "type": "string"
          }
        },
        "required": [
          "firstName",
          "lastName",
          "email",
          "phoneNumber",
          "password",
          "role"
        ]
      },
      "User": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "timezone": {
            "type": "object"
          }
        },
        "required": [
          "id",
          "updatedAt",
          "createdAt"
        ]
      },
      "InviteTenantUserDto": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "example": "John"
          },
          "lastName": {
            "type": "string",
            "example": "Doe"
          },
          "email": {
            "type": "string",
            "example": "john@rutongo-mining.co.rw"
          },
          "phoneNumber": {
            "type": "string",
            "example": "+250788123456"
          },
          "userType": {
            "type": "string",
            "enum": [
              "PLATFORM_ADMIN",
              "TENANT_USER"
            ],
            "example": "TENANT_USER"
          },
          "roleName": {
            "type": "string",
            "example": "mine_engineer",
            "description": "Role name (required for TENANT_USER)"
          },
          "tenantId": {
            "type": "string",
            "description": "Tenant ID (required for TENANT_USER when called by super admin)"
          }
        },
        "required": [
          "firstName",
          "lastName",
          "email",
          "userType"
        ]
      },
      "UpdateProfileDto": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "First name"
          },
          "lastName": {
            "type": "string",
            "description": "Last name"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number"
          }
        }
      },
      "CompleteInspectorProfileDto": {
        "type": "object",
        "properties": {
          "badgeNumber": {
            "type": "string",
            "description": "Government-issued inspector ID / badge number"
          },
          "agencyName": {
            "type": "string",
            "description": "Regulatory agency name (e.g. RMB, EPA)"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Contact phone number"
          },
          "regionOfAuthority": {
            "type": "string",
            "description": "Region / sectoral jurisdiction"
          },
          "governmentIdDocumentKey": {
            "type": "string",
            "description": "MinIO key of uploaded government-issued ID document"
          }
        },
        "required": [
          "badgeNumber",
          "agencyName",
          "phoneNumber",
          "regionOfAuthority"
        ]
      },
      "UpdateSettingsDto": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "referralCode": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "countryOfResidence": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "displayTimezoneFormat": {
            "type": "string"
          },
          "secondEmails": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "secondPhoneNumbers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "DeactivateUserDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "UpdatePasswordDto": {
        "type": "object",
        "properties": {
          "oldPassword": {
            "type": "string",
            "description": "Current password",
            "example": "OldPassword@123"
          },
          "newPassword": {
            "type": "string",
            "description": "New password (minimum 8 characters, must contain uppercase, lowercase, number and special character)",
            "example": "NewPassword@123"
          }
        },
        "required": [
          "oldPassword",
          "newPassword"
        ]
      },
      "RequestEmailUpdateDto": {
        "type": "object",
        "properties": {
          "newEmail": {
            "type": "string",
            "description": "New email address",
            "example": "newemail@example.com"
          }
        },
        "required": [
          "newEmail"
        ]
      },
      "VerifyEmailUpdateDto": {
        "type": "object",
        "properties": {
          "newEmail": {
            "type": "string",
            "description": "New email address",
            "example": "newemail@example.com"
          },
          "otp": {
            "type": "string",
            "description": "OTP sent to the new email address",
            "example": "123456"
          }
        },
        "required": [
          "newEmail",
          "otp"
        ]
      },
      "UpdateNotificationPreferencesDto": {
        "type": "object",
        "properties": {
          "inApp": {
            "type": "boolean",
            "description": "Receive in-app (platform) notifications"
          },
          "email": {
            "type": "boolean",
            "description": "Receive email notifications"
          },
          "sms": {
            "type": "boolean",
            "description": "Receive SMS notifications"
          },
          "push": {
            "type": "boolean",
            "description": "Receive push notifications"
          }
        }
      },
      "SetDigestPreferenceDto": {
        "type": "object",
        "properties": {
          "messageType": {
            "type": "string",
            "enum": [
              "PASSWORD_RESET",
              "LOGIN_ATTEMPT",
              "PAYMENT_SUCCESS",
              "PAYMENT_FAILED",
              "ACCOUNT_DEACTIVATION",
              "ACCOUNT_ACTIVATION",
              "SETTING_UPDATE",
              "INFORMATION_UPDATE",
              "SYSTEM_HEALTH_UPDATE",
              "SYSTEM_INCIDENT_ALERT",
              "SYSTEM_INCIDENT_RESOLVED",
              "REQUISITION_SUBMITTED",
              "REQUISITION_APPROVED",
              "REQUISITION_REJECTED",
              "REQUISITION_FULFILLED",
              "LICENSE_EXPIRY_WARNING",
              "LICENSE_EXPIRED",
              "TSF_CAPACITY_WARNING",
              "RECORD_INTEGRITY_VIOLATION",
              "PAYROLL_SUBMITTED_FOR_REVIEW",
              "PAYROLL_BATCH_APPROVED",
              "PAYROLL_BATCH_REJECTED",
              "COMPLIANCE_OVERDUE",
              "COMPLIANCE_ISSUE_OVERDUE",
              "COMMITMENT_EXPIRY_WARNING",
              "SAFETY_INCIDENT_REPORTED",
              "SAFETY_INSPECTION_UNSATISFACTORY",
              "SAFETY_INSPECTION_OVERDUE",
              "HAZARD_HIGH_OR_EXTREME_REPORTED",
              "HAZARD_REVIEW_OVERDUE",
              "CORRECTIVE_ACTION_OVERDUE_USER",
              "CORRECTIVE_ACTION_OVERDUE_SUMMARY",
              "ACCOUNT_LOCKED",
              "LOGIN_NEW_DEVICE",
              "WELCOME_USER",
              "ROLE_CHANGED",
              "PERMISSION_CHANGED",
              "TENANT_SUSPENDED",
              "TENANT_SUSPENDED_USER",
              "TENANT_ACTIVATED",
              "TENANT_MAINTENANCE",
              "TENANT_SETTINGS_CHANGED",
              "FEATURE_FLAG_TOGGLED",
              "SERVICE_HEALTH_ALERT",
              "CRITICAL_AUDIT_ALERT",
              "WORKER_REGISTERED",
              "WORKER_VERIFICATION_APPROVED",
              "WORKER_VERIFICATION_REJECTED",
              "COMPENSATION_RULE_PENDING",
              "COMPENSATION_RULE_APPROVED",
              "COMPENSATION_RULE_REJECTED",
              "PAYROLL_BATCH_DISBURSEMENT_SUBMITTED",
              "PAYROLL_BATCH_MARKED_PAID",
              "PAYMENT_DISBURSEMENT_FAILED",
              "ATTENDANCE_SESSION_LOCKED",
              "ATTENDANCE_RECORD_UNLOCKED",
              "ACCOUNT_CREATED",
              "EQUIPMENT_OPERATOR_ASSIGNED",
              "EQUIPMENT_DELETED",
              "LOW_STOCK_ALERT",
              "EQUIPMENT_BREAKDOWN_ALERT",
              "TUNNEL_STATUS_CHANGED",
              "TUNNEL_REACTIVATED",
              "BLASTER_CERTIFICATE_REVOKED",
              "CUSTODY_TRANSFER_INITIATED",
              "LOT_LIFECYCLE_EVENT",
              "LOT_STATUS_CHANGED",
              "DEVELOPMENT_PLAN_APPROVED",
              "INCIDENT_STATUS_CHANGED",
              "INCIDENT_ASSIGNED",
              "CORRECTIVE_ACTION_ASSIGNED",
              "CORRECTIVE_ACTION_STATUS_CHANGED",
              "INSPECTION_AMENDED",
              "INSPECTION_MM_ACKNOWLEDGED",
              "HAZARD_CLOSED_NOT_SIGNIFICANT",
              "ENVIRONMENTAL_THRESHOLD_BREACHED",
              "ENVIRONMENTAL_INCIDENT_REPORTED",
              "ENVIRONMENTAL_COMPLIANCE_RECORDED",
              "TAILINGS_PLACEMENT_LOGGED",
              "LICENSE_CREATED",
              "LICENSE_RENEWED",
              "LICENSE_REVOKED",
              "LICENSE_OVERRIDE_ACTIVATED",
              "COMPLIANCE_REQUIREMENT_STATUS_CHANGED",
              "COMPLIANCE_ISSUE_RAISED",
              "COMPLIANCE_ISSUE_RESOLVED",
              "INSPECTION_FEEDBACK_SUBMITTED",
              "REPORT_GENERATION_FAILED"
            ]
          },
          "frequency": {
            "type": "string",
            "enum": [
              "IMMEDIATE",
              "DAILY",
              "OFF"
            ]
          }
        },
        "required": [
          "messageType",
          "frequency"
        ]
      },
      "RegisterSigningKeyDto": {
        "type": "object",
        "properties": {
          "deviceLabel": {
            "type": "string",
            "description": "Human-friendly device label, e.g. \"Chrome 132 on macOS\""
          },
          "publicKeyJwk": {
            "type": "object",
            "description": "Raw JWK as exported by Web Crypto. Must be EC / P-256 / SIG.",
            "example": {
              "kty": "EC",
              "crv": "P-256",
              "x": "...",
              "y": "..."
            }
          },
          "algorithm": {
            "type": "string",
            "description": "Algorithm identifier (default: ECDSA-P256)."
          }
        },
        "required": [
          "deviceLabel",
          "publicKeyJwk"
        ]
      },
      "RevokeSigningKeyDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string"
          }
        }
      },
      "LoginDTO": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "example": "user@example.com"
          },
          "password": {
            "type": "string",
            "example": "Password123!",
            "description": "Account password"
          }
        },
        "required": [
          "email",
          "password"
        ]
      },
      "LoginResDto": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "description": "JWT access token, short-lived"
          },
          "refreshToken": {
            "type": "string",
            "description": "JWT refresh token, used to mint new access tokens"
          },
          "user": {
            "description": "The authenticated user, with effective permissions attached",
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          }
        },
        "required": [
          "token",
          "refreshToken",
          "user"
        ]
      },
      "VerifyLoginOtpDto": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "example": "user@example.com"
          },
          "otp": {
            "type": "number",
            "example": 123456,
            "description": "6-digit OTP"
          }
        },
        "required": [
          "email",
          "otp"
        ]
      },
      "RefreshTokenDto": {
        "type": "object",
        "properties": {
          "refreshToken": {
            "type": "string",
            "description": "The refresh token issued during login"
          }
        },
        "required": [
          "refreshToken"
        ]
      },
      "ActivateAccount": {
        "type": "object",
        "properties": {
          "otp": {
            "type": "number"
          },
          "email": {
            "type": "string"
          }
        },
        "required": [
          "otp",
          "email"
        ]
      },
      "ForgotPasswordDTO": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          },
          "redirectUrl": {
            "type": "string",
            "description": "URL to redirect to after successful password reset (e.g., package details page with terminate modal)",
            "example": "/package-details/123?modal=terminate"
          }
        },
        "required": [
          "email"
        ]
      },
      "ResetPasswordDto": {
        "type": "object",
        "properties": {
          "otp": {
            "type": "number"
          },
          "email": {
            "type": "string"
          },
          "newPassword": {
            "type": "string"
          },
          "redirectUrl": {
            "type": "string",
            "description": "URL to redirect to after successful password reset (e.g., package details page with terminate modal)",
            "example": "/package-details/123?modal=terminate"
          }
        },
        "required": [
          "otp",
          "email",
          "newPassword"
        ]
      },
      "RequestPhoneOtpDto": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "type": "string",
            "example": "+250781100001",
            "description": "Phone number to verify, E.164 format preferred"
          }
        },
        "required": [
          "phoneNumber"
        ]
      },
      "VerifyPhoneOtpDto": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "type": "string",
            "example": "+250781100001",
            "description": "Phone number the OTP was sent to, E.164 format preferred"
          },
          "otp": {
            "type": "number",
            "example": 482913,
            "description": "6-digit one-time verification code sent by SMS"
          }
        },
        "required": [
          "phoneNumber",
          "otp"
        ]
      },
      "WithdrawCreditsDto": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "description": "The amount to withdraw",
            "example": 100
          }
        },
        "required": [
          "amount"
        ]
      },
      "CreatePricingModelDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "The title of the pricing model",
            "example": "Pricing model 1"
          }
        },
        "required": [
          "title"
        ]
      },
      "CreatePricingRuleDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "The title of the pricing rule",
            "example": "Pricing rule 1"
          },
          "description": {
            "type": "string",
            "description": "The description of the pricing rule",
            "example": "Pricing rule 1 description"
          },
          "condition": {
            "type": "string",
            "description": "The condition of the pricing rule",
            "example": "Pricing rule 1 condition"
          },
          "value": {
            "type": "number",
            "description": "The value of the pricing rule",
            "example": "Pricing rule 1 value"
          },
          "defaultValue": {
            "type": "number",
            "description": "The default value of the pricing rule",
            "example": "Pricing rule 1 default value"
          },
          "type": {
            "type": "string",
            "description": "The type of the pricing rule",
            "example": "Pricing rule 1 type"
          },
          "code": {
            "type": "string",
            "description": "The code of the pricing rule",
            "example": "COMMISSION_PERCENTAGE"
          },
          "category": {
            "type": "string",
            "description": "The category of the pricing rule",
            "example": "Pricing rule 1 category"
          },
          "parentId": {
            "type": "string",
            "description": "The parent id of the pricing rule",
            "example": "Pricing rule 1 parent id"
          },
          "pricingModelId": {
            "type": "string",
            "description": "The pricing model id",
            "example": "Pricing model id"
          }
        },
        "required": [
          "title",
          "description",
          "value",
          "defaultValue",
          "type",
          "category",
          "pricingModelId"
        ]
      },
      "UpdatePricingRuleDto": {
        "type": "object",
        "properties": {
          "pricingRuleId": {
            "type": "string",
            "description": "The id of the pricing rule"
          },
          "newValue": {
            "type": "number",
            "description": "The new value of the pricing rule",
            "example": 34
          }
        },
        "required": [
          "pricingRuleId",
          "newValue"
        ]
      },
      "UpdateBulkPricingRuleDto": {
        "type": "object",
        "properties": {
          "pricingRules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpdatePricingRuleDto"
            }
          }
        },
        "required": [
          "pricingRules"
        ]
      },
      "BuyCreditsDto": {
        "type": "object",
        "properties": {
          "credits": {
            "type": "number",
            "description": "The number of credits to buy",
            "example": 10
          }
        },
        "required": [
          "credits"
        ]
      },
      "CreateLegalDocumentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "example": "Terms and Conditions"
          },
          "content": {
            "type": "string"
          }
        },
        "required": [
          "title"
        ]
      },
      "CreateActivityDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of activity",
            "enum": [
              "USER_REGISTRATION",
              "PAYMENT_PROCESSED",
              "TERMS_UPDATED",
              "ANNOUNCEMENT_SENT"
            ]
          },
          "title": {
            "type": "string",
            "description": "Title of the activity",
            "example": "User login"
          },
          "description": {
            "type": "string",
            "description": "Detailed description of the activity",
            "example": "User logged in successfully"
          },
          "userId": {
            "type": "string",
            "description": "ID of the user performing the activity",
            "example": 123
          },
          "country": {
            "type": "string",
            "description": "Country where the activity occurred",
            "example": "USA"
          },
          "metadata": {
            "type": "object",
            "description": "Additional metadata for the activity",
            "example": {
              "ip": "127.0.0.1",
              "device": "iPhone"
            }
          }
        },
        "required": [
          "type",
          "title"
        ]
      },
      "CreateRoleDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Role name (unique identifier)",
            "example": "admin"
          },
          "description": {
            "type": "string",
            "description": "Role description",
            "example": "Administrator role with full access"
          },
          "level": {
            "type": "number",
            "description": "Role level (higher = more authority)",
            "example": 1,
            "default": 1
          },
          "isSystemRole": {
            "type": "boolean",
            "description": "Whether this is a system role",
            "default": false
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether role is active",
            "default": true
          },
          "color": {
            "type": "string",
            "description": "Color code for UI (hex format)",
            "example": "#140EAC"
          },
          "icon": {
            "type": "string",
            "description": "Icon name for UI",
            "example": "shield"
          },
          "displayOrder": {
            "type": "number",
            "description": "Display order",
            "default": 0
          },
          "settings": {
            "type": "object",
            "description": "Role settings",
            "additionalProperties": true
          },
          "metadata": {
            "type": "object",
            "description": "Role metadata",
            "additionalProperties": true
          },
          "permissionIds": {
            "description": "Permission IDs to assign to this role",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "name",
          "description"
        ]
      },
      "Role": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "timezone": {
            "type": "object"
          }
        },
        "required": [
          "id",
          "updatedAt",
          "createdAt"
        ]
      },
      "UpdateRoleDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Role name"
          },
          "description": {
            "type": "string",
            "description": "Role description"
          },
          "level": {
            "type": "number",
            "description": "Role level"
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether role is active"
          },
          "color": {
            "type": "string",
            "description": "Color code"
          },
          "icon": {
            "type": "string",
            "description": "Icon name"
          },
          "displayOrder": {
            "type": "number",
            "description": "Display order"
          },
          "settings": {
            "type": "object",
            "description": "Role settings",
            "additionalProperties": true
          },
          "metadata": {
            "type": "object",
            "description": "Role metadata",
            "additionalProperties": true
          },
          "permissionIds": {
            "description": "Permission IDs",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "RoleAssignmentItemDto": {
        "type": "object",
        "properties": {
          "roleId": {
            "type": "string",
            "description": "Role ID"
          },
          "startDate": {
            "type": "string",
            "description": "Effective start date (ISO 8601)"
          },
          "endDate": {
            "type": "string",
            "description": "Effective end date (ISO 8601)"
          }
        },
        "required": [
          "roleId"
        ]
      },
      "AssignRolesToUserDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "description": "User ID"
          },
          "assignments": {
            "description": "Role assignments with optional time bounds",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RoleAssignmentItemDto"
            }
          },
          "justification": {
            "type": "string",
            "description": "Justification required when assigning 2+ roles (min 10 chars)"
          }
        },
        "required": [
          "userId",
          "assignments"
        ]
      },
      "AssignPermissionsToRoleDto": {
        "type": "object",
        "properties": {
          "roleId": {
            "type": "string",
            "description": "Role ID",
            "example": "uuid"
          },
          "permissionIds": {
            "description": "Permission IDs to assign",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "roleId",
          "permissionIds"
        ]
      },
      "CreatePermissionDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Permission name (unique identifier)",
            "example": "users:create"
          },
          "resource": {
            "type": "string",
            "description": "Resource this permission applies to",
            "example": "users"
          },
          "action": {
            "type": "string",
            "description": "Action this permission allows",
            "example": "create"
          },
          "description": {
            "type": "string",
            "description": "Permission description",
            "example": "Create new users"
          },
          "category": {
            "type": "string",
            "description": "Category for grouping",
            "example": "user-management"
          },
          "isSystemPermission": {
            "type": "boolean",
            "description": "Whether this is a system permission",
            "default": false
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether permission is active",
            "default": true
          },
          "riskLevel": {
            "type": "number",
            "description": "Risk level (1-5)",
            "example": 1,
            "default": 1
          },
          "conditions": {
            "type": "object",
            "description": "Permission conditions",
            "additionalProperties": true
          },
          "settings": {
            "type": "object",
            "description": "Permission settings",
            "additionalProperties": true
          },
          "displayOrder": {
            "type": "number",
            "description": "Display order",
            "default": 0
          },
          "icon": {
            "type": "string",
            "description": "Icon name"
          },
          "color": {
            "type": "string",
            "description": "Color code"
          },
          "metadata": {
            "type": "object",
            "description": "Permission metadata",
            "additionalProperties": true
          }
        },
        "required": [
          "name",
          "resource",
          "action",
          "description",
          "category"
        ]
      },
      "Permission": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "timezone": {
            "type": "object"
          }
        },
        "required": [
          "id",
          "updatedAt",
          "createdAt"
        ]
      },
      "UpdatePermissionDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Permission name"
          },
          "resource": {
            "type": "string",
            "description": "Resource"
          },
          "action": {
            "type": "string",
            "description": "Action"
          },
          "description": {
            "type": "string",
            "description": "Description"
          },
          "category": {
            "type": "string",
            "description": "Category"
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether permission is active"
          },
          "riskLevel": {
            "type": "number",
            "description": "Risk level"
          },
          "conditions": {
            "type": "object",
            "description": "Conditions",
            "additionalProperties": true
          },
          "settings": {
            "type": "object",
            "description": "Settings",
            "additionalProperties": true
          },
          "displayOrder": {
            "type": "number",
            "description": "Display order"
          },
          "icon": {
            "type": "string",
            "description": "Icon name"
          },
          "color": {
            "type": "string",
            "description": "Color code"
          },
          "metadata": {
            "type": "object",
            "description": "Metadata",
            "additionalProperties": true
          }
        }
      },
      "IncidentStatusUpdateDto": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "OPEN",
              "INVESTIGATING",
              "RESOLVED"
            ]
          },
          "adminNotes": {
            "type": "string"
          }
        },
        "required": [
          "status"
        ]
      },
      "ResolveIncidentDto": {
        "type": "object",
        "properties": {
          "resolutionMessage": {
            "type": "string",
            "description": "Resolution message to send to the user"
          },
          "adminNotes": {
            "type": "string"
          },
          "notifyViaEmail": {
            "type": "boolean",
            "description": "Whether to notify the user via email"
          },
          "notifyViaPlatform": {
            "type": "boolean",
            "description": "Whether to notify the user via platform"
          }
        },
        "required": [
          "resolutionMessage",
          "notifyViaEmail",
          "notifyViaPlatform"
        ]
      },
      "RatifyResourceDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "minLength": 10,
            "maxLength": 500
          },
          "resource": {
            "type": "string"
          },
          "issueKind": {
            "type": "string"
          }
        },
        "required": [
          "reason"
        ]
      },
      "LayoutEntryDto": {
        "type": "object",
        "properties": {
          "widgetId": {
            "type": "string"
          },
          "x": {
            "type": "number",
            "minimum": 0,
            "maximum": 12
          },
          "y": {
            "type": "number",
            "minimum": 0
          },
          "w": {
            "type": "number",
            "minimum": 1,
            "maximum": 12
          },
          "h": {
            "type": "number",
            "minimum": 1,
            "maximum": 12
          },
          "params": {
            "type": "object"
          }
        },
        "required": [
          "widgetId",
          "x",
          "y",
          "w",
          "h"
        ]
      },
      "UpdateLayoutDto": {
        "type": "object",
        "properties": {
          "layout": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutEntryDto"
            }
          }
        },
        "required": [
          "layout"
        ]
      },
      "UpdateReportGovernorDto": {
        "type": "object",
        "properties": {
          "maxQuerySeconds": {
            "type": "number",
            "description": "Max query execution time in seconds (5–600)."
          },
          "maxSyncRows": {
            "type": "number",
            "description": "Max rows returned synchronously (100–100,000)."
          },
          "maxAsyncRows": {
            "type": "number",
            "description": "Max rows in an async export (1,000–5,000,000)."
          },
          "reportRetentionHours": {
            "type": "number",
            "description": "Report availability window in hours (SRS minimum 72)."
          }
        }
      },
      "GenerateReportDto": {
        "type": "object",
        "properties": {
          "reportType": {
            "type": "string",
            "enum": [
              "COMPLIANCE_SUMMARY",
              "COMPLIANCE_STATUS",
              "COMPLIANCE_LICENSE_PORTFOLIO",
              "COMPLIANCE_OVERDUE",
              "COMPLIANCE_DOCUMENT_EXPIRY",
              "COMPLIANCE_TREND",
              "PRODUCTION_WEEKLY",
              "PRODUCTION_MONTHLY",
              "DEVELOPMENT_PROGRESS",
              "SAFETY_MONTHLY",
              "SAFETY_INCIDENT",
              "SAFETY_KPI",
              "INSPECTION_COMPLIANCE",
              "PAYROLL",
              "PAYMENT_RECONCILIATION",
              "ENVIRONMENTAL",
              "ATTENDANCE",
              "WORKER_REGISTRATION",
              "TRACEABILITY_CERTIFICATE",
              "INTEGRITY_VERIFICATION",
              "INTEGRITY_REPORT",
              "WEEKLY_MINE_REPORT",
              "HAZARD_REGISTER",
              "CORRECTIVE_ACTION",
              "STOCK_INVENTORY",
              "REVENUE_SHARING"
            ]
          },
          "format": {
            "type": "string",
            "enum": [
              "PDF",
              "CSV",
              "XLSX",
              "JSON"
            ]
          },
          "reportName": {
            "type": "string"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          },
          "filters": {
            "type": "object"
          }
        },
        "required": [
          "reportType",
          "format"
        ]
      },
      "CreateExportDto": {
        "type": "object",
        "properties": {
          "entityType": {
            "type": "string"
          },
          "format": {
            "type": "string",
            "enum": [
              "PDF",
              "CSV",
              "XLSX",
              "JSON"
            ]
          },
          "exportName": {
            "type": "string"
          },
          "appliedFilters": {
            "type": "object"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          }
        },
        "required": [
          "entityType",
          "format"
        ]
      },
      "CreateScheduleDto": {
        "type": "object",
        "properties": {
          "reportType": {
            "type": "string",
            "enum": [
              "COMPLIANCE_SUMMARY",
              "COMPLIANCE_STATUS",
              "COMPLIANCE_LICENSE_PORTFOLIO",
              "COMPLIANCE_OVERDUE",
              "COMPLIANCE_DOCUMENT_EXPIRY",
              "COMPLIANCE_TREND",
              "PRODUCTION_WEEKLY",
              "PRODUCTION_MONTHLY",
              "DEVELOPMENT_PROGRESS",
              "SAFETY_MONTHLY",
              "SAFETY_INCIDENT",
              "SAFETY_KPI",
              "INSPECTION_COMPLIANCE",
              "PAYROLL",
              "PAYMENT_RECONCILIATION",
              "ENVIRONMENTAL",
              "ATTENDANCE",
              "WORKER_REGISTRATION",
              "TRACEABILITY_CERTIFICATE",
              "INTEGRITY_VERIFICATION",
              "INTEGRITY_REPORT",
              "WEEKLY_MINE_REPORT",
              "HAZARD_REGISTER",
              "CORRECTIVE_ACTION",
              "STOCK_INVENTORY",
              "REVENUE_SHARING"
            ]
          },
          "format": {
            "type": "string",
            "enum": [
              "PDF",
              "CSV",
              "XLSX",
              "JSON"
            ]
          },
          "frequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "MONTHLY",
              "CUSTOM_CRON"
            ]
          },
          "cronExpression": {
            "type": "string"
          },
          "filters": {
            "type": "object"
          },
          "recipientEmails": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "required": [
          "reportType",
          "format",
          "frequency",
          "recipientEmails"
        ]
      },
      "UpdateScheduleDto": {
        "type": "object",
        "properties": {
          "reportType": {
            "type": "string",
            "enum": [
              "COMPLIANCE_SUMMARY",
              "COMPLIANCE_STATUS",
              "COMPLIANCE_LICENSE_PORTFOLIO",
              "COMPLIANCE_OVERDUE",
              "COMPLIANCE_DOCUMENT_EXPIRY",
              "COMPLIANCE_TREND",
              "PRODUCTION_WEEKLY",
              "PRODUCTION_MONTHLY",
              "DEVELOPMENT_PROGRESS",
              "SAFETY_MONTHLY",
              "SAFETY_INCIDENT",
              "SAFETY_KPI",
              "INSPECTION_COMPLIANCE",
              "PAYROLL",
              "PAYMENT_RECONCILIATION",
              "ENVIRONMENTAL",
              "ATTENDANCE",
              "WORKER_REGISTRATION",
              "TRACEABILITY_CERTIFICATE",
              "INTEGRITY_VERIFICATION",
              "INTEGRITY_REPORT",
              "WEEKLY_MINE_REPORT",
              "HAZARD_REGISTER",
              "CORRECTIVE_ACTION",
              "STOCK_INVENTORY",
              "REVENUE_SHARING"
            ]
          },
          "format": {
            "type": "string",
            "enum": [
              "PDF",
              "CSV",
              "XLSX",
              "JSON"
            ]
          },
          "frequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "MONTHLY",
              "CUSTOM_CRON"
            ]
          },
          "cronExpression": {
            "type": "string"
          },
          "filters": {
            "type": "object"
          },
          "recipientEmails": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "FilterItemDto": {
        "type": "object",
        "properties": {
          "column": {
            "type": "string"
          },
          "operator": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        },
        "required": [
          "column",
          "operator"
        ]
      },
      "DynamicQueryDto": {
        "type": "object",
        "properties": {
          "tableName": {
            "type": "string"
          },
          "columns": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FilterItemDto"
            }
          },
          "sortBy": {
            "type": "string"
          },
          "sortOrder": {
            "type": "string"
          },
          "offset": {
            "type": "number",
            "default": 0
          },
          "limit": {
            "type": "number",
            "default": 50
          }
        },
        "required": [
          "tableName",
          "columns"
        ]
      },
      "GenerateDynamicReportDto": {
        "type": "object",
        "properties": {
          "tableName": {
            "type": "string"
          },
          "columns": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FilterItemDto"
            }
          },
          "sortBy": {
            "type": "string"
          },
          "sortOrder": {
            "type": "string"
          },
          "format": {
            "type": "string",
            "enum": [
              "PDF",
              "CSV",
              "XLSX",
              "JSON"
            ]
          },
          "customName": {
            "type": "string"
          }
        },
        "required": [
          "tableName",
          "columns",
          "format"
        ]
      },
      "SetGlobalFlagDto": {
        "type": "object",
        "properties": {
          "flagKey": {
            "type": "string",
            "enum": [
              "compliance_module",
              "operations_module",
              "workforce_module",
              "safety_module",
              "environmental_module",
              "stock_module",
              "blasting_module",
              "subcontractor_module",
              "reporting_module",
              "finance_module",
              "site_hierarchy",
              "working_places_register",
              "shift_management",
              "production_logs",
              "production_targets",
              "development_tracking",
              "traceability_integrity",
              "meu_traceability",
              "custody_transfer",
              "tailings_management",
              "zone_ownership",
              "revenue_sharing",
              "worker_directory",
              "attendance_tracking",
              "worker_approvals",
              "worker_biometric_verification",
              "team_labour_tracking",
              "payroll_compensation",
              "incident_management",
              "inspection_management",
              "hazard_register",
              "blaster_certificates",
              "license_management",
              "compliance_requirements_tracking",
              "compliance_documents",
              "environmental_compliance",
              "inspection_feedback",
              "government_inspector_access",
              "kyb_verification",
              "equipment_tracking",
              "material_management",
              "material_requisitions",
              "ore_stockpile_tracking",
              "scheduled_reports",
              "report_builder",
              "analytics_dashboard",
              "production_reporting",
              "compliance_reporting",
              "payroll_reporting",
              "mobile_money_payments",
              "bank_transfer_payments",
              "payment_batches",
              "multi_currency",
              "billing_subscriptions",
              "payment_gateway_integration",
              "simplified_workflows",
              "workflow_configuration",
              "user_management",
              "role_customization",
              "platform_audit",
              "system_health",
              "security_management",
              "critical_alerts",
              "usage_metrics",
              "tenant_onboarding_checklist",
              "feature_flags_management",
              "developer_api"
            ]
          },
          "value": {
            "type": "boolean",
            "nullable": true,
            "description": "true=force ON, false=force OFF, null=clear (use code default)"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "flagKey",
          "value"
        ]
      },
      "BulkOverrideDto": {
        "type": "object",
        "properties": {
          "flagKey": {
            "type": "string",
            "enum": [
              "compliance_module",
              "operations_module",
              "workforce_module",
              "safety_module",
              "environmental_module",
              "stock_module",
              "blasting_module",
              "subcontractor_module",
              "reporting_module",
              "finance_module",
              "site_hierarchy",
              "working_places_register",
              "shift_management",
              "production_logs",
              "production_targets",
              "development_tracking",
              "traceability_integrity",
              "meu_traceability",
              "custody_transfer",
              "tailings_management",
              "zone_ownership",
              "revenue_sharing",
              "worker_directory",
              "attendance_tracking",
              "worker_approvals",
              "worker_biometric_verification",
              "team_labour_tracking",
              "payroll_compensation",
              "incident_management",
              "inspection_management",
              "hazard_register",
              "blaster_certificates",
              "license_management",
              "compliance_requirements_tracking",
              "compliance_documents",
              "environmental_compliance",
              "inspection_feedback",
              "government_inspector_access",
              "kyb_verification",
              "equipment_tracking",
              "material_management",
              "material_requisitions",
              "ore_stockpile_tracking",
              "scheduled_reports",
              "report_builder",
              "analytics_dashboard",
              "production_reporting",
              "compliance_reporting",
              "payroll_reporting",
              "mobile_money_payments",
              "bank_transfer_payments",
              "payment_batches",
              "multi_currency",
              "billing_subscriptions",
              "payment_gateway_integration",
              "simplified_workflows",
              "workflow_configuration",
              "user_management",
              "role_customization",
              "platform_audit",
              "system_health",
              "security_management",
              "critical_alerts",
              "usage_metrics",
              "tenant_onboarding_checklist",
              "feature_flags_management",
              "developer_api"
            ]
          },
          "scope": {
            "type": "string",
            "enum": [
              "TENANT",
              "USER"
            ]
          },
          "scopeIds": {
            "description": "Tenant IDs or user IDs to target",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "value": {
            "type": "boolean",
            "nullable": true,
            "description": "true=force ON, false=force OFF, null=clear (inherit)"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "flagKey",
          "scope",
          "scopeIds",
          "value"
        ]
      },
      "UpdateRestrictedFeaturesDto": {
        "type": "object",
        "properties": {
          "features": {
            "type": "array",
            "description": "Feature flags to restrict or unrestrict",
            "items": {
              "type": "string",
              "enum": [
                "compliance_module",
                "operations_module",
                "workforce_module",
                "safety_module",
                "environmental_module",
                "stock_module",
                "blasting_module",
                "subcontractor_module",
                "reporting_module",
                "finance_module",
                "site_hierarchy",
                "working_places_register",
                "shift_management",
                "production_logs",
                "production_targets",
                "development_tracking",
                "traceability_integrity",
                "meu_traceability",
                "custody_transfer",
                "tailings_management",
                "zone_ownership",
                "revenue_sharing",
                "worker_directory",
                "attendance_tracking",
                "worker_approvals",
                "worker_biometric_verification",
                "team_labour_tracking",
                "payroll_compensation",
                "incident_management",
                "inspection_management",
                "hazard_register",
                "blaster_certificates",
                "license_management",
                "compliance_requirements_tracking",
                "compliance_documents",
                "environmental_compliance",
                "inspection_feedback",
                "government_inspector_access",
                "kyb_verification",
                "equipment_tracking",
                "material_management",
                "material_requisitions",
                "ore_stockpile_tracking",
                "scheduled_reports",
                "report_builder",
                "analytics_dashboard",
                "production_reporting",
                "compliance_reporting",
                "payroll_reporting",
                "mobile_money_payments",
                "bank_transfer_payments",
                "payment_batches",
                "multi_currency",
                "billing_subscriptions",
                "payment_gateway_integration",
                "simplified_workflows",
                "workflow_configuration",
                "user_management",
                "role_customization",
                "platform_audit",
                "system_health",
                "security_management",
                "critical_alerts",
                "usage_metrics",
                "tenant_onboarding_checklist",
                "feature_flags_management",
                "developer_api"
              ]
            }
          }
        },
        "required": [
          "features"
        ]
      },
      "CreateTenantDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Rutongo Mining Corp"
          },
          "code": {
            "type": "string",
            "example": "RUTONGO"
          },
          "description": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "industry": {
            "type": "string"
          },
          "size": {
            "type": "string"
          },
          "physicalAddress": {
            "type": "string"
          },
          "businessAddress": {
            "type": "object"
          },
          "contactInfo": {
            "type": "object"
          },
          "settingsConfig": {
            "type": "object"
          },
          "restrictedFeatures": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "itAdminFirstName": {
            "type": "string",
            "description": "IT Admin first name"
          },
          "itAdminLastName": {
            "type": "string",
            "description": "IT Admin last name"
          },
          "itAdminEmail": {
            "type": "string",
            "description": "IT Admin email — will receive invitation"
          },
          "registrationNumber": {
            "type": "string",
            "description": "FR-ONB-001 — Organization registration number"
          },
          "jurisdiction": {
            "type": "string",
            "description": "FR-ONB-001 — Regulatory jurisdiction (e.g. \"Rwanda Mines, Petroleum and Gas Board\")"
          },
          "subscriptionPlan": {
            "type": "string",
            "enum": [
              "STARTER",
              "PROFESSIONAL",
              "ENTERPRISE"
            ]
          },
          "subdomain": {
            "type": "string",
            "description": "FR-ONB-001 — Unique tenant subdomain (3-63 chars, [a-z0-9-], no leading/trailing hyphen)",
            "example": "rutongo"
          }
        },
        "required": [
          "name",
          "code"
        ]
      },
      "UpdateTenantDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "industry": {
            "type": "string"
          },
          "size": {
            "type": "string"
          },
          "physicalAddress": {
            "type": "string"
          },
          "businessAddress": {
            "type": "object"
          },
          "contactInfo": {
            "type": "object"
          },
          "settingsConfig": {
            "type": "object"
          }
        }
      },
      "SubmitKybBulkItemDto": {
        "type": "object",
        "properties": {
          "requirementId": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "fileUrl": {
            "type": "string"
          },
          "answer": {
            "type": "string"
          }
        },
        "required": [
          "requirementId",
          "type"
        ]
      },
      "SubmitKybBulkDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SubmitKybBulkItemDto"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "SubmitKybDocumentDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "uploadNotes": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "url"
        ]
      },
      "ReviewKybDocumentDto": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "approved",
              "rejected"
            ]
          },
          "reviewNotes": {
            "type": "string"
          }
        },
        "required": [
          "status"
        ]
      },
      "CreateKybRequirementDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "DOCUMENT",
              "QUESTION"
            ]
          },
          "label": {
            "type": "string",
            "example": "Mining License"
          },
          "description": {
            "type": "string",
            "example": "Valid mining license or permit issued by the relevant authority"
          },
          "required": {
            "type": "boolean",
            "default": true
          },
          "acceptedFormats": {
            "type": "string",
            "example": "PDF, JPG, PNG"
          },
          "maxSizeMB": {
            "type": "number",
            "example": 10
          },
          "answerType": {
            "type": "string",
            "enum": [
              "TEXT",
              "NUMBER",
              "SELECT",
              "TEXTAREA"
            ]
          },
          "options": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "order": {
            "type": "number"
          }
        },
        "required": [
          "type",
          "label"
        ]
      },
      "UpdateKybRequirementDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "DOCUMENT",
              "QUESTION"
            ]
          },
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "required": {
            "type": "boolean"
          },
          "acceptedFormats": {
            "type": "string"
          },
          "maxSizeMB": {
            "type": "number"
          },
          "answerType": {
            "type": "string",
            "enum": [
              "TEXT",
              "NUMBER",
              "SELECT",
              "TEXTAREA"
            ]
          },
          "options": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "order": {
            "type": "number"
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "ReorderKybRequirementDto": {
        "type": "object",
        "properties": {
          "order": {
            "type": "number"
          }
        },
        "required": [
          "order"
        ]
      },
      "UpdateHierarchyLabelsDto": {
        "type": "object",
        "properties": {
          "siteLabel": {
            "type": "string"
          },
          "siteLabelPlural": {
            "type": "string"
          },
          "zoneLabel": {
            "type": "string"
          },
          "zoneLabelPlural": {
            "type": "string"
          },
          "levelLabel": {
            "type": "string"
          },
          "levelLabelPlural": {
            "type": "string"
          },
          "tunnelLabel": {
            "type": "string"
          },
          "tunnelLabelPlural": {
            "type": "string"
          },
          "teamLabel": {
            "type": "string"
          },
          "teamLabelPlural": {
            "type": "string"
          },
          "disabledLevels": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "tunnel",
                "team"
              ]
            }
          },
          "customFields": {
            "type": "object",
            "description": "Map of hierarchy node type to its custom field definitions.",
            "example": {
              "site": [
                {
                  "key": "permitRef",
                  "label": "Permit Reference",
                  "type": "text",
                  "required": false
                }
              ]
            }
          }
        }
      },
      "ComplianceCategoryDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "regulatoryBody": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        }
      },
      "PaymentApprovalTierDto": {
        "type": "object",
        "properties": {
          "maxAmount": {
            "type": "object",
            "description": "Inclusive upper bound for this tier in the tenant default currency. Null = unbounded top tier.",
            "nullable": true
          },
          "requiredApproverRoles": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "UpdateTenantSettingsDto": {
        "type": "object",
        "properties": {
          "defaultCurrency": {
            "type": "string"
          },
          "unitsOfMeasurement": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "logoUrl": {
            "type": "string"
          },
          "organizationName": {
            "type": "string"
          },
          "registrationNumber": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "physicalAddress": {
            "type": "string"
          },
          "simplifiedWorkflowMode": {
            "type": "boolean"
          },
          "complianceOverdueThresholdDays": {
            "type": "number",
            "description": "Days past dueDate before a requirement is flagged OVERDUE and Directors notified"
          },
          "licenseExpiryWarningDays": {
            "description": "FR-CLM-020 — days-before-expiry when the license expiry cron fires (e.g. [90, 60, 30, 7])",
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "commitmentExpiryWarningDays": {
            "description": "Days-before-due when the commitment expiry cron fires",
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "jurisdiction": {
            "type": "string"
          },
          "weekStartDay": {
            "type": "number",
            "description": "FR-WEEKLY-001 — weekly report start day (1=Mon … 7=Sun).",
            "minimum": 1,
            "maximum": 7
          },
          "shiftDefinitions": {
            "type": "object",
            "description": "FR-ONB-003 — Working shift definitions, keyed by shift name. Values are HH:mm-HH:mm time windows.",
            "example": {
              "day": "06:00-18:00",
              "night": "18:00-06:00"
            }
          },
          "reportBranding": {
            "type": "object",
            "description": "FR-ONB-003 — Report branding overrides, e.g. primaryColor, accentColor, fontFamily.",
            "example": {
              "primaryColor": "#0F766E",
              "accentColor": "#F59E0B"
            }
          },
          "complianceCategories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ComplianceCategoryDto"
            }
          },
          "paymentBatchApprovalThresholds": {
            "description": "FR-ONB-003 — Approval thresholds for payment batches (tiered)",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentApprovalTierDto"
            }
          },
          "paymentOtpThresholdRwf": {
            "type": "object",
            "description": "FR-PAYSEC-005 — payment batches above this RWF amount require a 2FA/OTP code on approval. Null uses the system default.",
            "nullable": true
          },
          "auditLogRetentionYears": {
            "type": "number",
            "description": "FR-AUD-005 — Audit log retention in years. Minimum 5, recommended 7."
          },
          "misfireThreshold": {
            "type": "number",
            "description": "FR-BLAST-002 — Misfire count per tunnel per week above this threshold flags the row in the weekly summary."
          },
          "equipmentBreakdownThresholdMinutes": {
            "type": "number",
            "description": "FR-EQUIP-003 — Equipment breakdown duration threshold in minutes. Auto-notifies the Mine Manager."
          },
          "packagingUnitKg": {
            "type": "number",
            "description": "FR-TRACE-001 — kilograms of mineral per packaging unit."
          },
          "meuCodePrefix": {
            "type": "string",
            "description": "FR-TRACE-001 — override the MEU code prefix. Defaults to tenant.code."
          },
          "productionCategories": {
            "description": "FR-OPS-010 — production sub-category keys (e.g. [\"NUGGET\",\"SLUICED\",\"CRUSHED\"])",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "materialClassificationList": {
            "description": "FR-TRACE-003 — allowed MEU material classification values.",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "devMaterialClassifications": {
            "description": "FR-OPS-010 — allowed development-shift material classification keys. Tenant-configurable; SRS defaults are WASTE / ORE / MIXED.",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "activityTypes": {
            "description": "FR-OPS-010 — production-log activity types (dropdown options; users may still enter \"Other\").",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "oreTypes": {
            "description": "FR-OPS-010 — production-log ore types (dropdown options; users may still enter \"Other\").",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "custodyAttendanceCrossRef": {
            "type": "string",
            "enum": [
              "WARN",
              "BLOCK"
            ],
            "description": "FR-TRACE-012 — strictness when a custody-transfer user has no matching attendance."
          },
          "requireDigitalSignatures": {
            "type": "boolean",
            "description": "FR-OPS-§6.9.3 — when true, submitting users must sign critical records (custody, dispatch, production-shift-closure) with their registered device key."
          },
          "halfDayThresholdHours": {
            "type": "number",
            "description": "FR-LBR-031 — half-day midpoint threshold in hours. Hours >= this count as a full day, otherwise half. Null falls back to the global default (4)."
          },
          "defaultPaymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ],
            "description": "FR-LBR-050 — default payment cadence for workers with no team/subcontractor frequency."
          }
        }
      },
      "UpdateWorkflowDto": {
        "type": "object",
        "properties": {
          "workflowName": {
            "type": "string"
          },
          "steps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "escalationRules": {
            "type": "object"
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "required": [
          "workflowName",
          "steps"
        ]
      },
      "CreateLicenseDto": {
        "type": "object",
        "properties": {
          "licenseNumber": {
            "type": "string"
          },
          "licenseType": {
            "type": "string",
            "enum": [
              "EXPLORATION",
              "EXTRACTION",
              "PROCESSING",
              "TRADING"
            ]
          },
          "issuingAuthority": {
            "type": "string"
          },
          "issueDate": {
            "type": "string"
          },
          "expiryDate": {
            "type": "string"
          },
          "licensedArea": {
            "type": "string"
          },
          "commodityTypes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "siteId": {
            "type": "string"
          },
          "responsiblePersonId": {
            "type": "string",
            "description": "User responsible for renewing this license (FR-CLM-021)"
          }
        },
        "required": [
          "licenseType",
          "issuingAuthority",
          "issueDate",
          "expiryDate"
        ]
      },
      "UpdateLicenseDto": {
        "type": "object",
        "properties": {
          "licenseNumber": {
            "type": "string"
          },
          "licenseType": {
            "type": "string",
            "enum": [
              "EXPLORATION",
              "EXTRACTION",
              "PROCESSING",
              "TRADING"
            ]
          },
          "issuingAuthority": {
            "type": "string"
          },
          "issueDate": {
            "type": "string"
          },
          "expiryDate": {
            "type": "string"
          },
          "licensedArea": {
            "type": "string"
          },
          "commodityTypes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "siteId": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "ACTIVE",
              "SUSPENDED",
              "EXPIRED",
              "UNDER_RENEWAL",
              "REVOKED"
            ]
          },
          "responsiblePersonId": {
            "type": "string",
            "description": "User responsible for renewing this license (FR-CLM-021)"
          }
        }
      },
      "RenewLicenseDto": {
        "type": "object",
        "properties": {
          "newExpiryDate": {
            "type": "string",
            "description": "New expiry date for the renewed license (ISO 8601)"
          },
          "notes": {
            "type": "string",
            "description": "Optional notes recorded against the renewal"
          },
          "documentId": {
            "type": "string",
            "description": "ID of an already-uploaded compliance document for this renewal"
          }
        },
        "required": [
          "newExpiryDate"
        ]
      },
      "OverrideLicenseDto": {
        "type": "object",
        "properties": {
          "justification": {
            "type": "string",
            "description": "Documented business justification for overriding the license restriction",
            "minLength": 20
          }
        },
        "required": [
          "justification"
        ]
      },
      "CreateComplianceRequirementDto": {
        "type": "object",
        "properties": {
          "regulationName": {
            "type": "string"
          },
          "referenceNumber": {
            "type": "string"
          },
          "regulatoryBody": {
            "type": "string"
          },
          "obligationDescription": {
            "type": "string"
          },
          "dueDate": {
            "type": "string"
          },
          "frequency": {
            "type": "string",
            "enum": [
              "ONE_TIME",
              "DAILY",
              "WEEKLY",
              "MONTHLY",
              "QUARTERLY",
              "BI_ANNUALLY",
              "ANNUALLY"
            ]
          },
          "responsiblePersonId": {
            "type": "string"
          },
          "licenseId": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          }
        },
        "required": [
          "regulationName",
          "regulatoryBody",
          "obligationDescription",
          "frequency",
          "responsiblePersonId"
        ]
      },
      "UpdateComplianceRequirementDto": {
        "type": "object",
        "properties": {
          "regulationName": {
            "type": "string"
          },
          "referenceNumber": {
            "type": "string"
          },
          "regulatoryBody": {
            "type": "string"
          },
          "obligationDescription": {
            "type": "string"
          },
          "dueDate": {
            "type": "string"
          },
          "frequency": {
            "type": "string",
            "enum": [
              "ONE_TIME",
              "DAILY",
              "WEEKLY",
              "MONTHLY",
              "QUARTERLY",
              "BI_ANNUALLY",
              "ANNUALLY"
            ]
          },
          "responsiblePersonId": {
            "type": "string"
          },
          "licenseId": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          }
        }
      },
      "UpdateRequirementStatusDto": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "IN_PROGRESS",
              "COMPLIANT",
              "NON_COMPLIANT",
              "OVERDUE"
            ]
          },
          "evidenceDocuments": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "status"
        ]
      },
      "CreateComplianceIssueDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "targetResolutionDate": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "description"
        ]
      },
      "UpdateComplianceIssueDto": {
        "type": "object",
        "properties": {
          "resolutionStatus": {
            "type": "string",
            "enum": [
              "ISSUE_EVALUATION",
              "STARTED_WORKING_ON_IT",
              "ISSUE_STALLED",
              "ISSUE_RESOLVED"
            ]
          },
          "resolutionNotes": {
            "type": "string"
          }
        }
      },
      "CreateCommitmentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "licenseId": {
            "type": "string"
          },
          "dueDate": {
            "type": "string"
          },
          "responsiblePersonId": {
            "type": "string"
          }
        },
        "required": [
          "title",
          "description",
          "licenseId",
          "dueDate",
          "responsiblePersonId"
        ]
      },
      "UpdateCommitmentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "licenseId": {
            "type": "string"
          },
          "dueDate": {
            "type": "string"
          },
          "responsiblePersonId": {
            "type": "string"
          },
          "completionPercentage": {
            "type": "number"
          },
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "IN_PROGRESS",
              "COMPLIANT",
              "NON_COMPLIANT",
              "OVERDUE"
            ]
          }
        }
      },
      "CreateInspectionFeedbackDto": {
        "type": "object",
        "properties": {
          "issueDescription": {
            "type": "string"
          },
          "issueResolution": {
            "type": "string",
            "enum": [
              "ISSUE_EVALUATION",
              "STARTED_WORKING_ON_IT",
              "ISSUE_STALLED",
              "ISSUE_RESOLVED"
            ]
          },
          "requiresImmediateAttention": {
            "type": "boolean"
          },
          "complianceRequirementId": {
            "type": "string"
          }
        },
        "required": [
          "issueDescription",
          "issueResolution",
          "requiresImmediateAttention",
          "complianceRequirementId"
        ]
      },
      "UpdateInspectionFeedbackDto": {
        "type": "object",
        "properties": {
          "issueResolution": {
            "type": "string",
            "enum": [
              "ISSUE_EVALUATION",
              "STARTED_WORKING_ON_IT",
              "ISSUE_STALLED",
              "ISSUE_RESOLVED"
            ]
          }
        },
        "required": [
          "issueResolution"
        ]
      },
      "UploadDocumentDto": {
        "type": "object",
        "properties": {
          "documentType": {
            "type": "string",
            "enum": [
              "Environmental Impact Assessment",
              "Safety Audit Report",
              "License Document",
              "Community Development Agreement",
              "Geotechnical Report",
              "Regulatory Filing",
              "Other"
            ]
          },
          "licenseId": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "ownerId": {
            "type": "string",
            "description": "User ID of the document owner (defaults to uploader)"
          },
          "expiryDate": {
            "type": "string",
            "description": "Document expiry date (ISO 8601)"
          },
          "replacesDocumentId": {
            "type": "string",
            "description": "ID of the document being replaced (creates a new version)"
          }
        },
        "required": [
          "documentType"
        ]
      },
      "QueryComplianceReportDto": {
        "type": "object",
        "properties": {
          "siteId": {
            "type": "string"
          },
          "obligationType": {
            "type": "string",
            "enum": [
              "SAFETY",
              "ENVIRONMENTAL",
              "OPERATIONAL",
              "FINANCIAL",
              "OTHER"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "IN_PROGRESS",
              "COMPLIANT",
              "NON_COMPLIANT",
              "OVERDUE"
            ]
          },
          "responsiblePersonId": {
            "type": "string"
          },
          "startDate": {
            "type": "string",
            "description": "ISO date string (inclusive)"
          },
          "endDate": {
            "type": "string",
            "description": "ISO date string (inclusive)"
          },
          "monthsBack": {
            "type": "number",
            "description": "For trend report — number of months to look back, default 12"
          },
          "page": {
            "type": "number",
            "default": 1
          },
          "limit": {
            "type": "number",
            "default": 50
          },
          "projectionSummary": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "GenerateComplianceReportDto": {
        "type": "object",
        "properties": {
          "filters": {
            "$ref": "#/components/schemas/QueryComplianceReportDto"
          },
          "format": {
            "type": "string",
            "enum": [
              "PDF",
              "CSV",
              "XLSX",
              "JSON"
            ]
          },
          "delivery": {
            "type": "string",
            "enum": [
              "inline",
              "async"
            ],
            "default": "async"
          }
        },
        "required": [
          "filters",
          "format"
        ]
      },
      "CreateSiteDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string",
            "description": "Short uppercase alphanumeric code (≤ 8 chars) used in MEU identifiers."
          },
          "location": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "gpsLatitude": {
            "type": "number"
          },
          "gpsLongitude": {
            "type": "number"
          },
          "miningMethod": {
            "type": "string"
          },
          "primaryMineral": {
            "type": "string"
          },
          "licenseNumber": {
            "type": "string"
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        },
        "required": [
          "name"
        ]
      },
      "UpdateSiteDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string",
            "description": "Short uppercase alphanumeric code (≤ 8 chars) used in MEU identifiers."
          },
          "location": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "gpsLatitude": {
            "type": "number"
          },
          "gpsLongitude": {
            "type": "number"
          },
          "miningMethod": {
            "type": "string"
          },
          "primaryMineral": {
            "type": "string"
          },
          "licenseNumber": {
            "type": "string"
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        }
      },
      "CreateZoneDto": {
        "type": "object",
        "properties": {
          "levelId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "classification": {
            "type": "string",
            "enum": [
              "UNDERGROUND_STOPE",
              "DEVELOPMENT_DRIVE",
              "OPEN_PIT",
              "SURFACE_PROCESSING",
              "TAILINGS_FACILITY"
            ]
          },
          "description": {
            "type": "string"
          },
          "orientation": {
            "type": "string",
            "description": "Orientation, e.g. NORTH, SOUTH, EAST, WEST"
          },
          "maxWorkerCapacity": {
            "type": "number",
            "description": "Max simultaneous workers (safety limit)"
          },
          "assignedEngineerId": {
            "type": "string",
            "description": "User.id of the Zone Engineer responsible for this zone"
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        },
        "required": [
          "levelId",
          "name",
          "classification"
        ]
      },
      "CreateLevelDto": {
        "type": "object",
        "properties": {
          "siteId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "elevationReference": {
            "type": "string"
          },
          "depth": {
            "type": "number",
            "description": "Depth in metres below surface"
          },
          "elevation": {
            "type": "number",
            "description": "Elevation in metres (e.g. -150 for Level 3)"
          },
          "accessType": {
            "type": "string",
            "enum": [
              "SHAFT",
              "DECLINE",
              "ADIT"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "PLANNED",
              "ACTIVE",
              "INACTIVE",
              "ABANDONED"
            ]
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        },
        "required": [
          "siteId",
          "name"
        ]
      },
      "CreateTunnelDto": {
        "type": "object",
        "properties": {
          "zoneId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "tunnelType": {
            "type": "string",
            "enum": [
              "DEVELOPMENT_DRIVE",
              "STOPE_PANEL",
              "RAISE",
              "OREPASS",
              "CROSS_CUT",
              "WINZE",
              "FOOTWALL_DRIVE"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "ACTIVE",
              "COMPLETED",
              "SUSPENDED",
              "REHABILITATING"
            ],
            "default": "ACTIVE"
          },
          "plannedStrikeLength": {
            "type": "number"
          },
          "plannedAdvance": {
            "type": "number",
            "description": "Planned advance metres for the current period"
          },
          "currentPeriodAdvance": {
            "type": "number",
            "description": "Advance metres logged so far this period"
          },
          "reefDesignation": {
            "type": "string",
            "enum": [
              "ON_REEF",
              "OFF_REEF",
              "HANGING_WALL",
              "FOOTWALL"
            ]
          },
          "geologicalDesignation": {
            "type": "string",
            "deprecated": true
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        },
        "required": [
          "zoneId",
          "name",
          "tunnelType"
        ]
      },
      "UpdateTunnelDto": {
        "type": "object",
        "properties": {
          "zoneId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "tunnelType": {
            "type": "string",
            "enum": [
              "DEVELOPMENT_DRIVE",
              "STOPE_PANEL",
              "RAISE",
              "OREPASS",
              "CROSS_CUT",
              "WINZE",
              "FOOTWALL_DRIVE"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "ACTIVE",
              "COMPLETED",
              "SUSPENDED",
              "REHABILITATING"
            ],
            "default": "ACTIVE"
          },
          "plannedStrikeLength": {
            "type": "number"
          },
          "plannedAdvance": {
            "type": "number",
            "description": "Planned advance metres for the current period"
          },
          "currentPeriodAdvance": {
            "type": "number",
            "description": "Advance metres logged so far this period"
          },
          "reefDesignation": {
            "type": "string",
            "enum": [
              "ON_REEF",
              "OFF_REEF",
              "HANGING_WALL",
              "FOOTWALL"
            ]
          },
          "geologicalDesignation": {
            "type": "string",
            "deprecated": true
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        }
      },
      "ReactivateTunnelDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Reason for reactivating the working place (audit-logged)"
          }
        },
        "required": [
          "reason"
        ]
      },
      "CreateTeamDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "paymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ]
          },
          "metadata": {
            "type": "object",
            "description": "Tenant-defined custom field values keyed by field key."
          }
        },
        "required": [
          "tunnelId",
          "name",
          "shiftDesignation"
        ]
      },
      "CreateProductionTargetDto": {
        "type": "object",
        "properties": {
          "scopeType": {
            "type": "string",
            "enum": [
              "SITE",
              "LEVEL",
              "ZONE",
              "TUNNEL"
            ]
          },
          "scopeId": {
            "type": "string"
          },
          "period": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "MONTHLY"
            ]
          },
          "targetQuantity": {
            "type": "number"
          },
          "unit": {
            "type": "string",
            "enum": [
              "TONNES",
              "KG",
              "METRES",
              "SACKS"
            ]
          },
          "effectiveStart": {
            "type": "string"
          },
          "effectiveEnd": {
            "type": "string"
          }
        },
        "required": [
          "scopeType",
          "scopeId",
          "period",
          "targetQuantity",
          "unit",
          "effectiveStart"
        ]
      },
      "CreateShiftLogDto": {
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "description": "Base64 ECDSA-P256 signature over the canonical payload."
          },
          "signaturePublicKeyId": {
            "type": "string",
            "description": "UserSigningKey.id referenced by the signature."
          },
          "signedPayloadHash": {
            "type": "string",
            "description": "SHA-256 hex digest of the canonical payload as signed on the client; used to detect canonicalization drift."
          },
          "logType": {
            "type": "string",
            "enum": [
              "PRODUCTION",
              "BLASTING"
            ]
          },
          "logDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "activityType": {
            "type": "string"
          },
          "oreType": {
            "type": "string"
          },
          "quantity": {
            "type": "number"
          },
          "grade": {
            "type": "number"
          },
          "crewSize": {
            "type": "number"
          },
          "blastType": {
            "type": "string",
            "enum": [
              "DOWN_DIP",
              "RAISE",
              "OREPASS",
              "VEINS",
              "FLAT_ON_REEF",
              "FLAT_OFF_REEF"
            ]
          },
          "holesDrilled": {
            "type": "number"
          },
          "holesCharged": {
            "type": "number"
          },
          "holesFired": {
            "type": "number"
          },
          "misfires": {
            "type": "number"
          },
          "explosiveType": {
            "type": "string"
          },
          "explosiveQuantity": {
            "type": "number"
          },
          "blasterName": {
            "type": "string"
          },
          "advanceMetres": {
            "type": "number"
          },
          "misfireDisposition": {
            "type": "string",
            "enum": [
              "RE_BLASTED",
              "LEFT_IN_SITU",
              "REPORTED_TO_AUTHORITY"
            ]
          },
          "workingFacePosition": {
            "type": "string",
            "description": "Working face position within the tunnel (e.g. \"Face L, panel 3\")."
          },
          "lostBlasts": {
            "type": "number",
            "description": "FR-BLAST-001 — lost blast count for the shift."
          },
          "lostBlastReason": {
            "type": "string",
            "enum": [
              "EQUIPMENT_FAILURE",
              "TIME",
              "VENTILATION",
              "WATER"
            ]
          },
          "blasterCertificateId": {
            "type": "string"
          },
          "blasterPassword": {
            "type": "string",
            "description": "FR-BLAST-004 — Re-authentication password for the certified blaster. Required when logType=BLASTING."
          }
        },
        "required": [
          "logType",
          "logDate",
          "shiftDesignation",
          "tunnelId"
        ]
      },
      "ProductionAttachmentDto": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "uploadedAt": {
            "type": "string"
          },
          "uploadedBy": {
            "type": "string"
          }
        },
        "required": [
          "url",
          "fileName",
          "uploadedAt",
          "uploadedBy"
        ]
      },
      "CreateProductionLogDto": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "logDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "activityType": {
            "type": "string"
          },
          "oreType": {
            "type": "string"
          },
          "quantity": {
            "type": "number"
          },
          "subCategories": {
            "type": "object",
            "description": "Per-category quantity split. Keys validated against the tenant config.",
            "example": {
              "NUGGET": 2.5,
              "SLUICED": 1.2,
              "CRUSHED": 0.3
            }
          },
          "grade": {
            "type": "number"
          },
          "crewSize": {
            "type": "number"
          },
          "equipmentUsedIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductionAttachmentDto"
            }
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "logDate",
          "shiftDesignation",
          "quantity",
          "subCategories",
          "crewSize"
        ]
      },
      "SubmitProductionLogDto": {
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "description": "Base64 ECDSA-P256 signature over the canonical payload."
          },
          "signaturePublicKeyId": {
            "type": "string",
            "description": "UserSigningKey.id referenced by the signature."
          },
          "signedPayloadHash": {
            "type": "string",
            "description": "SHA-256 hex digest of the canonical payload as signed on the client; used to detect canonicalization drift."
          },
          "licenseOverrideJustification": {
            "type": "string",
            "description": "Required only when the zone license check fails. Captured on the log + audit trail."
          }
        }
      },
      "BulkSubmitProductionLogsDto": {
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "description": "Base64 ECDSA-P256 signature over the canonical payload."
          },
          "signaturePublicKeyId": {
            "type": "string",
            "description": "UserSigningKey.id referenced by the signature."
          },
          "signedPayloadHash": {
            "type": "string",
            "description": "SHA-256 hex digest of the canonical payload as signed on the client; used to detect canonicalization drift."
          },
          "licenseOverrideJustification": {
            "type": "string",
            "description": "Required only when the zone license check fails. Captured on the log + audit trail."
          },
          "ids": {
            "description": "Specific DRAFT log ids to submit. Omit to submit all DRAFT logs for the tenant.",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "AmendProductionLogPatchDto": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "logDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "activityType": {
            "type": "string"
          },
          "oreType": {
            "type": "string"
          },
          "quantity": {
            "type": "number"
          },
          "subCategories": {
            "type": "object",
            "description": "Per-category quantity split. Keys validated against the tenant config.",
            "example": {
              "NUGGET": 2.5,
              "SLUICED": 1.2,
              "CRUSHED": 0.3
            }
          },
          "grade": {
            "type": "number"
          },
          "crewSize": {
            "type": "number"
          },
          "equipmentUsedIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductionAttachmentDto"
            }
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "logDate",
          "shiftDesignation",
          "quantity",
          "subCategories",
          "crewSize"
        ]
      },
      "AmendProductionLogDto": {
        "type": "object",
        "properties": {
          "originalLogId": {
            "type": "string"
          },
          "amendmentReason": {
            "type": "string"
          },
          "patch": {
            "$ref": "#/components/schemas/AmendProductionLogPatchDto"
          }
        },
        "required": [
          "originalLogId",
          "amendmentReason"
        ]
      },
      "AbsentWorkerDto": {
        "type": "object",
        "properties": {
          "workerId": {
            "type": "string"
          },
          "reason": {
            "type": "string",
            "enum": [
              "SICK",
              "ANNUAL_LEAVE",
              "UNPAID_LEAVE",
              "RDO",
              "BEREAVEMENT",
              "COMPASSIONATE",
              "INJURY",
              "UNEXPLAINED",
              "OTHER"
            ]
          },
          "note": {
            "type": "string"
          }
        },
        "required": [
          "workerId",
          "reason"
        ]
      },
      "UpsertTeamLabourLogDto": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "logDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "plannedHeadcount": {
            "type": "number",
            "minimum": 0
          },
          "presentWorkerIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "absentWorkers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AbsentWorkerDto"
            }
          },
          "subcontractorPresent": {
            "type": "number",
            "minimum": 0
          },
          "rdoWorkerIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "teamId",
          "tunnelId",
          "logDate",
          "shiftDesignation",
          "plannedHeadcount",
          "presentWorkerIds",
          "absentWorkers",
          "subcontractorPresent",
          "rdoWorkerIds"
        ]
      },
      "CreateBlastingLogDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "shiftDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "blastType": {
            "type": "string",
            "enum": [
              "DOWN_DIP",
              "RAISE",
              "OREPASS",
              "VEINS",
              "FLAT_ON_REEF",
              "FLAT_OFF_REEF"
            ]
          },
          "holesDrilled": {
            "type": "number"
          },
          "holesCharged": {
            "type": "number"
          },
          "holesFired": {
            "type": "number"
          },
          "misfires": {
            "type": "number"
          },
          "explosiveType": {
            "type": "string"
          },
          "explosiveQuantity": {
            "type": "number"
          },
          "blastingCertificateRef": {
            "type": "string"
          },
          "blastTime": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "shiftDate",
          "blastType",
          "holesDrilled",
          "holesCharged",
          "holesFired",
          "explosiveType",
          "explosiveQuantity",
          "blastingCertificateRef",
          "blastTime"
        ]
      },
      "CreateDevelopmentShiftDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "shiftDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "crewSize": {
            "type": "number"
          },
          "advanceType": {
            "type": "string",
            "enum": [
              "OFF_REEF",
              "ON_REEF",
              "RAISE",
              "DOWN_DIP",
              "STOPE",
              "OREPASS"
            ]
          },
          "bookedMetres": {
            "type": "number"
          },
          "measuredMetres": {
            "type": "number"
          },
          "materialClassification": {
            "type": "string",
            "description": "Development material key. Must match an entry in the tenant's `devMaterialClassifications` config.",
            "example": "WASTE"
          },
          "notes": {
            "type": "string"
          },
          "blastingLogId": {
            "type": "string"
          },
          "equipmentLogIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "tunnelId",
          "teamId",
          "shiftDate",
          "shiftDesignation",
          "crewSize",
          "advanceType",
          "bookedMetres",
          "materialClassification"
        ]
      },
      "CreateMeuDto": {
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "description": "Base64 ECDSA-P256 signature over the canonical payload."
          },
          "signaturePublicKeyId": {
            "type": "string",
            "description": "UserSigningKey.id referenced by the signature."
          },
          "signedPayloadHash": {
            "type": "string",
            "description": "SHA-256 hex digest of the canonical payload as signed on the client; used to detect canonicalization drift."
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "extractionDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "materialType": {
            "type": "string",
            "description": "Material classification key. Must match an entry in the calling tenant's `materialClassificationList`.",
            "example": "NUGGET_ORE"
          },
          "estimatedWeight": {
            "type": "number"
          },
          "currentLocation": {
            "type": "string",
            "enum": [
              "UNDERGROUND_FACE",
              "SURFACE_STOCKPILE",
              "PROCESSING_INTAKE",
              "STORAGE_WAREHOUSE"
            ]
          },
          "meuIdentifier": {
            "type": "string",
            "description": "Client-generated structured MEU id (mobile/offline). Server generates one when omitted."
          },
          "extractingWorkerId": {
            "type": "string"
          },
          "extractedAt": {
            "type": "string"
          },
          "labelFormat": {
            "type": "string",
            "enum": [
              "NONE",
              "BARCODE",
              "QR",
              "WRITTEN"
            ]
          },
          "labelValue": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "extractionDate",
          "shiftDesignation",
          "materialType",
          "estimatedWeight"
        ]
      },
      "CreateCustodyTransferDto": {
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "description": "Base64 ECDSA-P256 signature over the canonical payload."
          },
          "signaturePublicKeyId": {
            "type": "string",
            "description": "UserSigningKey.id referenced by the signature."
          },
          "signedPayloadHash": {
            "type": "string",
            "description": "SHA-256 hex digest of the canonical payload as signed on the client; used to detect canonicalization drift."
          },
          "meuId": {
            "type": "string"
          },
          "transferType": {
            "type": "string",
            "enum": [
              "EXTRACTION",
              "FACE_TO_OREPASS",
              "OREPASS_TO_COLLECTION",
              "COLLECTION_TO_SURFACE",
              "SURFACE_TO_PROCESSING",
              "PROCESSING_STAGE",
              "PROCESSING_TO_DRYING",
              "DRYING_TO_STORAGE",
              "STORAGE_TO_DISPATCH",
              "DISPATCH_TO_EXPORT",
              "SURFACE_DELIVERY",
              "WEIGHING",
              "PROCESSING_INTAKE",
              "PROCESSING_OUTPUT",
              "STORAGE",
              "DISPATCH"
            ]
          },
          "originLocation": {
            "type": "string"
          },
          "destinationLocation": {
            "type": "string"
          },
          "destinationLocationType": {
            "type": "string",
            "enum": [
              "TUNNEL",
              "OREPASS",
              "COLLECTION_POINT",
              "SURFACE",
              "PROCESSING",
              "DRYING",
              "STORAGE",
              "DISPATCH",
              "EXPORT"
            ]
          },
          "weightAtTransfer": {
            "type": "number"
          },
          "overrideJustification": {
            "type": "string",
            "description": "Required when the MEU is not currently at the origin location. Caller must be Mine Manager."
          },
          "witnessedByUserId": {
            "type": "string",
            "description": "Optional witness user observing the handover."
          },
          "hoistMethod": {
            "type": "string",
            "enum": [
              "SHAFT",
              "DECLINE",
              "ADIT"
            ],
            "description": "COLLECTION_TO_SURFACE — hoisting method."
          },
          "recoveryPercentage": {
            "type": "number",
            "description": "PROCESSING_STAGE — recovery percentage (0–100)."
          },
          "dryingLossKg": {
            "type": "number",
            "description": "DRYING_TO_STORAGE — drying mass loss in kg."
          }
        },
        "required": [
          "meuId",
          "transferType",
          "originLocation",
          "destinationLocation"
        ]
      },
      "AttachMEULabelDto": {
        "type": "object",
        "properties": {
          "labelFormat": {
            "type": "string",
            "enum": [
              "NONE",
              "BARCODE",
              "QR",
              "WRITTEN"
            ]
          },
          "labelValue": {
            "type": "string",
            "description": "Encoded value on the printed/written label. Defaults to the MEU identifier when omitted."
          }
        },
        "required": [
          "labelFormat"
        ]
      },
      "CreateLotDto": {
        "type": "object",
        "properties": {
          "meuIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "aggregationPoint": {
            "type": "string"
          },
          "totalWeight": {
            "type": "number"
          },
          "averageGrade": {
            "type": "number"
          },
          "processingBatchRef": {
            "type": "string"
          },
          "parentLotId": {
            "type": "string"
          },
          "mineralType": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "operatorId": {
            "type": "string",
            "description": "User ID of the lot operator (defaults to creator if omitted)"
          }
        },
        "required": [
          "aggregationPoint"
        ]
      },
      "UpdateLotStatusDto": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "AGGREGATING",
              "PROCESSING",
              "IN_STORAGE",
              "DISPATCHED",
              "EXPORTED"
            ]
          },
          "dispatchDestination": {
            "type": "string"
          }
        },
        "required": [
          "status"
        ]
      },
      "AddMeusToLotDto": {
        "type": "object",
        "properties": {
          "meuIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "meuIds"
        ]
      },
      "SplitLotDto": {
        "type": "object",
        "properties": {
          "meuIds": {
            "description": "MEU IDs to move into the new lot",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "aggregationPoint": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "meuIds"
        ]
      },
      "MergeLotsDto": {
        "type": "object",
        "properties": {
          "sourceLotIds": {
            "description": "Lot IDs to merge into the target lot",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "sourceLotIds"
        ]
      },
      "CreateTsfCellDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Cell name (e.g., TSF Cell A (Primary))"
          },
          "location": {
            "type": "string",
            "description": "Physical location description"
          },
          "designCapacity": {
            "type": "number",
            "description": "Maximum design capacity (cubic metres)"
          },
          "siteId": {
            "type": "string",
            "description": "Site this cell belongs to"
          },
          "nextInspectionDate": {
            "type": "string",
            "description": "Next scheduled inspection date"
          }
        },
        "required": [
          "name",
          "designCapacity",
          "siteId"
        ]
      },
      "UpdateTsfCellDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Cell name"
          },
          "location": {
            "type": "string",
            "description": "Physical location description"
          },
          "designCapacity": {
            "type": "number",
            "description": "Maximum design capacity (cubic metres)"
          },
          "stabilityStatus": {
            "type": "string",
            "enum": [
              "STABLE",
              "UNDER_OBSERVATION",
              "RESTRICTED",
              "CLOSED"
            ],
            "description": "Stability status"
          },
          "lastSurveyDate": {
            "type": "string",
            "description": "Last survey date"
          },
          "lastGeotechnicalInspectionDate": {
            "type": "string",
            "description": "Last geotechnical inspection date"
          },
          "nextInspectionDate": {
            "type": "string",
            "description": "Next scheduled inspection date"
          }
        }
      },
      "CreateTailingsGenerationDto": {
        "type": "object",
        "properties": {
          "batchReference": {
            "type": "string",
            "description": "Processing batch identifier"
          },
          "sourceLotIds": {
            "description": "Source lot UUIDs processed in this batch",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "inputWeight": {
            "type": "number",
            "description": "Total input weight processed (kg)"
          },
          "outputOreWeight": {
            "type": "number",
            "description": "Ore weight recovered (kg)"
          },
          "tailingsGrade": {
            "type": "number",
            "description": "Residual mineral content where assayed"
          },
          "processingDate": {
            "type": "string",
            "description": "Date/time of processing"
          }
        },
        "required": [
          "batchReference",
          "sourceLotIds",
          "inputWeight",
          "outputOreWeight",
          "processingDate"
        ]
      },
      "CreateTailingsPlacementDto": {
        "type": "object",
        "properties": {
          "generationId": {
            "type": "string",
            "description": "Reference to the tailings generation record"
          },
          "placementDate": {
            "type": "string",
            "description": "Date/time of physical placement"
          },
          "tsfCellId": {
            "type": "string",
            "description": "TSF cell where tailings are deposited"
          },
          "volumePlaced": {
            "type": "number",
            "description": "Volume placed (cubic metres)"
          },
          "surveyMeasuredVolume": {
            "type": "number",
            "description": "Survey-measured volume at placement (cubic metres)"
          }
        },
        "required": [
          "generationId",
          "placementDate",
          "tsfCellId",
          "volumePlaced"
        ]
      },
      "VerifyHashChainDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string",
            "description": "UUID of the tunnel to verify"
          },
          "startDate": {
            "type": "string",
            "description": "Start date (ISO format). Omit for no lower bound."
          },
          "endDate": {
            "type": "string",
            "description": "End date (ISO format). Omit for no upper bound."
          }
        },
        "required": [
          "tunnelId"
        ]
      },
      "CorrectDevelopmentShiftDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "shiftDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "crewSize": {
            "type": "number"
          },
          "advanceType": {
            "type": "string",
            "enum": [
              "OFF_REEF",
              "ON_REEF",
              "RAISE",
              "DOWN_DIP",
              "STOPE",
              "OREPASS"
            ]
          },
          "bookedMetres": {
            "type": "number"
          },
          "measuredMetres": {
            "type": "number"
          },
          "materialClassification": {
            "type": "string",
            "description": "Development material key. Must match an entry in the tenant's `devMaterialClassifications` config.",
            "example": "WASTE"
          },
          "notes": {
            "type": "string"
          },
          "blastingLogId": {
            "type": "string"
          },
          "equipmentLogIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "reason": {
            "type": "string",
            "description": "FR-DEV-006 correction reason — captured on the new corrected record and audit log.",
            "minLength": 5
          }
        },
        "required": [
          "reason"
        ]
      },
      "CreateDevelopmentPlanDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "periodStart": {
            "type": "string"
          },
          "periodEnd": {
            "type": "string"
          },
          "plannedTotalMetres": {
            "type": "number",
            "description": "Planned total advance metres for the period."
          },
          "plannedAdvancePerShift": {
            "type": "number",
            "description": "Planned advance per shift (metres)."
          },
          "plannedWorkingDays": {
            "type": "number",
            "description": "Planned working days in the period."
          },
          "planReefClassification": {
            "type": "string",
            "enum": [
              "OFF_REEF",
              "ON_REEF",
              "RAISE",
              "DOWN_DIP",
              "STOPE",
              "OREPASS"
            ]
          },
          "targetCompletionDate": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "periodStart",
          "periodEnd",
          "plannedTotalMetres",
          "plannedWorkingDays",
          "planReefClassification",
          "targetCompletionDate"
        ]
      },
      "UpdateDevelopmentPlanDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "periodStart": {
            "type": "string"
          },
          "periodEnd": {
            "type": "string"
          },
          "plannedTotalMetres": {
            "type": "number",
            "description": "Planned total advance metres for the period."
          },
          "plannedAdvancePerShift": {
            "type": "number",
            "description": "Planned advance per shift (metres)."
          },
          "plannedWorkingDays": {
            "type": "number",
            "description": "Planned working days in the period."
          },
          "planReefClassification": {
            "type": "string",
            "enum": [
              "OFF_REEF",
              "ON_REEF",
              "RAISE",
              "DOWN_DIP",
              "STOPE",
              "OREPASS"
            ]
          },
          "targetCompletionDate": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "DRAFT",
              "ACTIVE",
              "SUPERSEDED",
              "COMPLETED"
            ]
          }
        }
      },
      "ApproveDevelopmentPlanDto": {
        "type": "object",
        "properties": {
          "notes": {
            "type": "string",
            "description": "Optional approval note recorded in the audit log."
          }
        }
      },
      "UpsertWorkingDayDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "date": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "WORKED",
              "PUBLIC_HOLIDAY",
              "EQUIPMENT_BREAKDOWN",
              "INDUSTRIAL_ACTION",
              "WEATHER",
              "OTHER"
            ]
          },
          "reasonNotes": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "date",
          "status"
        ]
      },
      "BulkUpsertWorkingDaysDto": {
        "type": "object",
        "properties": {
          "entries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpsertWorkingDayDto"
            }
          }
        },
        "required": [
          "entries"
        ]
      },
      "CloseShiftLogDto": {
        "type": "object",
        "properties": {
          "notes": {
            "type": "string"
          }
        }
      },
      "RecordMisfireDispositionDto": {
        "type": "object",
        "properties": {
          "disposition": {
            "type": "string",
            "enum": [
              "RE_BLASTED",
              "LEFT_IN_SITU",
              "REPORTED_TO_AUTHORITY"
            ]
          },
          "dispositionNotes": {
            "type": "string"
          }
        },
        "required": [
          "disposition"
        ]
      },
      "CreateBlasterCertificateDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string"
          },
          "certificateNumber": {
            "type": "string"
          },
          "issuingAuthority": {
            "type": "string"
          },
          "issuedAt": {
            "type": "string"
          },
          "expiresAt": {
            "type": "string"
          },
          "attachmentUrl": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "userId",
          "certificateNumber",
          "issuingAuthority",
          "issuedAt",
          "expiresAt"
        ]
      },
      "UpdateBlasterCertificateDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string"
          },
          "certificateNumber": {
            "type": "string"
          },
          "issuingAuthority": {
            "type": "string"
          },
          "issuedAt": {
            "type": "string"
          },
          "expiresAt": {
            "type": "string"
          },
          "attachmentUrl": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "RevokeBlasterCertificateDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "minLength": 5
          }
        },
        "required": [
          "reason"
        ]
      },
      "UpsertEquipmentLogDto": {
        "type": "object",
        "properties": {
          "equipmentId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "logDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "srsCategory": {
            "type": "string",
            "enum": [
              "LOCOMOTIVE",
              "WAGON",
              "COMPRESSOR",
              "BOBCAT_LHD",
              "BOESMAN_DRILL",
              "PUMP",
              "LAMP"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "OPERATIONAL",
              "UNDER_MAINTENANCE",
              "BROKEN_DOWN",
              "NOT_AVAILABLE"
            ]
          },
          "operationalMinutes": {
            "type": "number",
            "description": "Operational minutes within the shift (FR-EQUIP-002)."
          },
          "totalShiftMinutes": {
            "type": "number",
            "description": "Total shift minutes. Defaults to 720 (12h)."
          },
          "breakdownDurationMinutes": {
            "type": "number"
          },
          "breakdownCategory": {
            "type": "string",
            "enum": [
              "MECHANICAL",
              "ELECTRICAL",
              "OPERATOR_ERROR",
              "SUPPLY_SHORTAGE"
            ]
          },
          "breakdownReason": {
            "type": "string"
          },
          "pressureReadingBar": {
            "type": "number",
            "description": "COMPRESSOR — pressure reading (bar)."
          },
          "dischargeVolumeM3": {
            "type": "number",
            "description": "PUMP — discharge volume (m³)."
          },
          "unitsAssigned": {
            "type": "number",
            "description": "WAGON / BOESMAN_DRILL — assigned unit count."
          },
          "unitsOperational": {
            "type": "number",
            "description": "WAGON / BOESMAN_DRILL — operational unit count."
          },
          "shiftsUsed": {
            "type": "number",
            "description": "BOESMAN_DRILL — shifts used."
          },
          "lampsIssued": {
            "type": "number",
            "description": "LAMP — number issued at shift start."
          },
          "lampsReturned": {
            "type": "number",
            "description": "LAMP — number returned at shift end."
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "equipmentId",
          "tunnelId",
          "logDate",
          "shiftDesignation",
          "srsCategory",
          "status"
        ]
      },
      "BulkUpsertEquipmentLogsDto": {
        "type": "object",
        "properties": {
          "entries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpsertEquipmentLogDto"
            }
          }
        },
        "required": [
          "entries"
        ]
      },
      "UpsertMaterialAvailabilityDto": {
        "type": "object",
        "properties": {
          "tunnelId": {
            "type": "string"
          },
          "logDate": {
            "type": "string"
          },
          "shiftDesignation": {
            "type": "string",
            "enum": [
              "DAY",
              "NIGHT",
              "CUSTOM"
            ]
          },
          "wagonPlanWaste": {
            "type": "number"
          },
          "wagonActualWaste": {
            "type": "number"
          },
          "wagonPlanReef": {
            "type": "number"
          },
          "wagonActualReef": {
            "type": "number"
          },
          "wagonSluiced": {
            "type": "number"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "tunnelId",
          "logDate",
          "shiftDesignation"
        ]
      },
      "SyncCursorDto": {
        "type": "object",
        "properties": {
          "resource": {
            "type": "string"
          },
          "since": {
            "type": "string"
          }
        },
        "required": [
          "resource"
        ]
      },
      "SyncPullBatchDto": {
        "type": "object",
        "properties": {
          "cursors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SyncCursorDto"
            }
          }
        },
        "required": [
          "cursors"
        ]
      },
      "CreateMaterialCategoryDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Explosives"
          },
          "description": {
            "type": "string",
            "example": "Blasting agents, detonators, and detonating accessories"
          }
        },
        "required": [
          "name"
        ]
      },
      "CreateEquipmentTypeDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Drill Rig"
          },
          "description": {
            "type": "string",
            "example": "Underground and surface drilling rigs"
          },
          "srsCategory": {
            "type": "string",
            "enum": [
              "LOCOMOTIVE",
              "WAGON",
              "COMPRESSOR",
              "BOBCAT_LHD",
              "BOESMAN_DRILL",
              "PUMP",
              "LAMP"
            ]
          }
        },
        "required": [
          "name"
        ]
      },
      "CreateMaterialDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "categoryId": {
            "type": "string"
          },
          "unit": {
            "type": "string"
          },
          "quantity": {
            "type": "number"
          },
          "reorderThreshold": {
            "type": "number"
          },
          "siteId": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "categoryId",
          "unit",
          "siteId"
        ]
      },
      "CreateEquipmentDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "equipmentTypeId": {
            "type": "string"
          },
          "serialNumber": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "OPERATIONAL",
              "UNDER_MAINTENANCE",
              "BROKEN_DOWN",
              "NOT_AVAILABLE"
            ]
          },
          "assignedTunnelId": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "equipmentTypeId",
          "status",
          "siteId"
        ]
      },
      "AssignEquipmentOperatorDto": {
        "type": "object",
        "properties": {
          "operatorId": {
            "type": "string"
          }
        },
        "required": [
          "operatorId"
        ]
      },
      "CreateOreStockpileDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Zone A — Surface Stockpile"
          },
          "oreType": {
            "type": "string",
            "example": "Cassiterite"
          },
          "currentTonnage": {
            "type": "number",
            "example": 12.5
          },
          "avgGrade": {
            "type": "number",
            "example": 68.2
          },
          "status": {
            "type": "string",
            "enum": [
              "ACCUMULATING",
              "STABLE",
              "DEPLETING"
            ]
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "oreType",
          "currentTonnage",
          "siteId"
        ]
      },
      "UpdateOreStockpileDto": {
        "type": "object",
        "properties": {
          "currentTonnage": {
            "type": "number"
          },
          "avgGrade": {
            "type": "number"
          },
          "status": {
            "type": "string",
            "enum": [
              "ACCUMULATING",
              "STABLE",
              "DEPLETING"
            ]
          }
        }
      },
      "CreateStockMovementDto": {
        "type": "object",
        "properties": {
          "materialId": {
            "type": "string"
          },
          "movementType": {
            "type": "string",
            "enum": [
              "INBOUND",
              "OUTBOUND",
              "TRANSFER",
              "ADJUSTMENT"
            ]
          },
          "quantity": {
            "type": "number"
          },
          "unitPrice": {
            "type": "number"
          },
          "fromLocationId": {
            "type": "string"
          },
          "fromLocationType": {
            "type": "string"
          },
          "fromLocationName": {
            "type": "string"
          },
          "toLocationId": {
            "type": "string"
          },
          "toLocationType": {
            "type": "string"
          },
          "toLocationName": {
            "type": "string"
          },
          "reference": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "materialId",
          "movementType",
          "quantity"
        ]
      },
      "RequisitionItemDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Drill Bits (38mm)"
          },
          "quantity": {
            "type": "number",
            "example": 50
          },
          "unit": {
            "type": "string",
            "example": "pcs"
          }
        },
        "required": [
          "name",
          "quantity",
          "unit"
        ]
      },
      "CreateMaterialRequisitionDto": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "example": "Drilling Consumables"
          },
          "priority": {
            "type": "string",
            "enum": [
              "LOW",
              "MEDIUM",
              "HIGH",
              "URGENT"
            ]
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RequisitionItemDto"
            }
          },
          "tunnel": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "category",
          "priority",
          "items"
        ]
      },
      "RejectRequisitionDto": {
        "type": "object",
        "properties": {
          "rejectionReason": {
            "type": "string",
            "example": "Sufficient stock available — recount before re-requesting"
          }
        },
        "required": [
          "rejectionReason"
        ]
      },
      "FulfillItemDto": {
        "type": "object",
        "properties": {
          "itemId": {
            "type": "string"
          },
          "fulfilledQuantity": {
            "type": "number"
          }
        },
        "required": [
          "itemId",
          "fulfilledQuantity"
        ]
      },
      "FulfillRequisitionDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FulfillItemDto"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "CreateWorkerRoleDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        },
        "required": [
          "name"
        ]
      },
      "UpdateWorkerRoleDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "NextOfKinDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "relationship": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "phone",
          "relationship"
        ]
      },
      "RegisterWorkerDto": {
        "type": "object",
        "properties": {
          "fullName": {
            "type": "string"
          },
          "nationalIdNumber": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "dateOfBirth": {
            "type": "string"
          },
          "gender": {
            "type": "string"
          },
          "workerCategory": {
            "type": "string",
            "enum": [
              "DIRECT_CASUAL_LABORER",
              "SUBCONTRACTOR_WORKER"
            ]
          },
          "workerRoleId": {
            "type": "string",
            "description": "UUID of an existing worker role"
          },
          "customRoleName": {
            "type": "string",
            "description": "Custom role name when selecting \"Other\""
          },
          "zoneId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "shareFactor": {
            "type": "number",
            "description": "Relative share of team commission (FR-LBR-060)."
          },
          "subcontractorId": {
            "type": "string"
          },
          "contractStartDate": {
            "type": "string"
          },
          "contractType": {
            "type": "string",
            "enum": [
              "PERMANENT",
              "TEMPORARY",
              "SEASONAL"
            ]
          },
          "bankAccountOrMobileMoney": {
            "type": "string"
          },
          "emergencyContact": {
            "type": "string"
          },
          "canWorkUnderground": {
            "type": "boolean"
          },
          "nationalIdDocumentUrl": {
            "type": "string",
            "description": "MinIO path for the National ID front image"
          },
          "nationalIdBackUrl": {
            "type": "string",
            "description": "MinIO path for the National ID back image"
          },
          "profilePhotoUrl": {
            "type": "string",
            "description": "MinIO path for the worker profile photo"
          },
          "nextOfKin": {
            "$ref": "#/components/schemas/NextOfKinDto"
          },
          "email": {
            "type": "string"
          }
        },
        "required": [
          "fullName",
          "nationalIdNumber",
          "phoneNumber",
          "dateOfBirth",
          "gender",
          "workerCategory",
          "contractStartDate",
          "contractType"
        ]
      },
      "VerifyWorkerDto": {
        "type": "object",
        "properties": {
          "verificationStage": {
            "type": "string",
            "enum": [
              "PENDING",
              "NIDA_NAME_MATCH",
              "PHONE_OTP",
              "OTP_CONFIRMED",
              "NAME_MATCH_PASSED",
              "NAME_MATCH_FAILED",
              "OTP_VERIFIED",
              "MANUALLY_OVERRIDDEN"
            ]
          },
          "nameMatchConfidence": {
            "type": "number"
          },
          "otp": {
            "type": "string"
          },
          "overrideJustification": {
            "type": "string"
          }
        },
        "required": [
          "verificationStage"
        ]
      },
      "CreateAttendanceSessionDto": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string"
          },
          "shift": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "siteName": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "zoneName": {
            "type": "string"
          },
          "levelId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "levelName": {
            "type": "string"
          },
          "tunnelName": {
            "type": "string"
          },
          "teamName": {
            "type": "string"
          }
        },
        "required": [
          "date",
          "shift",
          "siteId",
          "siteName",
          "zoneId",
          "zoneName",
          "levelId",
          "tunnelId",
          "teamId"
        ]
      },
      "AddWorkersToSessionDto": {
        "type": "object",
        "properties": {
          "workerIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "overrideJustification": {
            "type": "string",
            "description": "Required for Mine Manager override when adding unverified workers to a session"
          }
        },
        "required": [
          "workerIds"
        ]
      },
      "UnlockAttendanceDto": {
        "type": "object",
        "properties": {
          "justification": {
            "type": "string",
            "description": "Justification for unlocking a locked attendance record."
          }
        },
        "required": [
          "justification"
        ]
      },
      "CreateCompensationRuleDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "compensationType": {
            "type": "string",
            "enum": [
              "DAILY_WAGE",
              "HOURLY_WAGE",
              "COMMISSION",
              "BONUS",
              "DEDUCTION"
            ]
          },
          "calculationBasis": {
            "type": "string",
            "enum": [
              "FLAT_RATE",
              "PER_UNIT_PRODUCTION",
              "PERCENTAGE_OUTPUT_VALUE",
              "TIERED_RATE"
            ]
          },
          "rate": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "scopeType": {
            "type": "string",
            "enum": [
              "all",
              "role",
              "zone",
              "team",
              "subcontractor",
              "individual"
            ]
          },
          "scopeId": {
            "type": "string",
            "description": "Target entity id. Required when scopeType is not \"all\" (team/role/zone/subcontractor/individual)."
          },
          "paymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ]
          },
          "effectiveStart": {
            "type": "string"
          },
          "effectiveEnd": {
            "type": "string"
          },
          "stackingBehavior": {
            "type": "string",
            "enum": [
              "ADDITIVE",
              "EXCLUSIVE"
            ]
          },
          "payoutCap": {
            "type": "number"
          },
          "conditions": {
            "type": "object",
            "additionalProperties": true
          }
        },
        "required": [
          "name",
          "compensationType",
          "calculationBasis",
          "rate",
          "scopeType",
          "paymentFrequency",
          "effectiveStart",
          "stackingBehavior"
        ]
      },
      "UpdateCompensationRuleDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "compensationType": {
            "type": "string",
            "enum": [
              "DAILY_WAGE",
              "HOURLY_WAGE",
              "COMMISSION",
              "BONUS",
              "DEDUCTION"
            ]
          },
          "calculationBasis": {
            "type": "string",
            "enum": [
              "FLAT_RATE",
              "PER_UNIT_PRODUCTION",
              "PERCENTAGE_OUTPUT_VALUE",
              "TIERED_RATE"
            ]
          },
          "rate": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "scopeType": {
            "type": "string",
            "enum": [
              "all",
              "role",
              "zone",
              "team",
              "subcontractor",
              "individual"
            ]
          },
          "scopeId": {
            "type": "string",
            "description": "Target entity id. Required when scopeType is not \"all\" (team/role/zone/subcontractor/individual)."
          },
          "paymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ]
          },
          "effectiveStart": {
            "type": "string"
          },
          "effectiveEnd": {
            "type": "string"
          },
          "stackingBehavior": {
            "type": "string",
            "enum": [
              "ADDITIVE",
              "EXCLUSIVE"
            ]
          },
          "payoutCap": {
            "type": "number"
          },
          "conditions": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "RejectCompensationRuleDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Reason for rejection — recorded for audit."
          }
        },
        "required": [
          "reason"
        ]
      },
      "CreateSubcontractorDto": {
        "type": "object",
        "properties": {
          "companyName": {
            "type": "string"
          },
          "contactPerson": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "contractReference": {
            "type": "string"
          },
          "paymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ]
          }
        },
        "required": [
          "companyName",
          "contactPerson",
          "email",
          "phoneNumber"
        ]
      },
      "AssignZoneOwnershipDto": {
        "type": "object",
        "properties": {
          "zoneId": {
            "type": "string"
          },
          "subcontractorId": {
            "type": "string"
          },
          "ownershipStartDate": {
            "type": "string"
          },
          "contractReference": {
            "type": "string"
          },
          "reconciliationEngineerId": {
            "type": "string"
          },
          "reportingObligations": {
            "type": "string",
            "description": "Reporting cadence and obligations (SRS FR-ORG-031)."
          }
        },
        "required": [
          "zoneId",
          "subcontractorId",
          "ownershipStartDate",
          "contractReference",
          "reconciliationEngineerId"
        ]
      },
      "RevokeZoneOwnershipDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "reason"
        ]
      },
      "CreateRevenueShareAgreementDto": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "enum": [
              "PRODUCTION_SPLIT",
              "ROYALTY_PER_TONNE",
              "PROFIT_SHARE",
              "CUSTOM_FORMULA"
            ]
          },
          "rateOrPercentage": {
            "type": "number",
            "description": "Percentage (0-100) or fee-per-tonne — see entity comment."
          },
          "customParams": {
            "type": "object",
            "description": "Free-form params for CUSTOM_FORMULA."
          },
          "effectiveStart": {
            "type": "string"
          },
          "effectiveEnd": {
            "type": "string"
          }
        },
        "required": [
          "model",
          "rateOrPercentage",
          "effectiveStart"
        ]
      },
      "PreviewCompensationDto": {
        "type": "object",
        "properties": {
          "periodStart": {
            "type": "string"
          },
          "periodEnd": {
            "type": "string"
          },
          "paymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ]
          }
        },
        "required": [
          "periodStart",
          "periodEnd",
          "paymentFrequency"
        ]
      },
      "GeneratePaymentBatchDto": {
        "type": "object",
        "properties": {
          "periodStart": {
            "type": "string",
            "description": "Period start date (YYYY-MM-DD)"
          },
          "periodEnd": {
            "type": "string",
            "description": "Period end date (YYYY-MM-DD)"
          },
          "paymentFrequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "BI_WEEKLY",
              "MONTHLY"
            ],
            "description": "Which frequency tier to include"
          },
          "paymentMethod": {
            "type": "string",
            "enum": [
              "MOBILE_MONEY",
              "BANK_TRANSFER",
              "CASH",
              "THIRD_PARTY_PAYROLL"
            ]
          },
          "currency": {
            "type": "string",
            "default": "RWF"
          }
        },
        "required": [
          "periodStart",
          "periodEnd",
          "paymentFrequency",
          "paymentMethod"
        ]
      },
      "ApproveBatchDto": {
        "type": "object",
        "properties": {
          "otp": {
            "type": "string",
            "description": "6-digit two-factor code for above-threshold batches."
          }
        }
      },
      "RejectBatchDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Reason for rejection (shown to batch creator)"
          }
        },
        "required": [
          "reason"
        ]
      },
      "MarkBatchPaidDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Reason for manually marking the batch as paid."
          }
        },
        "required": [
          "reason"
        ]
      },
      "UpdateItemPaymentStatusDto": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "INCLUDED",
              "EXCLUDED",
              "SUBMITTED",
              "CONFIRMED",
              "FAILED",
              "REVERSED"
            ]
          },
          "reason": {
            "type": "string",
            "description": "Reason / provider error when marking FAILED or REVERSED."
          }
        },
        "required": [
          "status"
        ]
      },
      "ProviderConfirmationItemDto": {
        "type": "object",
        "properties": {
          "workerId": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "CONFIRMED",
              "FAILED"
            ]
          },
          "providerReference": {
            "type": "string",
            "description": "Provider's transaction reference."
          },
          "failureReason": {
            "type": "string",
            "description": "Reason when status is FAILED."
          }
        },
        "required": [
          "workerId",
          "status"
        ]
      },
      "ProviderConfirmationDto": {
        "type": "object",
        "properties": {
          "tenantId": {
            "type": "string"
          },
          "batchId": {
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderConfirmationItemDto"
            }
          }
        },
        "required": [
          "tenantId",
          "batchId",
          "items"
        ]
      },
      "CreateIncidentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "incidentDate": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "incidentType": {
            "type": "string",
            "description": "Tenant-configured incident type key (FR-SAF-003)."
          },
          "severity": {
            "type": "string",
            "enum": [
              "MINOR",
              "MODERATE",
              "MAJOR",
              "CRITICAL"
            ]
          },
          "description": {
            "type": "string"
          },
          "immediateActions": {
            "type": "string"
          },
          "personsInvolved": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "title",
          "incidentDate",
          "siteId",
          "zoneId",
          "tunnelId",
          "teamId",
          "incidentType",
          "severity",
          "description"
        ]
      },
      "UpdateIncidentStatusDto": {
        "type": "object",
        "properties": {
          "incidentId": {
            "type": "string"
          },
          "newStatus": {
            "type": "string",
            "enum": [
              "REPORTED",
              "UNDER_INVESTIGATION",
              "CORRECTIVE_ACTIONS_ASSIGNED",
              "IN_PROGRESS",
              "RESOLVED",
              "CLOSED"
            ]
          },
          "comment": {
            "type": "string"
          },
          "overrideJustification": {
            "type": "string"
          }
        },
        "required": [
          "newStatus"
        ]
      },
      "UpdateIncidentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "incidentDate": {
            "type": "string"
          },
          "severity": {
            "type": "string",
            "enum": [
              "MINOR",
              "MODERATE",
              "MAJOR",
              "CRITICAL"
            ]
          },
          "description": {
            "type": "string"
          },
          "immediateActions": {
            "type": "string"
          },
          "personsInvolved": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "ChecklistResultDto": {
        "type": "object",
        "properties": {
          "templateItemId": {
            "type": "string"
          },
          "itemDescription": {
            "type": "string"
          },
          "result": {
            "type": "string",
            "description": "pass | fail | na"
          },
          "remarks": {
            "type": "string"
          },
          "photoUrl": {
            "type": "string"
          }
        },
        "required": [
          "itemDescription",
          "result"
        ]
      },
      "CreateInspectionDto": {
        "type": "object",
        "properties": {
          "inspectionType": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "outcome": {
            "type": "string",
            "enum": [
              "SATISFACTORY",
              "UNSATISFACTORY",
              "REQUIRES_ACTION"
            ]
          },
          "observations": {
            "type": "string"
          },
          "scheduleId": {
            "type": "string"
          },
          "digitalAcknowledgement": {
            "type": "boolean"
          },
          "checklistResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChecklistResultDto"
            }
          }
        },
        "required": [
          "inspectionType",
          "siteId",
          "outcome",
          "digitalAcknowledgement"
        ]
      },
      "AmendInspectionDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Reason for the amendment (≥10 chars)."
          },
          "changes": {
            "type": "object",
            "description": "Field-level changes. Allow-listed keys: observations, outcome, checklistItems[id]={result, remarks}."
          }
        },
        "required": [
          "reason",
          "changes"
        ]
      },
      "CreateInspectionScheduleDto": {
        "type": "object",
        "properties": {
          "inspectionType": {
            "type": "string",
            "enum": [
              "WORKPLACE",
              "EQUIPMENT",
              "ENVIRONMENTAL",
              "FIRE_SAFETY",
              "ELECTRICAL",
              "BLAST_SAFETY"
            ]
          },
          "frequency": {
            "type": "string",
            "enum": [
              "DAILY",
              "WEEKLY",
              "MONTHLY",
              "AD_HOC"
            ]
          },
          "assignedRole": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "nextDueDate": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          },
          "isStatutory": {
            "type": "boolean"
          },
          "linkedComplianceRequirementId": {
            "type": "string"
          }
        },
        "required": [
          "inspectionType",
          "frequency",
          "assignedRole",
          "siteId",
          "nextDueDate"
        ]
      },
      "CreateHazardDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "tunnelId": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          },
          "category": {
            "type": "string",
            "enum": [
              "GROUND_STABILITY",
              "ELECTRICAL",
              "MECHANICAL",
              "CHEMICAL",
              "ERGONOMIC",
              "ENVIRONMENTAL",
              "TRAFFIC",
              "FIRE",
              "OTHER"
            ]
          },
          "dateObserved": {
            "type": "string"
          },
          "immediateControl": {
            "type": "string"
          }
        },
        "required": [
          "description",
          "siteId",
          "category"
        ]
      },
      "TriageHazardDto": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string",
            "enum": [
              "PROMOTE",
              "CLOSE_NOT_SIGNIFICANT"
            ]
          },
          "likelihood": {
            "type": "number",
            "minimum": 1,
            "maximum": 5
          },
          "consequence": {
            "type": "number",
            "minimum": 1,
            "maximum": 5
          },
          "existingControls": {
            "type": "string"
          },
          "residualRisk": {
            "type": "string"
          },
          "hazardOwner": {
            "type": "string"
          },
          "justification": {
            "type": "string"
          }
        },
        "required": [
          "action"
        ]
      },
      "CreateCorrectiveActionDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "sourceType": {
            "type": "string",
            "description": "incident, inspection, or hazard"
          },
          "sourceId": {
            "type": "string"
          },
          "assignedTo": {
            "type": "string"
          },
          "dueDate": {
            "type": "string"
          },
          "priority": {
            "type": "string",
            "enum": [
              "IMMEDIATE",
              "HIGH",
              "MEDIUM",
              "LOW"
            ]
          }
        },
        "required": [
          "title",
          "description",
          "sourceType",
          "sourceId",
          "assignedTo",
          "dueDate",
          "priority"
        ]
      },
      "UpdateCorrectiveActionStatusDto": {
        "type": "object",
        "properties": {
          "newStatus": {
            "type": "string",
            "enum": [
              "OPEN",
              "IN_PROGRESS",
              "COMPLETED",
              "VERIFIED"
            ]
          },
          "comment": {
            "type": "string"
          }
        },
        "required": [
          "newStatus"
        ]
      },
      "CreateIncidentTypeConfigDto": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "SCREAMING_SNAKE_CASE slug, unique per tenant."
          },
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "isEnabled": {
            "type": "boolean",
            "default": true
          },
          "displayOrder": {
            "type": "number",
            "default": 0
          }
        },
        "required": [
          "key",
          "label"
        ]
      },
      "UpdateIncidentTypeConfigDto": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "displayOrder": {
            "type": "number"
          }
        }
      },
      "CreateInspectionTypeConfigDto": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "SCREAMING_SNAKE_CASE slug, unique per tenant."
          },
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "isEnabled": {
            "type": "boolean",
            "default": true
          },
          "displayOrder": {
            "type": "number",
            "default": 0
          },
          "requiresPermit": {
            "type": "boolean",
            "default": false
          },
          "linkedLicenseId": {
            "type": "object",
            "description": "MineLicense.id this inspection type audits."
          }
        },
        "required": [
          "key",
          "label"
        ]
      },
      "UpdateInspectionTypeConfigDto": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "displayOrder": {
            "type": "number"
          },
          "requiresPermit": {
            "type": "boolean"
          },
          "linkedLicenseId": {
            "type": "object",
            "description": "MineLicense.id this inspection type audits. Pass null to unlink."
          }
        }
      },
      "CreateChecklistTemplateDto": {
        "type": "object",
        "properties": {
          "inspectionTypeKey": {
            "type": "string",
            "description": "Matches `InspectionTypeConfig.key` for the type this item belongs to."
          },
          "itemSequence": {
            "type": "number"
          },
          "itemDescription": {
            "type": "string"
          },
          "guidance": {
            "type": "string"
          },
          "isRequired": {
            "type": "boolean",
            "default": true
          },
          "isActive": {
            "type": "boolean",
            "default": true
          }
        },
        "required": [
          "inspectionTypeKey",
          "itemSequence",
          "itemDescription"
        ]
      },
      "UpdateChecklistTemplateDto": {
        "type": "object",
        "properties": {
          "itemSequence": {
            "type": "number"
          },
          "itemDescription": {
            "type": "string"
          },
          "guidance": {
            "type": "string"
          },
          "isRequired": {
            "type": "boolean"
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "UpdateRiskClassificationConfigDto": {
        "type": "object",
        "properties": {
          "lowMaxScore": {
            "type": "number",
            "minimum": 1,
            "maximum": 22
          },
          "mediumMaxScore": {
            "type": "number",
            "minimum": 2,
            "maximum": 23
          },
          "highMaxScore": {
            "type": "number",
            "minimum": 3,
            "maximum": 24
          }
        }
      },
      "CreateMonitoringParameterDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "unit": {
            "type": "string"
          },
          "thresholdMin": {
            "type": "number"
          },
          "thresholdMax": {
            "type": "number"
          },
          "siteId": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "unit",
          "siteId"
        ]
      },
      "UpdateMonitoringParameterDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "unit": {
            "type": "string"
          },
          "thresholdMin": {
            "type": "number"
          },
          "thresholdMax": {
            "type": "number"
          },
          "siteId": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "CreateMonitoringRecordDto": {
        "type": "object",
        "properties": {
          "parameterId": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          }
        },
        "required": [
          "parameterId",
          "value",
          "siteId"
        ]
      },
      "CreateEnvironmentalIncidentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "siteId": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "severity": {
            "type": "string"
          },
          "mitigationMeasures": {
            "type": "string"
          }
        },
        "required": [
          "title",
          "description",
          "siteId",
          "severity"
        ]
      },
      "UpdateEnvironmentalIncidentDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "zoneId": {
            "type": "string"
          },
          "severity": {
            "type": "string"
          },
          "mitigationMeasures": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "REPORTED",
              "UNDER_INVESTIGATION",
              "RESOLVED",
              "CLOSED"
            ]
          }
        }
      },
      "UploadComplianceEvidenceDto": {
        "type": "object",
        "properties": {
          "notes": {
            "type": "string",
            "description": "Optional notes about the evidence"
          }
        }
      },
      "ApiKeyResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "object",
            "nullable": true
          },
          "environment": {
            "type": "string",
            "enum": [
              "live",
              "test"
            ]
          },
          "scopeTarget": {
            "type": "string",
            "enum": [
              "tenant",
              "platform"
            ]
          },
          "keyPrefix": {
            "type": "string",
            "example": "mt_live_a1b2c3"
          },
          "keyLast4": {
            "type": "string"
          },
          "signingSecretLast4": {
            "type": "string"
          },
          "requireSignature": {
            "type": "boolean"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "operations.read",
                "operations.write",
                "operations.delete",
                "workforce.read",
                "workforce.write",
                "workforce.delete",
                "inventory.read",
                "inventory.write",
                "inventory.delete",
                "compliance.read",
                "compliance.write",
                "compliance.delete",
                "safety.read",
                "safety.write",
                "safety.delete",
                "incidents.read",
                "incidents.write",
                "incidents.delete",
                "environment.read",
                "environment.write",
                "environment.delete",
                "finance.read",
                "finance.write",
                "finance.delete",
                "disbursements.read",
                "disbursements.write",
                "disbursements.delete",
                "reporting.read",
                "reporting.write",
                "reporting.delete",
                "dashboards.read",
                "dashboards.write",
                "dashboards.delete",
                "users.read",
                "users.write",
                "users.delete",
                "roles.read",
                "roles.write",
                "roles.delete",
                "permissions.read",
                "permissions.write",
                "permissions.delete",
                "tenant_config.read",
                "tenant_config.write",
                "tenant_config.delete",
                "audit.read",
                "audit.write",
                "audit.delete",
                "notifications.read",
                "notifications.write",
                "notifications.delete",
                "files.read",
                "files.write",
                "files.delete",
                "sync.read",
                "sync.write",
                "sync.delete",
                "platform.read",
                "platform.write",
                "platform.delete"
              ]
            }
          },
          "ipAllowlist": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "rateLimitPerMinute": {
            "type": "number"
          },
          "expiresAt": {
            "type": "object",
            "nullable": true
          },
          "lastUsedAt": {
            "type": "object",
            "nullable": true
          },
          "revokedAt": {
            "type": "object",
            "nullable": true
          },
          "revokedReason": {
            "type": "object",
            "nullable": true
          },
          "createdAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "description",
          "environment",
          "scopeTarget",
          "keyPrefix",
          "keyLast4",
          "signingSecretLast4",
          "requireSignature",
          "scopes",
          "ipAllowlist",
          "rateLimitPerMinute",
          "expiresAt",
          "lastUsedAt",
          "revokedAt",
          "revokedReason",
          "createdAt"
        ]
      },
      "CreateApiKeyDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Production ERP sync",
            "maxLength": 120
          },
          "description": {
            "type": "string",
            "maxLength": 500
          },
          "environment": {
            "type": "string",
            "enum": [
              "live",
              "test"
            ]
          },
          "scopeTarget": {
            "type": "string",
            "enum": [
              "tenant",
              "platform"
            ],
            "description": "Platform-scoped keys can hold platform.* scopes and may only be issued by a super admin."
          },
          "scopes": {
            "type": "array",
            "description": "Fetch the current list from GET /developer/api-keys/scopes. Never hardcode it.",
            "items": {
              "type": "string",
              "enum": [
                "operations.read",
                "operations.write",
                "operations.delete",
                "workforce.read",
                "workforce.write",
                "workforce.delete",
                "inventory.read",
                "inventory.write",
                "inventory.delete",
                "compliance.read",
                "compliance.write",
                "compliance.delete",
                "safety.read",
                "safety.write",
                "safety.delete",
                "incidents.read",
                "incidents.write",
                "incidents.delete",
                "environment.read",
                "environment.write",
                "environment.delete",
                "finance.read",
                "finance.write",
                "finance.delete",
                "disbursements.read",
                "disbursements.write",
                "disbursements.delete",
                "reporting.read",
                "reporting.write",
                "reporting.delete",
                "dashboards.read",
                "dashboards.write",
                "dashboards.delete",
                "users.read",
                "users.write",
                "users.delete",
                "roles.read",
                "roles.write",
                "roles.delete",
                "permissions.read",
                "permissions.write",
                "permissions.delete",
                "tenant_config.read",
                "tenant_config.write",
                "tenant_config.delete",
                "audit.read",
                "audit.write",
                "audit.delete",
                "notifications.read",
                "notifications.write",
                "notifications.delete",
                "files.read",
                "files.write",
                "files.delete",
                "sync.read",
                "sync.write",
                "sync.delete",
                "platform.read",
                "platform.write",
                "platform.delete"
              ]
            }
          },
          "requireSignature": {
            "type": "boolean",
            "description": "Require HMAC request signing on writes. Defaults to true for live keys, false for test keys."
          },
          "expiresInDays": {
            "type": "number",
            "minimum": 1,
            "maximum": 3650
          },
          "rateLimitPerMinute": {
            "type": "number",
            "minimum": 1,
            "maximum": 100000
          },
          "ipAllowlist": {
            "description": "CIDR blocks. When set, restricts this key alone; an empty array falls back to the tenant allowlist.",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "name",
          "environment",
          "scopes"
        ]
      },
      "IssuedApiKeyResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "object",
            "nullable": true
          },
          "environment": {
            "type": "string",
            "enum": [
              "live",
              "test"
            ]
          },
          "scopeTarget": {
            "type": "string",
            "enum": [
              "tenant",
              "platform"
            ]
          },
          "keyPrefix": {
            "type": "string",
            "example": "mt_live_a1b2c3"
          },
          "keyLast4": {
            "type": "string"
          },
          "signingSecretLast4": {
            "type": "string"
          },
          "requireSignature": {
            "type": "boolean"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "operations.read",
                "operations.write",
                "operations.delete",
                "workforce.read",
                "workforce.write",
                "workforce.delete",
                "inventory.read",
                "inventory.write",
                "inventory.delete",
                "compliance.read",
                "compliance.write",
                "compliance.delete",
                "safety.read",
                "safety.write",
                "safety.delete",
                "incidents.read",
                "incidents.write",
                "incidents.delete",
                "environment.read",
                "environment.write",
                "environment.delete",
                "finance.read",
                "finance.write",
                "finance.delete",
                "disbursements.read",
                "disbursements.write",
                "disbursements.delete",
                "reporting.read",
                "reporting.write",
                "reporting.delete",
                "dashboards.read",
                "dashboards.write",
                "dashboards.delete",
                "users.read",
                "users.write",
                "users.delete",
                "roles.read",
                "roles.write",
                "roles.delete",
                "permissions.read",
                "permissions.write",
                "permissions.delete",
                "tenant_config.read",
                "tenant_config.write",
                "tenant_config.delete",
                "audit.read",
                "audit.write",
                "audit.delete",
                "notifications.read",
                "notifications.write",
                "notifications.delete",
                "files.read",
                "files.write",
                "files.delete",
                "sync.read",
                "sync.write",
                "sync.delete",
                "platform.read",
                "platform.write",
                "platform.delete"
              ]
            }
          },
          "ipAllowlist": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "rateLimitPerMinute": {
            "type": "number"
          },
          "expiresAt": {
            "type": "object",
            "nullable": true
          },
          "lastUsedAt": {
            "type": "object",
            "nullable": true
          },
          "revokedAt": {
            "type": "object",
            "nullable": true
          },
          "revokedReason": {
            "type": "object",
            "nullable": true
          },
          "createdAt": {
            "type": "string"
          },
          "plaintextKey": {
            "type": "string",
            "description": "The full API key. Shown exactly once — it is stored only as a bcrypt hash and cannot be recovered."
          },
          "signingSecret": {
            "type": "string",
            "description": "HMAC signing secret. Shown exactly once. Used to compute x-mt-signature."
          }
        },
        "required": [
          "id",
          "name",
          "description",
          "environment",
          "scopeTarget",
          "keyPrefix",
          "keyLast4",
          "signingSecretLast4",
          "requireSignature",
          "scopes",
          "ipAllowlist",
          "rateLimitPerMinute",
          "expiresAt",
          "lastUsedAt",
          "revokedAt",
          "revokedReason",
          "createdAt",
          "plaintextKey",
          "signingSecret"
        ]
      },
      "UpdateApiKeyDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 120
          },
          "description": {
            "type": "string",
            "maxLength": 500
          },
          "requireSignature": {
            "type": "boolean"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "operations.read",
                "operations.write",
                "operations.delete",
                "workforce.read",
                "workforce.write",
                "workforce.delete",
                "inventory.read",
                "inventory.write",
                "inventory.delete",
                "compliance.read",
                "compliance.write",
                "compliance.delete",
                "safety.read",
                "safety.write",
                "safety.delete",
                "incidents.read",
                "incidents.write",
                "incidents.delete",
                "environment.read",
                "environment.write",
                "environment.delete",
                "finance.read",
                "finance.write",
                "finance.delete",
                "disbursements.read",
                "disbursements.write",
                "disbursements.delete",
                "reporting.read",
                "reporting.write",
                "reporting.delete",
                "dashboards.read",
                "dashboards.write",
                "dashboards.delete",
                "users.read",
                "users.write",
                "users.delete",
                "roles.read",
                "roles.write",
                "roles.delete",
                "permissions.read",
                "permissions.write",
                "permissions.delete",
                "tenant_config.read",
                "tenant_config.write",
                "tenant_config.delete",
                "audit.read",
                "audit.write",
                "audit.delete",
                "notifications.read",
                "notifications.write",
                "notifications.delete",
                "files.read",
                "files.write",
                "files.delete",
                "sync.read",
                "sync.write",
                "sync.delete",
                "platform.read",
                "platform.write",
                "platform.delete"
              ]
            }
          },
          "rateLimitPerMinute": {
            "type": "number",
            "minimum": 1,
            "maximum": 100000
          },
          "ipAllowlist": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "RevokeApiKeyDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "maxLength": 500,
            "description": "Why this key is being revoked. Recorded in the audit log."
          }
        },
        "required": [
          "reason"
        ]
      },
      "ApiKeyUsageResponseDto": {
        "type": "object",
        "properties": {
          "totalRequests": {
            "type": "number"
          },
          "successCount": {
            "type": "number"
          },
          "failedCount": {
            "type": "number"
          },
          "averageLatencyMs": {
            "type": "number"
          },
          "todayRequests": {
            "type": "number"
          },
          "currentMinuteRequests": {
            "type": "number"
          },
          "rateLimitPerMinute": {
            "type": "number"
          },
          "popularEndpoints": {
            "type": "object",
            "additionalProperties": {
              "type": "number"
            }
          }
        },
        "required": [
          "totalRequests",
          "successCount",
          "failedCount",
          "averageLatencyMs",
          "todayRequests",
          "currentMinuteRequests",
          "rateLimitPerMinute",
          "popularEndpoints"
        ]
      },
      "AddIpAllowlistEntryDto": {
        "type": "object",
        "properties": {
          "cidr": {
            "type": "string",
            "example": "203.0.113.0/24"
          },
          "label": {
            "type": "string",
            "example": "Kigali office egress",
            "maxLength": 120
          },
          "environment": {
            "type": "string",
            "enum": [
              "live",
              "test"
            ]
          }
        },
        "required": [
          "cidr",
          "environment"
        ]
      },
      "WebhookHealthResponseDto": {
        "type": "object",
        "properties": {
          "windowHours": {
            "type": "number"
          },
          "delivered": {
            "type": "number"
          },
          "failed": {
            "type": "number"
          },
          "pending": {
            "type": "number"
          },
          "total": {
            "type": "number"
          }
        },
        "required": [
          "windowHours",
          "delivered",
          "failed",
          "pending",
          "total"
        ]
      },
      "WebhookEndpointResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "description": {
            "type": "object",
            "nullable": true
          },
          "environment": {
            "type": "string",
            "enum": [
              "live",
              "test"
            ]
          },
          "enabledEvents": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "safety.incident.reported",
                "safety.incident.resolved",
                "safety.inspection.completed",
                "operations.production_log.created",
                "operations.shift_log.submitted",
                "operations.lot.custody_transferred",
                "compliance.permit.expiring",
                "compliance.submission.status_changed",
                "workforce.payroll_batch.completed",
                "inventory.stock.threshold_breached",
                "environment.threshold.breached",
                "webhook.test"
              ]
            }
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "paused",
              "disabled"
            ]
          },
          "signingSecretLast4": {
            "type": "string"
          },
          "signatureAlgorithm": {
            "type": "string"
          },
          "consecutiveFailures": {
            "type": "number"
          },
          "successCount": {
            "type": "number"
          },
          "failureCount": {
            "type": "number"
          },
          "lastDeliveryAt": {
            "type": "object",
            "nullable": true
          },
          "lastDeliveryStatus": {
            "type": "object",
            "nullable": true
          },
          "lastErrorMessage": {
            "type": "object",
            "nullable": true
          },
          "createdAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "url",
          "description",
          "environment",
          "enabledEvents",
          "status",
          "signingSecretLast4",
          "signatureAlgorithm",
          "consecutiveFailures",
          "successCount",
          "failureCount",
          "lastDeliveryAt",
          "lastDeliveryStatus",
          "lastErrorMessage",
          "createdAt"
        ]
      },
      "CreateWebhookEndpointDto": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "example": "https://hooks.example.com/minetech"
          },
          "description": {
            "type": "string",
            "maxLength": 500
          },
          "environment": {
            "type": "string",
            "enum": [
              "live",
              "test"
            ]
          },
          "enabledEvents": {
            "type": "array",
            "description": "Events to subscribe to. An EMPTY array means every event. Fetch the current list from GET /developer/webhooks/event-types — never hardcode it.",
            "items": {
              "type": "string",
              "enum": [
                "safety.incident.reported",
                "safety.incident.resolved",
                "safety.inspection.completed",
                "operations.production_log.created",
                "operations.shift_log.submitted",
                "operations.lot.custody_transferred",
                "compliance.permit.expiring",
                "compliance.submission.status_changed",
                "workforce.payroll_batch.completed",
                "inventory.stock.threshold_breached",
                "environment.threshold.breached",
                "webhook.test"
              ]
            }
          },
          "customHeaders": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra headers sent with every delivery, e.g. your own auth token."
          }
        },
        "required": [
          "url",
          "environment"
        ]
      },
      "UpdateWebhookEndpointDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "maxLength": 500
          },
          "enabledEvents": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "safety.incident.reported",
                "safety.incident.resolved",
                "safety.inspection.completed",
                "operations.production_log.created",
                "operations.shift_log.submitted",
                "operations.lot.custody_transferred",
                "compliance.permit.expiring",
                "compliance.submission.status_changed",
                "workforce.payroll_batch.completed",
                "inventory.stock.threshold_breached",
                "environment.threshold.breached",
                "webhook.test"
              ]
            }
          },
          "customHeaders": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "paused",
              "disabled"
            ],
            "description": "Set to `paused` to stop deliveries without losing history, or `active` to resume (which clears the failure streak)."
          }
        }
      },
      "IssuedWebhookSecretResponseDto": {
        "type": "object",
        "properties": {
          "endpointId": {
            "type": "string"
          },
          "signingSecret": {
            "type": "string",
            "description": "The signing secret, shown exactly once. Use it to verify the x-mt-signature header on every delivery."
          }
        },
        "required": [
          "endpointId",
          "signingSecret"
        ]
      },
      "WebhookDeliveryResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "endpointId": {
            "type": "string"
          },
          "eventId": {
            "type": "string"
          },
          "eventType": {
            "type": "string",
            "enum": [
              "safety.incident.reported",
              "safety.incident.resolved",
              "safety.inspection.completed",
              "operations.production_log.created",
              "operations.shift_log.submitted",
              "operations.lot.custody_transferred",
              "compliance.permit.expiring",
              "compliance.submission.status_changed",
              "workforce.payroll_batch.completed",
              "inventory.stock.threshold_breached",
              "environment.threshold.breached",
              "webhook.test"
            ]
          },
          "targetUrl": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "pending",
              "delivered",
              "failed",
              "exhausted"
            ]
          },
          "attemptCount": {
            "type": "number"
          },
          "responseStatusCode": {
            "type": "object",
            "nullable": true
          },
          "durationMs": {
            "type": "object",
            "nullable": true
          },
          "errorMessage": {
            "type": "object",
            "nullable": true
          },
          "nextAttemptAt": {
            "type": "object",
            "nullable": true
          },
          "lastAttemptAt": {
            "type": "object",
            "nullable": true
          },
          "isTest": {
            "type": "boolean"
          },
          "replayCount": {
            "type": "number"
          },
          "createdAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "endpointId",
          "eventId",
          "eventType",
          "targetUrl",
          "status",
          "attemptCount",
          "responseStatusCode",
          "durationMs",
          "errorMessage",
          "nextAttemptAt",
          "lastAttemptAt",
          "isTest",
          "replayCount",
          "createdAt"
        ]
      },
      "WebhookDeliveryDetailResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "endpointId": {
            "type": "string"
          },
          "eventId": {
            "type": "string"
          },
          "eventType": {
            "type": "string",
            "enum": [
              "safety.incident.reported",
              "safety.incident.resolved",
              "safety.inspection.completed",
              "operations.production_log.created",
              "operations.shift_log.submitted",
              "operations.lot.custody_transferred",
              "compliance.permit.expiring",
              "compliance.submission.status_changed",
              "workforce.payroll_batch.completed",
              "inventory.stock.threshold_breached",
              "environment.threshold.breached",
              "webhook.test"
            ]
          },
          "targetUrl": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "pending",
              "delivered",
              "failed",
              "exhausted"
            ]
          },
          "attemptCount": {
            "type": "number"
          },
          "responseStatusCode": {
            "type": "object",
            "nullable": true
          },
          "durationMs": {
            "type": "object",
            "nullable": true
          },
          "errorMessage": {
            "type": "object",
            "nullable": true
          },
          "nextAttemptAt": {
            "type": "object",
            "nullable": true
          },
          "lastAttemptAt": {
            "type": "object",
            "nullable": true
          },
          "isTest": {
            "type": "boolean"
          },
          "replayCount": {
            "type": "number"
          },
          "createdAt": {
            "type": "string"
          },
          "requestBody": {
            "type": "string",
            "description": "The exact bytes POSTed to the receiver."
          },
          "responseBody": {
            "type": "object",
            "nullable": true
          },
          "signature": {
            "type": "string",
            "description": "The x-mt-signature header value sent."
          }
        },
        "required": [
          "id",
          "endpointId",
          "eventId",
          "eventType",
          "targetUrl",
          "status",
          "attemptCount",
          "responseStatusCode",
          "durationMs",
          "errorMessage",
          "nextAttemptAt",
          "lastAttemptAt",
          "isTest",
          "replayCount",
          "createdAt",
          "requestBody",
          "responseBody",
          "signature"
        ]
      }
    },
    "parameters": {
      "MineTechTimestamp": {
        "name": "x-mt-timestamp",
        "in": "header",
        "required": false,
        "description": "Current Unix time in seconds. Required when the API key has request signing enabled.",
        "schema": {
          "type": "integer",
          "format": "int64",
          "example": 1735689600
        }
      },
      "MineTechSignature": {
        "name": "x-mt-signature",
        "in": "header",
        "required": false,
        "description": "Request signature, `t=<unix-seconds>,v1=<hex HMAC-SHA256>`. Required when the API key has request signing enabled.",
        "schema": {
          "type": "string",
          "example": "t=1735689600,v1=5d41402abc4b…"
        }
      },
      "IdempotencyKey": {
        "name": "Idempotency-Key",
        "in": "header",
        "required": false,
        "description": "Client-generated unique key. Replaying a write with the same key returns the original response instead of performing the operation twice. Retained for 24 hours.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  },
  "externalDocs": {
    "description": "Developer documentation",
    "url": "https://docs.minetech.rw"
  },
  "security": [
    {
      "apiKey": []
    },
    {
      "jwt": []
    }
  ]
}
