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

# Update Agent State

> Update `state` for an agent (`state`: active or blocked).



## OpenAPI

````yaml /openapi.json put /api/svc/v1/agents/{id}/state
openapi: 3.1.0
info:
  title: TrueFoundry API
  description: API for TrueFoundry
  version: 0.1.0
  contact: {}
servers:
  - url: https://{controlPlaneURL}
    variables:
      controlPlaneURL:
        default: app.truefoundry.com
        description: Control Plane URL
security: []
tags:
  - name: Agent
  - name: Agent Skills
  - name: Applications
  - name: Metrics
  - name: Apply
  - name: Artifacts
  - name: Audit Logs
  - name: Clusters
  - name: Jobs
  - name: LLM Gateway Budgets
  - name: Logs
  - name: MCP Registry
  - name: MCP Servers V2
  - name: MLRepos
  - name: Model Deployments
  - name: Models
  - name: Personal Access Tokens
  - name: Prompts
  - name: Provider Integrations
  - name: SCIM v2
  - name: Secret Groups
  - name: Secrets
  - name: Teams
  - name: Traces
  - name: Users
  - name: Virtual Accounts
  - name: Role Bindings
  - name: Workspaces
  - name: Provider Accounts
paths:
  /api/svc/v1/agents/{id}/state:
    put:
      tags:
        - Agent
        - public
      summary: Update Agent State
      description: 'Update `state` for an agent (`state`: active or blocked).'
      operationId: Agent.updateAgentState
      parameters:
        - name: id
          required: true
          in: path
          description: System-generated agent ID.
          schema:
            example: jqfwg345gi25n5ju2yz5iz6m
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAgentStateRequest'
      responses:
        '200':
          description: Agent updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAgentEntityResponse'
        '400':
          description: |-
            Invalid request. Possible causes:
            - `state` missing or not active/blocked
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '401':
          description: Missing or invalid bearer token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '403':
          description: Caller lacks MANAGE_AGENT permission on the agent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '404':
          description: Agent with the given id does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '500':
          description: Transaction commit failure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
      security:
        - jwt: []
components:
  schemas:
    UpdateAgentStateRequest:
      type: object
      properties:
        state:
          description: Lifecycle state of the agent.
          example: active
          allOf:
            - $ref: '#/components/schemas/AgentState'
      required:
        - state
      title: UpdateAgentStateRequest
      x-fern-type-name: UpdateAgentStateRequest
    GetAgentEntityResponse:
      type: object
      properties:
        data:
          description: Agent
          allOf:
            - $ref: '#/components/schemas/Agent'
      required:
        - data
      title: GetAgentEntityResponse
      x-fern-type-name: GetAgentEntityResponse
    HttpError:
      type: object
      properties:
        statusCode:
          type: integer
          description: HTTP Status Code
        message:
          type: string
          description: Error Message
        code:
          oneOf:
            - type: integer
            - type: string
          description: Error code
          nullable: true
        details:
          type: array
          description: Error details
          items:
            type: object
          nullable: true
      required:
        - statusCode
        - message
      title: HttpError
      x-fern-type-name: HttpError
    AgentState:
      type: string
      enum:
        - active
        - blocked
      description: Lifecycle state of the agent.
      title: AgentState
      x-fern-type-name: AgentState
    Agent:
      type: object
      properties:
        id:
          type: string
          description: System-generated agent ID.
          example: jqfwg345gi25n5ju2yz5iz6m
          nullable: true
        name:
          type: string
        fqn:
          type: string
          description: Human-readable Fully Qualified Name of the agent.
        tenantName:
          type: string
        accountId:
          type: string
          nullable: false
        latestVersion:
          type: number
        type:
          type: string
        source:
          type: string
          enum:
            - truefoundry
            - trueforge
            - aws-agentcore-runtime
            - aws-agentcore-harness
            - microsoft-copilot-studio
            - microsoft-foundry
            - snowflake-cortex-agent
          default: truefoundry
          description: >-
            Where the agent originated from. Distinct from the legacy manifest
            `source` object.
        providerIntegrationId:
          type: string
          nullable: true
          description: >-
            Agent registry provider integration ID, when the agent was imported
            from a registry integration.
        controlMode:
          type: string
          enum:
            - governed
            - ungoverned
          description: >-
            Whether TrueFoundry governs the agent lifecycle (`governed`) or the
            agent is imported for discovery (`ungoverned`).
        state:
          type: string
          enum:
            - active
            - blocked
          description: >-
            Lifecycle state of the agent (`active`, `blocked`).
            Discovered/ungoverned agents default to active.
        latestVersionDetails:
          nullable: true
          type: object
          allOf:
            - $ref: '#/components/schemas/AgentVersion'
        createdBySubject:
          $ref: '#/components/schemas/Subject'
        manifest:
          type: object
          nullable: true
          description: Copy of the agent manifest (v2).
        metadata:
          type: object
          nullable: true
          description: Server-owned bookkeeping, such as the outbound auth revision.
        agentIdentityId:
          type: string
          nullable: true
          description: ID of the agent identity created for this agent.
        jwtId:
          type: string
          nullable: true
          description: >-
            System-generated ID of the currently active JWT of the linked agent
            identity.
        jwts:
          nullable: true
          description: >-
            JWT tokens of the linked agent identity. Present only for agents
            with an identity.
          type: array
          items:
            $ref: '#/components/schemas/Jwt'
        createdBy:
          type: string
          nullable: true
      required:
        - name
        - fqn
        - tenantName
        - accountId
        - latestVersion
        - type
        - source
        - controlMode
        - state
        - createdBySubject
      title: Agent
      x-fern-type-name: Agent
    AgentVersion:
      type: object
      properties:
        id:
          type: string
          description: System-generated agent version ID.
          example: jqfwg345gi25n5ju2yz5iz6m
          nullable: true
        agentId:
          type: string
        fqn:
          type: string
          description: Human-readable Fully Qualified Name of the agent version.
        manifest:
          oneOf:
            - $ref: '#/components/schemas/AgentManifest'
          description: Agent Manifest
        version:
          type: number
        metadata:
          nullable: true
          description: Optional metadata attached to the agent version.
          type: object
          allOf:
            - $ref: '#/components/schemas/AgentVersionMetadata'
        createdBySubject:
          nullable: true
          type: object
          allOf:
            - $ref: '#/components/schemas/Subject'
      required:
        - agentId
        - fqn
        - manifest
        - version
      title: AgentVersion
      x-fern-type-name: AgentVersion
    Subject:
      type: object
      properties:
        subjectId:
          type: string
          description: Subject ID
        subjectType:
          type: string
          description: Subject type
          enum:
            - user
            - team
            - serviceaccount
            - virtualaccount
            - agent-identity
            - agent
            - agent-channel-identity
            - role
        subjectSlug:
          type: string
          description: Subject slug
          nullable: true
        subjectDisplayName:
          type: string
          description: Subject display name
          nullable: true
        subjectPatName:
          type: string
          description: Subject PAT name
          nullable: true
        subjectControllerName:
          type: string
          nullable: true
        subjectExternalIdentitySlug:
          type: string
          description: External identity slug (external_identity_id:sub:email)
          nullable: true
      required:
        - subjectId
        - subjectType
      title: Subject
      x-fern-type-name: Subject
    Jwt:
      type: object
      properties:
        id:
          type: string
        subjectType:
          type: string
        subjectId:
          type: string
        metadata:
          type: object
          additionalProperties: true
          nullable: true
        expiry:
          format: date-time
          type: string
        tokenType:
          type: string
          enum:
            - jwt
            - opaque
        createdAt:
          format: date-time
          type: string
        updatedAt:
          format: date-time
          type: string
        lastAccessedAt:
          format: date-time
          type: string
          nullable: true
          description: >-
            Last authentication time for this specific token. Null until the
            first access event lands.
      required:
        - id
        - subjectType
        - subjectId
        - expiry
        - tokenType
        - createdAt
        - updatedAt
      title: Jwt
      x-fern-type-name: Jwt
    AgentManifest:
      type: object
      oneOf:
        - $ref: '#/components/schemas/TrueFoundryAgentManifest'
        - $ref: '#/components/schemas/RemoteAgent'
        - $ref: '#/components/schemas/LegacyAgentManifest'
      title: AgentManifest
      x-fern-type-name: AgentManifest
    AgentVersionMetadata:
      type: object
      properties:
        promptVariables:
          type: object
          additionalProperties:
            type: string
            nullable: true
          description: >-
            Prompt template variables (variable name to default value) saved
            from the linked prompt version. Only set for agents with an
            instruction.
          nullable: true
      title: AgentVersionMetadata
      x-fern-type-name: AgentVersionMetadata
    TrueFoundryAgentManifest:
      type: object
      required:
        - type
        - name
        - description
        - model
      properties:
        type:
          description: Type of the manifest
          type: string
          enum:
            - truefoundry-agent
          default: truefoundry-agent
        name:
          description: The name of the Agent
          type: string
          pattern: ^[a-z](?:[a-z0-9]|-(?!-)){1,30}[a-z0-9]$
        description:
          description: The description of the Agent
          type: string
          maxLength: 2000
        tags:
          description: Tags for the Agent
          type: object
        model:
          $ref: '#/components/schemas/TrueFoundryAgentModel'
        skills:
          description: List of agent skills to attach to this agent
          type: array
          items:
            $ref: '#/components/schemas/TrueFoundryAgentSkill'
        mcp_servers:
          description: >-
            List of MCP servers with tag-based tool
            enable/disable/preload/approval policy
          type: array
          items:
            $ref: '#/components/schemas/TrueFoundryAgentMcpServer'
        instructions:
          description: System instructions or prompt for the agent
          type: string
        messages:
          description: >-
            Pre-defined initial messages for the agent. Supports template
            variable replacement.
          type: array
          items:
            $ref: '#/components/schemas/TrueFoundryAgentUserMessage'
        variables:
          description: >-
            Variables keyed by name. Each has optional default_value and
            optional description.
          type: object
          additionalProperties:
            $ref: '#/components/schemas/TrueFoundryAgentVariable'
        sample_inputs:
          description: >-
            Sample inputs for your agent. These inputs are shown as an example
            in the "Agent Chat" page. (Click on Try Now in the agent listing
            page)
          type: array
          items:
            $ref: '#/components/schemas/SampleAgentInput'
        response_format:
          $ref: '#/components/schemas/TrueFoundryAgentResponseFormat'
        config:
          $ref: '#/components/schemas/TrueFoundryAgentConfig'
        collaborators:
          description: List of users who have access to this Agent
          type: array
          items:
            $ref: '#/components/schemas/Collaborator'
        ownedBy:
          $ref: '#/components/schemas/OwnedBy'
      title: TrueFoundryAgentManifest
      x-fern-type-name: TrueFoundryAgentManifest
    RemoteAgent:
      $ref: '#/components/schemas/SelfHostedAgent'
      title: RemoteAgent
      x-fern-type-name: RemoteAgent
    LegacyAgentManifest:
      type: object
      required:
        - type
        - name
        - description
        - source
      properties:
        type:
          description: Type of the manifest
          type: string
          enum:
            - agent
          default: agent
        name:
          description: The name of the Agent
          type: string
          pattern: ^[a-z](?:[a-z0-9]|-(?!-)){1,30}[a-z0-9]$
        description:
          description: The description of the Agent
          type: string
          maxLength: 2000
        source:
          $ref: '#/components/schemas/AgentSource'
        collaborators:
          description: List of users who have access to this Agent
          type: array
          items:
            $ref: '#/components/schemas/Collaborator'
        sample_inputs:
          description: >-
            Sample inputs for your agent. These inputs are shown as an example
            in the "Agent Chat" page. (Click on Try Now in the agent listing
            page)
          type: array
          items:
            $ref: '#/components/schemas/SampleAgentInput'
        ownedBy:
          $ref: '#/components/schemas/OwnedBy'
      title: LegacyAgentManifest
      x-fern-type-name: LegacyAgentManifest
    TrueFoundryAgentModel:
      type: object
      required:
        - name
      properties:
        name:
          description: Model name, e.g. openai-main/gpt-4o
          type: string
          minLength: 1
        params:
          $ref: '#/components/schemas/TrueFoundryAgentModelParams'
      title: TrueFoundryAgentModel
      x-fern-type-name: TrueFoundryAgentModel
    TrueFoundryAgentSkill:
      description: +discriminator=type
      type: object
      oneOf:
        - $ref: '#/components/schemas/TrueFoundryAgentTrueFoundrySkill'
        - $ref: '#/components/schemas/TrueFoundryAgentGitSourceSkill'
      discriminator:
        propertyName: type
      title: TrueFoundryAgentSkill
      x-fern-type-name: TrueFoundryAgentSkill
    TrueFoundryAgentMcpServer:
      description: +discriminator=type
      type: object
      oneOf:
        - $ref: '#/components/schemas/TrueFoundryAgentMcpServerRegistry'
        - $ref: '#/components/schemas/TrueFoundryAgentMcpServerInline'
      discriminator:
        propertyName: type
      title: TrueFoundryAgentMcpServer
      x-fern-type-name: TrueFoundryAgentMcpServer
    TrueFoundryAgentUserMessage:
      type: object
      required:
        - type
        - content
      properties:
        type:
          description: Message type discriminator.
          type: string
          enum:
            - user.message
          default: user.message
        content:
          description: >-
            Content of the user message. Supports template variables like
            {{variable_name}}.
          type: string
          minLength: 1
      title: TrueFoundryAgentUserMessage
      x-fern-type-name: TrueFoundryAgentUserMessage
    TrueFoundryAgentVariable:
      type: object
      properties:
        default_value:
          description: Default value for the variable
          type: string
        description:
          description: Description of the variable
          type: string
      title: TrueFoundryAgentVariable
      x-fern-type-name: TrueFoundryAgentVariable
    SampleAgentInput:
      type: object
      properties:
        text:
          description: Input for the agent
          type: string
        variables:
          description: Variable inputs for Prompt Variables defined in the Prompt
          type: object
          additionalProperties:
            type: string
      title: SampleAgentInput
      x-fern-type-name: SampleAgentInput
    TrueFoundryAgentResponseFormat:
      type: object
      oneOf:
        - $ref: '#/components/schemas/ResponseFormatText'
        - $ref: '#/components/schemas/ResponseFormatJSONSchema'
        - $ref: '#/components/schemas/ResponseFormatJSONObject'
      title: TrueFoundryAgentResponseFormat
      x-fern-type-name: TrueFoundryAgentResponseFormat
    TrueFoundryAgentConfig:
      type: object
      properties:
        iteration_limit:
          description: Maximum number of iterations for the agent
          type: integer
          minimum: 1
          maximum: 1024
          default: 100
        sandbox:
          $ref: '#/components/schemas/TrueFoundryAgentSandboxConfig'
        dynamic_sub_agents:
          $ref: '#/components/schemas/TrueFoundryAgentDynamicSubAgentsConfig'
        context_management:
          $ref: '#/components/schemas/TrueFoundryAgentContextManagementConfig'
        generative_ui:
          $ref: '#/components/schemas/TrueFoundryAgentGenerativeUIConfig'
        ask_user_questions:
          $ref: '#/components/schemas/TrueFoundryAgentAskUserQuestionsConfig'
      title: TrueFoundryAgentConfig
      x-fern-type-name: TrueFoundryAgentConfig
    Collaborator:
      type: object
      required:
        - subject
        - role_id
      properties:
        subject:
          description: 'Fully Qualified Name of the subject. eg: user:email or team:teamname'
          type: string
        role_id:
          description: Role ID for the resource
          type: string
      title: Collaborator
      x-fern-type-name: Collaborator
    OwnedBy:
      description: Names of the owners that own this resource
      type: object
      required:
        - account
      properties:
        account:
          description: The name of the account that owns this resource
          type: string
      title: OwnedBy
      x-fern-type-name: OwnedBy
    SelfHostedAgent:
      description: Self Hosted
      type: object
      properties:
        type:
          description: Type of the manifest
          type: string
          enum:
            - remote-agent/self-hosted
          default: remote-agent/self-hosted
        url:
          description: The URL of the server
          type: string
          pattern: ^https?:\/\/[^\s]+$
        auth_data:
          $ref: '#/components/schemas/CustomAgentServerAuth'
        framework:
          $ref: '#/components/schemas/AgentFramework'
      allOf:
        - $ref: '#/components/schemas/BaseRemoteAgent'
      required:
        - type
        - url
        - framework
      title: SelfHostedAgent
      x-fern-type-name: SelfHostedAgent
    AgentSource:
      description: |-
        +discriminator=type
        +sort=300
      type: object
      oneOf:
        - $ref: '#/components/schemas/PromptSource'
        - $ref: '#/components/schemas/HostedA2AAgent'
      discriminator:
        propertyName: type
      title: AgentSource
      x-fern-type-name: AgentSource
    TrueFoundryAgentModelParams:
      type: object
      properties:
        max_tokens:
          description: Maximum number of tokens to generate.
          type: integer
          minimum: 0
        reasoning_effort:
          description: Reasoning depth when the model and provider support this parameter.
          type: string
        temperature:
          description: Sampling temperature (0–2). Higher values increase randomness.
          type: number
          minimum: 0
          maximum: 2
        top_p:
          description: Nucleus sampling threshold (0–1). Alternative to temperature.
          type: number
          minimum: 0
          maximum: 1
        top_k:
          description: Top-K sampling when supported by the provider.
          type: integer
          minimum: 0
        parallel_tool_calls:
          description: >-
            Allow the model to request multiple tool calls in parallel when
            supported.
          type: boolean
      title: TrueFoundryAgentModelParams
      x-fern-type-name: TrueFoundryAgentModelParams
    TrueFoundryAgentTrueFoundrySkill:
      description: Skill from the TrueFoundry skill registry, referenced by FQN.
      type: object
      required:
        - type
        - fqn
        - preload
      properties:
        type:
          description: Type
          type: string
          enum:
            - truefoundry-skills-registry
          default: truefoundry-skills-registry
        fqn:
          description: Fully qualified name of the agent skill
          type: string
          minLength: 1
          pattern: ^agent-skill:[^/]+/[^/]+/[^/:]+:[0-9]+$
        preload:
          description: If true, the SKILL.md content is injected into the agent context.
          type: boolean
          default: false
      title: TrueFoundryAgentTrueFoundrySkill
      x-fern-type-name: TrueFoundryAgentTrueFoundrySkill
    TrueFoundryAgentGitSourceSkill:
      description: Skill from a public Git repository.
      type: object
      required:
        - type
        - url
        - name
        - ref
      properties:
        type:
          description: Type
          type: string
          enum:
            - git
          default: git
        url:
          description: Full HTTPS URL of a GitHub or GitLab repository.
          type: string
          allOf:
            - minLength: 1
              pattern: >-
                ^https://(github\.com/[A-Za-z0-9._-]+/[A-Za-z0-9._-]+|gitlab\.com/[A-Za-z0-9._-]+(/[A-Za-z0-9._-]+)+)(/|\.git)?$
            - not:
                pattern: (^|/)\.\.(/|$)
        path:
          description: >-
            Path to the skill directory within the repository (e.g.
            skills/durable-objects). Omit to use the repository root.
          type: string
          allOf:
            - minLength: 1
              pattern: ^[A-Za-z0-9._/-]+$
            - not:
                pattern: (^|/)\.\.(/|$)
            - not:
                pattern: (^|/)\.(/|$)
            - not:
                pattern: ^/+$
        name:
          description: Name for the skill, used as the directory name in the sandbox.
          type: string
          allOf:
            - minLength: 1
              maxLength: 64
              pattern: ^[A-Za-z0-9._-]+$
            - not:
                pattern: ^\.{1,2}$
            - not:
                pattern: ^\.tfy-
        ref:
          description: Git ref — branch name, tag, or commit SHA.
          type: string
          allOf:
            - minLength: 1
              pattern: ^[A-Za-z0-9._/-]+$
            - not:
                pattern: (^|/)\.\.(/|$)
            - not:
                pattern: ^/+$
      title: TrueFoundryAgentGitSourceSkill
      x-fern-type-name: TrueFoundryAgentGitSourceSkill
    TrueFoundryAgentMcpServerRegistry:
      description: >-
        An MCP server registered on the TrueFoundry platform, referenced by its
        registered name.
      type: object
      required:
        - type
        - name
      properties:
        type:
          description: Type
          type: string
          enum:
            - truefoundry-mcp-registry
          default: truefoundry-mcp-registry
        name:
          description: The registered name of the MCP server to connect.
          type: string
        preload:
          description: >-
            When true, this server's tools are preloaded into context. When
            false (default), tools are discovered lazily and only preload_tools
            stay eager.
          type: boolean
          default: false
        enable_tools:
          description: >-
            Tools to enable. Supports tags @all, @read-only, @write,
            @destructive or literal tool names.
          type: array
          items:
            type: string
          default:
            - '@all'
        disable_tools:
          description: Tools to disable (subtracted from enable_tools).
          type: array
          items:
            type: string
        preload_tools:
          description: When preload is false, tools to still preload into context.
          type: array
          items:
            type: string
        require_approval_for_tools:
          description: >-
            Tools that require human approval before execution. Supports tags
            and literal tool names.
          type: array
          items:
            type: string
          default:
            - '@write'
            - '@destructive'
      title: TrueFoundryAgentMcpServerRegistry
      x-fern-type-name: TrueFoundryAgentMcpServerRegistry
    TrueFoundryAgentMcpServerInline:
      description: >-
        An MCP server connected directly by its url, defined inline in the agent
        (not registered on the TrueFoundry platform).
      type: object
      required:
        - type
        - name
        - url
      properties:
        type:
          description: Type
          type: string
          enum:
            - inline
          default: inline
        name:
          description: A name you choose to identify this inline server.
          type: string
        url:
          description: >-
            The inline MCP server endpoint (streamable-http or SSE). Must be an
            http(s) URL.
          type: string
          pattern: ^https?:\/\/[^\s]+$
        preload:
          description: >-
            When true, this server's tools are preloaded into context. When
            false (default), tools are discovered lazily and only preload_tools
            stay eager.
          type: boolean
          default: false
        enable_tools:
          description: >-
            Tools to enable. Supports tags @all, @read-only, @write,
            @destructive or literal tool names.
          type: array
          items:
            type: string
          default:
            - '@all'
        disable_tools:
          description: Tools to disable (subtracted from enable_tools).
          type: array
          items:
            type: string
        preload_tools:
          description: When preload is false, tools to still preload into context.
          type: array
          items:
            type: string
        require_approval_for_tools:
          description: >-
            Tools that require human approval before execution. Supports tags
            and literal tool names.
          type: array
          items:
            type: string
          default:
            - '@write'
            - '@destructive'
      title: TrueFoundryAgentMcpServerInline
      x-fern-type-name: TrueFoundryAgentMcpServerInline
    ResponseFormatText:
      type: object
      required:
        - type
      properties:
        type:
          type: string
          enum:
            - text
          default: text
      title: ResponseFormatText
      x-fern-type-name: ResponseFormatText
    ResponseFormatJSONSchema:
      type: object
      required:
        - type
        - json_schema
      properties:
        type:
          type: string
          enum:
            - json_schema
          default: json_schema
        json_schema:
          type: object
          required:
            - name
          properties:
            name:
              type: string
            description:
              type: string
            schema:
              type: object
            strict:
              type: boolean
      title: ResponseFormatJSONSchema
      x-fern-type-name: ResponseFormatJSONSchema
    ResponseFormatJSONObject:
      type: object
      required:
        - type
      properties:
        type:
          type: string
          enum:
            - json_object
          default: json_object
      title: ResponseFormatJSONObject
      x-fern-type-name: ResponseFormatJSONObject
    TrueFoundryAgentSandboxConfig:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          default: true
        file_downloads:
          type: boolean
          default: true
        network_policy:
          $ref: '#/components/schemas/TrueFoundryAgentSandboxNetworkPolicy'
      title: TrueFoundryAgentSandboxConfig
      x-fern-type-name: TrueFoundryAgentSandboxConfig
    TrueFoundryAgentDynamicSubAgentsConfig:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          default: true
      title: TrueFoundryAgentDynamicSubAgentsConfig
      x-fern-type-name: TrueFoundryAgentDynamicSubAgentsConfig
    TrueFoundryAgentContextManagementConfig:
      type: object
      properties:
        compaction:
          $ref: '#/components/schemas/TrueFoundryAgentCompactionConfig'
        large_tool_response:
          $ref: '#/components/schemas/TrueFoundryAgentLargeToolResponseConfig'
      title: TrueFoundryAgentContextManagementConfig
      x-fern-type-name: TrueFoundryAgentContextManagementConfig
    TrueFoundryAgentGenerativeUIConfig:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          default: true
      title: TrueFoundryAgentGenerativeUIConfig
      x-fern-type-name: TrueFoundryAgentGenerativeUIConfig
    TrueFoundryAgentAskUserQuestionsConfig:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          default: true
      title: TrueFoundryAgentAskUserQuestionsConfig
      x-fern-type-name: TrueFoundryAgentAskUserQuestionsConfig
    CustomAgentServerAuth:
      type: object
      oneOf:
        - $ref: '#/components/schemas/CustomServerHeaderAuth'
        - $ref: '#/components/schemas/CustomServerPassthrough'
        - $ref: '#/components/schemas/CustomServerOAuth2Marker'
        - $ref: '#/components/schemas/CustomServerAwsSigV4'
      title: CustomAgentServerAuth
      x-fern-type-name: CustomAgentServerAuth
    AgentFramework:
      description: +discriminator=type
      type: object
      oneOf:
        - $ref: '#/components/schemas/A2AFramework'
        - $ref: '#/components/schemas/CustomFramework'
      discriminator:
        propertyName: type
      title: AgentFramework
      x-fern-type-name: AgentFramework
    BaseRemoteAgent:
      type: object
      required:
        - name
        - description
      properties:
        name:
          description: The name of the Agent
          type: string
          pattern: ^[a-z](?:[a-z0-9]|-(?!-)){1,30}[a-z0-9]$
        description:
          description: The description of the Agent
          type: string
          maxLength: 2000
        tags:
          description: Tags for the Agent
          type: object
        collaborators:
          description: List of users who have access to this Agent
          type: array
          items:
            $ref: '#/components/schemas/Collaborator'
        ownedBy:
          $ref: '#/components/schemas/OwnedBy'
      title: BaseRemoteAgent
      x-fern-type-name: BaseRemoteAgent
    PromptSource:
      description: Prompt
      type: object
      required:
        - type
        - prompt_version_fqn
      properties:
        type:
          description: Type of agent source
          type: string
          enum:
            - prompt
          default: prompt
        prompt_version_fqn:
          description: >-
            Fully qualified name of the prompt version to use as the agent
            source
          type: string
        skills:
          description: List of skills associated with the agent
          type: array
          items:
            $ref: '#/components/schemas/A2AAgentSkill'
      title: PromptSource
      x-fern-type-name: PromptSource
    HostedA2AAgent:
      description: Hosted A2A Agent
      type: object
      required:
        - type
        - agent_card_url
      properties:
        type:
          description: Type of agent source
          type: string
          enum:
            - hosted-a2a-agent
          default: hosted-a2a-agent
        agent_card_url:
          description: Agent Card URL for the A2A Agent
          type: string
        headers:
          description: >-
            Headers to be sent with the request to the hosted A2A agent.
            Primarily used for authentication.
          type: object
          additionalProperties:
            type: string
      title: HostedA2AAgent
      x-fern-type-name: HostedA2AAgent
    TrueFoundryAgentSandboxNetworkPolicy:
      type: object
      properties:
        auth_inject:
          description: >-
            Rules for injecting authentication into outbound network requests
            from the sandbox.
          type: array
          items:
            $ref: '#/components/schemas/TrueFoundryAgentSandboxAuthInject'
      title: TrueFoundryAgentSandboxNetworkPolicy
      x-fern-type-name: TrueFoundryAgentSandboxNetworkPolicy
    TrueFoundryAgentCompactionConfig:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          default: true
        compaction_threshold_tokens:
          type: integer
          default: 50000
      title: TrueFoundryAgentCompactionConfig
      x-fern-type-name: TrueFoundryAgentCompactionConfig
    TrueFoundryAgentLargeToolResponseConfig:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          default: true
      title: TrueFoundryAgentLargeToolResponseConfig
      x-fern-type-name: TrueFoundryAgentLargeToolResponseConfig
    CustomServerHeaderAuth:
      description: Static API key or token authentication via request headers.
      type: object
      required:
        - type
        - headers
      properties:
        type:
          description: +value=header
          type: string
          enum:
            - header
          default: header
        headers:
          description: Map each header name to its value.
          type: object
          additionalProperties:
            type: string
      title: CustomServerHeaderAuth
      x-fern-type-name: CustomServerHeaderAuth
    CustomServerPassthrough:
      description: >-
        Authenticate using your existing TrueFoundry account (PAT or Virtual
        Accounts). Your credentials are automatically passed to the server.
      type: object
      required:
        - type
      properties:
        type:
          description: +value=passthrough
          type: string
          enum:
            - passthrough
          default: passthrough
      title: CustomServerPassthrough
      x-fern-type-name: CustomServerPassthrough
    CustomServerOAuth2Marker:
      description: >-
        The Gateway attaches an access token acquired from the agent's
        configured identity provider. The credentials live in the v2 manifest
        and are deliberately absent here, so this manifest can be synced to the
        Gateway without carrying a client secret.
      type: object
      required:
        - type
        - grant_type
      properties:
        type:
          description: +value=oauth2
          type: string
          enum:
            - oauth2
          default: oauth2
        grant_type:
          description: The OAuth2 flow the Gateway uses to acquire the token.
          type: string
          enum:
            - client_credentials
            - jwt_bearer
            - token_exchange
      title: CustomServerOAuth2Marker
      x-fern-type-name: CustomServerOAuth2Marker
    CustomServerAwsSigV4:
      description: Sign requests to AWS Bedrock AgentCore with AWS credentials (SigV4).
      type: object
      required:
        - type
        - region
        - auth
      properties:
        type:
          description: +value=aws-sigv4
          type: string
          enum:
            - aws-sigv4
          default: aws-sigv4
        region:
          $ref: '#/components/schemas/AWSRegion'
        auth:
          description: Credentials used to sign requests.
          type: object
          oneOf:
            - $ref: '#/components/schemas/CustomServerAwsAccessKeyAuth'
            - $ref: '#/components/schemas/CustomServerAwsAssumeRoleAuth'
      title: CustomServerAwsSigV4
      x-fern-type-name: CustomServerAwsSigV4
    A2AFramework:
      description: A2A
      type: object
      required:
        - type
        - agent_card_path
      properties:
        type:
          description: Type
          type: string
          enum:
            - a2a
          default: a2a
        agent_card_path:
          description: Path to the agent card JSON, relative to the base URL
          type: string
          default: /.well-known/agent-card.json
      title: A2AFramework
      x-fern-type-name: A2AFramework
    CustomFramework:
      description: Custom
      type: object
      required:
        - type
      properties:
        type:
          description: Type
          type: string
          enum:
            - custom
          default: custom
      title: CustomFramework
      x-fern-type-name: CustomFramework
    A2AAgentSkill:
      type: object
      required:
        - id
        - name
        - description
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        tags:
          type: array
          items:
            type: string
        examples:
          type: array
          items:
            type: string
        inputModes:
          type: array
          items:
            type: string
        outputModes:
          type: array
          items:
            type: string
      title: A2AAgentSkill
      x-fern-type-name: A2AAgentSkill
    TrueFoundryAgentSandboxAuthInject:
      $ref: '#/components/schemas/TrueFoundryAgentSandboxGitAuthInject'
      title: TrueFoundryAgentSandboxAuthInject
      x-fern-type-name: TrueFoundryAgentSandboxAuthInject
    AWSRegion:
      type: string
      enum:
        - af-south-1
        - ap-east-1
        - ap-northeast-1
        - ap-northeast-2
        - ap-northeast-3
        - ap-south-1
        - ap-south-2
        - ap-southeast-1
        - ap-southeast-2
        - ap-southeast-3
        - ap-southeast-4
        - ap-southeast-5
        - ap-southeast-7
        - ca-central-1
        - ca-west-1
        - cn-north-1
        - cn-northwest-1
        - eu-central-1
        - eu-central-2
        - eu-north-1
        - eu-south-1
        - eu-south-2
        - eu-west-1
        - eu-west-2
        - eu-west-3
        - il-central-1
        - me-central-1
        - me-south-1
        - mx-central-1
        - sa-east-1
        - us-east-1
        - us-east-2
        - us-gov-east-1
        - us-gov-west-1
        - us-west-1
        - us-west-2
        - ap-southeast-6
        - ap-east-2
      title: AWSRegion
      x-fern-type-name: AWSRegion
    CustomServerAwsAccessKeyAuth:
      description: Authenticate with an AWS access key pair.
      type: object
      required:
        - type
        - access_key_id
        - secret_access_key
      properties:
        type:
          description: +value=aws-access-key
          type: string
          enum:
            - aws-access-key
          default: aws-access-key
        access_key_id:
          description: AWS access key ID. Prefer a tfy-secret reference.
          type: string
          pattern: ^\S+$
        secret_access_key:
          description: AWS secret access key. Prefer a tfy-secret reference.
          type: string
          pattern: ^\S+$
      title: CustomServerAwsAccessKeyAuth
      x-fern-type-name: CustomServerAwsAccessKeyAuth
    CustomServerAwsAssumeRoleAuth:
      description: Authenticate by assuming an IAM role (SigV4).
      type: object
      required:
        - type
        - assumed_role_arn
      properties:
        type:
          description: +value=aws-assumed-role
          type: string
          enum:
            - aws-assumed-role
          default: aws-assumed-role
        assumed_role_arn:
          description: ARN of the role you want to assume. Prefer a tfy-secret reference.
          type: string
          pattern: >-
            ^(arn:(aws|aws-us-gov|aws-cn):iam::[0-9]{12}:role(/[\w+=,.@-]+)+|tfy-secret:\/\/.+:.+:.+)$
        external_id:
          description: >-
            Optional external ID to use when assuming the role. This provides an
            added layer of security by ensuring only parties with the correct
            external ID can assume the role.
          type: string
      title: CustomServerAwsAssumeRoleAuth
      x-fern-type-name: CustomServerAwsAssumeRoleAuth
    TrueFoundryAgentSandboxGitAuthInject:
      description: Git Auth Inject
      type: object
      required:
        - type
        - match
        - auth_data
      properties:
        type:
          description: +value=git
          type: string
          enum:
            - git
          default: git
        match:
          $ref: '#/components/schemas/TrueFoundryAgentSandboxAuthInjectMatch'
        auth_data:
          $ref: '#/components/schemas/TrueFoundryAgentSandboxAuthData'
      title: TrueFoundryAgentSandboxGitAuthInject
      x-fern-type-name: TrueFoundryAgentSandboxGitAuthInject
    TrueFoundryAgentSandboxAuthInjectMatch:
      type: object
      required:
        - hosts
      properties:
        hosts:
          description: >-
            Exact hostnames that this auth injection rule applies to (e.g.
            api.github.com). Wildcards are not allowed.
          type: array
          items:
            type: string
            pattern: ^[A-Za-z0-9]([A-Za-z0-9.-]*[A-Za-z0-9])?$
      title: TrueFoundryAgentSandboxAuthInjectMatch
      x-fern-type-name: TrueFoundryAgentSandboxAuthInjectMatch
    TrueFoundryAgentSandboxAuthData:
      $ref: '#/components/schemas/TrueFoundryAgentSandboxBasicAuthData'
      title: TrueFoundryAgentSandboxAuthData
      x-fern-type-name: TrueFoundryAgentSandboxAuthData
    TrueFoundryAgentSandboxBasicAuthData:
      description: Basic Auth
      type: object
      required:
        - type
        - username
        - password
      properties:
        type:
          description: +value=basic
          type: string
          enum:
            - basic
          default: basic
        username:
          description: Username for basic authentication.
          type: string
          pattern: ^\S+$
        password:
          description: >-
            Password or token for basic authentication. Stored as a secret
            reference (tfy-secret://…).
          type: string
          minLength: 1
      title: TrueFoundryAgentSandboxBasicAuthData
      x-fern-type-name: TrueFoundryAgentSandboxBasicAuthData
  securitySchemes:
    jwt:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.