> ## Documentation Index
> Fetch the complete documentation index at: https://docs.switchagents.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> These docs moved from docs.flintai.dev to docs.switchagents.ai. Use docs.switchagents.ai for every link and request.
> To search these docs from an AI tool, connect the MCP server at https://docs.switchagents.ai/mcp. The page index is at https://docs.switchagents.ai/llms.txt.

# Tenant-grain managed-agents summary (count / tier allowance)

> Tenant-wide summary for the "X / Y managed agents" gauge. count is the number of distinct agents under management across the tenant (all workspaces); limit and tier are the tenant's allowance and plan, and cancel_at_period_end/current_period_end report a pending downgrade, and subscription_status is the raw Stripe status (e.g. past_due) for the payment-failed banner, all read from billing. When billing is disabled, only count is returned. The `fresh` query param bypasses this process's tier cache. Requires view-inventory.



## OpenAPI

````yaml /switch-trust/api-reference/openapi.json get /managed-agents/tenants/{tenant_id}
openapi: 3.0.3
info:
  contact: {}
  description: Switch Trust API
  license:
    name: Switch AI
    url: https://www.sandboxaq.com/legal/eula
  title: Switch Trust API
  version: 1.0.0
servers:
  - description: Flint AI Platform (per-tenant instance)
    url: https://{instance}.flintai.dev/api/v1
    variables:
      instance:
        default: your-instance
        description: Your Flint AI instance subdomain
security: []
paths:
  /managed-agents/tenants/{tenant_id}:
    get:
      tags:
        - managed-agents
      summary: Tenant-grain managed-agents summary (count / tier allowance)
      description: >-
        Tenant-wide summary for the "X / Y managed agents" gauge. count is the
        number of distinct agents under management across the tenant (all
        workspaces); limit and tier are the tenant's allowance and plan, and
        cancel_at_period_end/current_period_end report a pending downgrade, and
        subscription_status is the raw Stripe status (e.g. past_due) for the
        payment-failed banner, all read from billing. When billing is disabled,
        only count is returned. The `fresh` query param bypasses this process's
        tier cache. Requires view-inventory.
      operationId: GetManagedAgentsSummary
      parameters:
        - description: Bypass the tier cache and read billing live
          in: query
          name: fresh
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.managedAgentsSummaryResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Internal Server Error
      security:
        - BearerAuth: []
components:
  schemas:
    api.managedAgentsSummaryResponse:
      properties:
        cancel_at_period_end:
          type: boolean
        count:
          type: integer
        current_period_end:
          type: string
        limit:
          type: integer
        subscription_status:
          type: string
        tier:
          type: string
      type: object
    common.RequestError:
      description: Error responses returned by the API
      properties:
        code:
          example: 400
          type: integer
        message:
          example: Invalid request
          type: string
      required:
        - code
        - message
      type: object
  securitySchemes:
    BearerAuth:
      description: Use this header with a Bearer token to authenticate requests.
      in: header
      name: Authorization
      type: apiKey

````