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

# Get an AutomationGraph

> Returns one AutomationGraph's current semantic document, layout, lifecycle, exact managed bindings, and latest applied revision without exposing credentials or runtime content.

Checkfu support posture: alpha; hosted. Required evidence journey: automation-firing. Deployment-specific readiness and the latest proven release are available from GET /v1/support/capabilities.



## OpenAPI

````yaml /openapi.json get /v1/automation-graphs/{id}
openapi: 3.1.0
info:
  title: Checkfu API
  version: '2026-08-27'
  description: >-
    Authentication is declared per operation: API-key, runtime, or connector
    bearer; Automation signature; or credential-free pairing redemption. Every
    general Checkfu REST request requires the dated `Checkfu-Version` header
    (one of: 2026-08-27); the three MCP JSON-RPC transports use
    `MCP-Protocol-Version`, A2A uses `A2A-Version`, and the provider OAuth
    callback carries neither Checkfu header. API keys resolve one Workspace
    without a request selector; authenticated responses identify it with
    `Checkfu-Workspace-Id`.
servers:
  - url: https://api.checkfu.com
security:
  - bearerAuth: []
tags:
  - name: organizations
  - name: sourceRepositories
  - name: tenants
  - name: workspaces
  - name: principals
  - name: principalGroups
  - name: principalAccessCredentials
  - name: apiKeys
  - name: agents
  - name: harnesses
  - name: harnessRuntime
  - name: sandboxProfiles
  - name: computerProfiles
  - name: permissionAssignments
  - name: actionPolicies
  - name: files
  - name: memoryStores
  - name: dreams
  - name: modelCredentials
  - name: modelRoutingProfiles
  - name: blueprintInstallations
  - name: toolSources
  - name: skills
  - name: skillSources
  - name: agentSources
  - name: skillProposals
  - name: instructionProposals
  - name: catalog
  - name: concepts
  - name: support
  - name: connections
  - name: connectionVaults
  - name: connectionAssignments
  - name: connectedRuntimes
  - name: projects
  - name: collaboration
  - name: automationGraphs
  - name: automations
  - name: actionApprovals
  - name: standingApprovals
  - name: usage
  - name: models
  - name: outcomes
  - name: budgets
  - name: billing
  - name: sessionTemplates
  - name: sessions
  - name: audit
  - name: sessionExports
  - name: runs
  - name: runnerPools
  - name: transcripts
  - name: sessionSelection
  - name: sessionWatches
  - name: webhookEndpoints
  - name: sessionClient
  - name: integrationGateway
  - name: agentDeployments
  - name: workEnvironments
  - name: computers
  - name: computerScreens
  - name: computerBrowserObservations
  - name: computerBrowserActions
  - name: environments
  - name: vaults
  - name: apiMcp
  - name: a2a
paths:
  /v1/automation-graphs/{id}:
    get:
      tags:
        - automationGraphs
      summary: Get an AutomationGraph
      description: >-
        Returns one AutomationGraph's current semantic document, layout,
        lifecycle, exact managed bindings, and latest applied revision without
        exposing credentials or runtime content.


        Checkfu support posture: alpha; hosted. Required evidence journey:
        automation-firing. Deployment-specific readiness and the latest proven
        release are available from GET /v1/support/capabilities.
      operationId: automationGraphs.getAutomationGraph
      parameters:
        - name: id
          in: path
          schema:
            $ref: '#/components/schemas/AutomationGraphId'
          required: true
        - name: checkfu-version
          in: header
          schema:
            type: string
            enum:
              - '2026-08-27'
          required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Objects_123'
          headers:
            checkfu-workspace-id:
              description: The Workspace resolved from the authenticated bearer credential.
              required: true
              schema:
                $ref: '#/components/schemas/WorkspaceId'
        '400':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationMalformedError'
        '401':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - auth.invalid_key
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#auth-invalid-key
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '403':
          description: >-
            The organization, tenant, or workspace backing this key is
            administratively disabled. | Deployment governance or retention
            policy denied the request.
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    required:
                      - error
                    properties:
                      error:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - auth.disabled_tenancy
                          message:
                            type: string
                          more:
                            type: string
                            enum:
                              - >-
                                https://docs.checkfu.com/reference/errors#auth-disabled-tenancy
                            description: >-
                              Stable public documentation and remedy for this
                              error type.
                        required:
                          - type
                          - message
                          - more
                        additionalProperties: false
                    additionalProperties: false
                  - $ref: '#/components/schemas/PolicyDeniedError'
        '404':
          description: >-
            The requested resource does not exist in the resolved deployment
            boundary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationNotFoundError'
        '429':
          description: Typed Checkfu wire error
          headers:
            retry-after:
              description: >-
                Delay in seconds for rate limits or deployment quotas with a
                known release or UTC reset boundary
              required: false
              schema:
                type: integer
                minimum: 1
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - budget.exceeded
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#budget-exceeded
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '500':
          description: >-
            An unexpected internal failure occurred; the message contains an
            opaque incident reference.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RuntimeInternalError'
      security:
        - bearerAuth: []
components:
  schemas:
    AutomationGraphId:
      type: string
      allOf:
        - pattern: ^agph_[0-9a-f]{32}$
    Objects_123:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationGraphId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        document:
          $ref: '#/components/schemas/AutomationGraphStepCount'
        layout:
          $ref: '#/components/schemas/Objects_121'
        created_by_principal_id:
          $ref: '#/components/schemas/PrincipalId'
        status:
          type: string
          enum:
            - active
            - archived
        revision:
          type: integer
          allOf:
            - exclusiveMinimum: 0
        layout_version:
          type: integer
          allOf:
            - exclusiveMinimum: 0
        applied_revision:
          anyOf:
            - type: integer
              allOf:
                - exclusiveMinimum: 0
            - type: 'null'
        bindings:
          $ref: '#/components/schemas/Arrays_40'
        latest_application_id:
          anyOf:
            - $ref: '#/components/schemas/AutomationGraphApplicationId'
            - type: 'null'
        active_application_id:
          anyOf:
            - $ref: '#/components/schemas/AutomationGraphApplicationId'
            - type: 'null'
        created_at:
          type: string
        updated_at:
          type: string
        archived_at:
          anyOf:
            - type: string
            - type: 'null'
      required:
        - id
        - workspace_id
        - document
        - layout
        - created_by_principal_id
        - status
        - revision
        - layout_version
        - applied_revision
        - bindings
        - latest_application_id
        - active_application_id
        - created_at
        - updated_at
        - archived_at
      additionalProperties: false
    WorkspaceId:
      type: string
      allOf:
        - pattern: ^wrkspc_[0-9a-f]{32}$
    ValidationMalformedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.malformed
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-malformed
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The request could not be decoded or violated a declared input
        constraint.
    PolicyDeniedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - policy.denied
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#policy-denied
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: Deployment governance or retention policy denied the request.
    ValidationNotFoundError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.not_found
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-not-found
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The requested resource does not exist in the resolved deployment
        boundary.
    RuntimeInternalError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - runtime.internal
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#runtime-internal
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        An unexpected internal failure occurred; the message contains an opaque
        incident reference.
    AutomationGraphStepCount:
      type: object
      properties:
        name:
          type: string
          allOf:
            - pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        service_principal_id:
          $ref: '#/components/schemas/PrincipalId'
        nodes:
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - trigger
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  trigger:
                    anyOf:
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - schedule
                          cron:
                            type: string
                            allOf:
                              - minLength: 1
                              - maxLength: 255
                          timezone:
                            type: string
                            allOf:
                              - minLength: 1
                              - maxLength: 255
                        required:
                          - kind
                          - cron
                          - timezone
                        additionalProperties: false
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - webhook
                          dedupePointer:
                            type: string
                            allOf:
                              - maxLength: 512
                              - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
                          predicates:
                            $ref: '#/components/schemas/Arrays_39'
                        required:
                          - kind
                          - dedupePointer
                          - predicates
                        additionalProperties: false
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - subscription
                          surfaceScopeId:
                            $ref: '#/components/schemas/SurfaceScopeId'
                          source:
                            anyOf:
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - conversation
                                  conversation:
                                    $ref: '#/components/schemas/Union_193'
                                required:
                                  - kind
                                  - conversation
                                additionalProperties: false
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - resource
                                  resourceType:
                                    type: string
                                    allOf:
                                      - pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                                  externalId:
                                    type: string
                                    allOf:
                                      - minLength: 1
                                      - maxLength: 512
                                required:
                                  - kind
                                  - resourceType
                                  - externalId
                                additionalProperties: false
                        required:
                          - kind
                          - surfaceScopeId
                          - source
                        additionalProperties: false
                required:
                  - kind
                  - id
                  - trigger
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - trigger
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  dedupePointer:
                    type: string
                    allOf:
                      - maxLength: 512
                      - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
                  predicates:
                    $ref: '#/components/schemas/Arrays_39'
                required:
                  - kind
                  - id
                  - dedupePointer
                  - predicates
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - agent
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  agent:
                    $ref: '#/components/schemas/AgentId'
                required:
                  - kind
                  - id
                  - agent
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - check
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  modelRoutingProfileKey:
                    type: string
                    allOf:
                      - pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                  tier:
                    $ref: '#/components/schemas/Union_129'
                  instructions:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 4096
                  failure:
                    type: string
                    enum:
                      - fail_open
                      - fail_closed
                  derivedFrom:
                    type: object
                    properties:
                      agent:
                        $ref: '#/components/schemas/AgentId'
                      version:
                        type: integer
                        allOf:
                          - exclusiveMinimum: 0
                    required:
                      - agent
                      - version
                    additionalProperties: false
                required:
                  - kind
                  - id
                  - modelRoutingProfileKey
                  - instructions
                  - failure
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - outcome
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  rubric:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 65536
                  maxIterations:
                    type: integer
                    allOf:
                      - minimum: 1
                        maximum: 20
                required:
                  - kind
                  - id
                  - rubric
                  - maxIterations
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - flow_review
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  modelRoutingProfileKey:
                    type: string
                    allOf:
                      - pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                  tier:
                    $ref: '#/components/schemas/Union_129'
                  criteria:
                    $ref: '#/components/schemas/UniqueFlowReviewCriteria'
                required:
                  - kind
                  - id
                  - modelRoutingProfileKey
                  - criteria
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - output
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  name:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                required:
                  - kind
                  - id
                  - name
                additionalProperties: false
              - type: object
                properties:
                  id:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  name:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 255
                  condition:
                    $ref: '#/components/schemas/Union_205'
                  kind:
                    type: string
                    enum:
                      - step_agent
                  agent:
                    $ref: '#/components/schemas/AgentId'
                  prompt:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                required:
                  - id
                  - kind
                  - agent
                  - prompt
                additionalProperties: false
              - type: object
                properties:
                  id:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  name:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 255
                  condition:
                    $ref: '#/components/schemas/Union_205'
                  kind:
                    type: string
                    enum:
                      - step_check
                  check:
                    $ref: '#/components/schemas/Objects_120'
                required:
                  - id
                  - kind
                  - check
                additionalProperties: false
              - type: object
                properties:
                  id:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  name:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 255
                  condition:
                    $ref: '#/components/schemas/Union_205'
                  kind:
                    type: string
                    enum:
                      - step_connection
                  connection:
                    $ref: '#/components/schemas/ConnectionId'
                  tool:
                    type: string
                    allOf:
                      - pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                  arguments:
                    $ref: '#/components/schemas/SecretFreeAutomationGraphArguments'
                required:
                  - id
                  - kind
                  - connection
                  - tool
                additionalProperties: false
              - type: object
                properties:
                  id:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  name:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 255
                  condition:
                    $ref: '#/components/schemas/Union_205'
                  kind:
                    type: string
                    enum:
                      - step_approval
                  approver:
                    $ref: '#/components/schemas/PrincipalId'
                  message:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                  timeoutSeconds:
                    type: integer
                    allOf:
                      - exclusiveMinimum: 0
                      - maximum: 604800
                required:
                  - id
                  - kind
                  - approver
                  - message
                additionalProperties: false
              - type: object
                properties:
                  id:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  name:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 255
                  condition:
                    $ref: '#/components/schemas/Union_205'
                  kind:
                    type: string
                    enum:
                      - step_wait
                  seconds:
                    type: integer
                    allOf:
                      - exclusiveMinimum: 0
                      - maximum: 604800
                required:
                  - id
                  - kind
                  - seconds
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - decision
                  id:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  condition:
                    $ref: '#/components/schemas/Union_205'
                required:
                  - kind
                  - id
                  - condition
                additionalProperties: false
          allOf:
            - maxItems: 256
        edges:
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - fires
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  prompt:
                    type: string
                    allOf:
                      - maxLength: 16384
                required:
                  - kind
                  - from
                  - to
                  - prompt
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - gates
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - reviews
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - audits
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - delivers
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - may_ask
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - starts
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - then
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - talks_to
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - hands_to
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - continue
                  from:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                  to:
                    type: string
                    allOf:
                      - maxLength: 16384
                      - minLength: 1
                      - maxLength: 128
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
          allOf:
            - maxItems: 256
      required:
        - name
        - service_principal_id
        - nodes
        - edges
      additionalProperties: false
    Objects_121:
      type: object
      properties:
        nodes:
          $ref: '#/components/schemas/AutomationGraphLayoutNodes'
      required:
        - nodes
      additionalProperties: false
    PrincipalId:
      type: string
      allOf:
        - pattern: ^prin_[0-9a-f]{32}$
    Arrays_40:
      type: array
      items:
        $ref: '#/components/schemas/Objects_122'
    AutomationGraphApplicationId:
      type: string
      allOf:
        - pattern: ^agpa_[0-9a-f]{32}$
    Arrays_39:
      type: array
      items:
        $ref: '#/components/schemas/Union_200'
      allOf:
        - maxItems: 32
    SurfaceScopeId:
      type: string
      allOf:
        - pattern: ^surf_[0-9a-f]{32}$
    Union_193:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - ambient
                - direct
            root_external_id:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 512
            thread_external_id:
              type: 'null'
          required:
            - kind
            - root_external_id
            - thread_external_id
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - thread
            root_external_id:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 512
            thread_external_id:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 512
          required:
            - kind
            - root_external_id
            - thread_external_id
          additionalProperties: false
    AgentId:
      type: string
      allOf:
        - pattern: ^agent_[0-9a-f]{32}$
    Union_129:
      type: string
      enum:
        - default
        - planning
        - tool_loop
    UniqueFlowReviewCriteria:
      type: array
      items:
        type: object
        properties:
          key:
            type: string
            allOf:
              - minLength: 1
              - maxLength: 64
              - pattern: ^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$
          description:
            $ref: '#/components/schemas/FlowReviewCriterionDescription'
          severity:
            type: string
            enum:
              - low
              - medium
              - high
        required:
          - key
          - description
          - severity
        additionalProperties: false
      allOf:
        - minItems: 1
        - maxItems: 16
    Union_205:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - predicates
            predicates:
              type: array
              items:
                $ref: '#/components/schemas/Union_200'
              allOf:
                - minItems: 1
                - maxItems: 10
          required:
            - kind
            - predicates
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - check
            check:
              $ref: '#/components/schemas/Objects_120'
          required:
            - kind
            - check
          additionalProperties: false
    Objects_120:
      type: object
      properties:
        modelRoutingProfileKey:
          type: string
          allOf:
            - pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        tier:
          $ref: '#/components/schemas/Union_129'
        instructions:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 4096
        failure:
          type: string
          enum:
            - fail_open
            - fail_closed
        derivedFrom:
          type: object
          properties:
            agent:
              $ref: '#/components/schemas/AgentId'
            version:
              type: integer
              allOf:
                - exclusiveMinimum: 0
          required:
            - agent
            - version
          additionalProperties: false
      required:
        - modelRoutingProfileKey
        - instructions
        - failure
      additionalProperties: false
    ConnectionId:
      type: string
      allOf:
        - pattern: ^conn_[0-9a-f]{32}$
    SecretFreeAutomationGraphArguments:
      type: object
    AutomationGraphLayoutNodes:
      type: array
      items:
        type: object
        properties:
          id:
            type: string
            allOf:
              - maxLength: 16384
              - minLength: 1
              - maxLength: 128
          x:
            type: number
          'y':
            type: number
        required:
          - id
          - x
          - 'y'
        additionalProperties: false
      allOf:
        - maxItems: 256
    Objects_122:
      type: object
      properties:
        resource_kind:
          type: string
          enum:
            - automation
            - permission_assignment
        resource_id:
          type: string
          allOf:
            - maxLength: 16384
            - minLength: 1
        resource_version:
          type: integer
          allOf:
            - exclusiveMinimum: 0
        subject:
          type: string
          allOf:
            - maxLength: 16384
            - minLength: 1
        disposition:
          type: string
          enum:
            - created
            - reused
            - adopted
        management:
          type: string
          enum:
            - reconcile
            - none
        configuration_fingerprint:
          type: string
          allOf:
            - pattern: ^sha256:[0-9a-f]{64}$
      required:
        - resource_kind
        - resource_id
        - resource_version
        - subject
        - disposition
        - management
        - configuration_fingerprint
      additionalProperties: false
    Union_200:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - exists
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
          required:
            - kind
            - pointer
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - equals
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
            value:
              type: string
              allOf:
                - maxLength: 4096
          required:
            - kind
            - pointer
            - value
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - contains
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
            value:
              type: string
              allOf:
                - maxLength: 16384
                - minLength: 1
                - maxLength: 4096
          required:
            - kind
            - pointer
            - value
          additionalProperties: false
    FlowReviewCriterionDescription:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 1024
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````