openapi: 3.1.0
info:
  title: Inventory Coverage Page Contract
  version: 1.0.0
  description: |
    Existing tenant-scoped Filament page contract for the interactive Inventory Coverage table.
    This feature does not add a new API endpoint; it formalizes the page route and supported
    table query-state parameters used by the Filament table surface.
paths:
  /admin/t/{tenant}/inventory/coverage:
    get:
      summary: Render the tenant-scoped Inventory Coverage page
      operationId: getInventoryCoveragePage
      tags:
        - Inventory Coverage
      parameters:
        - name: tenant
          in: path
          required: true
          description: Tenant identifier resolved by the existing Filament tenant route binding
          schema:
            type: string
        - name: tableSearch
          in: query
          required: false
          description: Free-text search across policy type and label columns
          schema:
            type: string
        - name: tableFilters[category][value]
          in: query
          required: false
          description: Selected category filter value
          schema:
            type: string
        - name: tableFilters[restore][value]
          in: query
          required: false
          description: Selected restore-mode filter value when restore metadata is available
          schema:
            type: string
        - name: tableSortColumn
          in: query
          required: false
          description: Active table sort column
          schema:
            type: string
            enum:
              - type
              - label
        - name: tableSortDirection
          in: query
          required: false
          description: Active table sort direction
          schema:
            type: string
            enum:
              - asc
              - desc
        - name: page
          in: query
          required: false
          description: Current pagination page for the interactive coverage table
          schema:
            type: integer
            minimum: 1
      responses:
        '200':
          description: Interactive Filament page rendered successfully
          content:
            text/html:
              schema:
                type: string
        '403':
          description: Tenant member lacks the required capability to view the page
        '404':
          description: Tenant or workspace context is unavailable or the actor is not entitled to the tenant scope