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

# Get the team board

> Returns the shared task board of a session whose roster runs as a team: every task with its status, owner, notes, and outcome; the notices and the decision; and the members named the way the board names them. Any session id in the tree is accepted; the read resolves to its root. A session whose tree is not a team is a 404. Each transition is also recorded as a board_update event on the root's log, but that log interleaves events written by every member, so a reader paging it by event id after a cursor can skip one; this read is the authoritative state, and a poller should refresh from it rather than reconstruct the board from events alone.



## OpenAPI

````yaml /managed-agents/openapi.yaml get /managed-agents/v1/sessions/{session_id}/board
openapi: 3.1.0
info:
  title: Managed Agents API
  version: 0.14.0
  description: >-
    The Recursion Managed Agents REST API. Authenticate with a Recursion API key
    as a bearer token. An organization-scoped key acts in its own organization
    and needs nothing else; a tenant-scoped key must also send
    `x-organization-id` with an organization id or `default`. Field names follow
    each operation's published schema.
servers:
  - url: https://api.recursion.labelbox.com
security:
  - bearerAuth: []
paths:
  /managed-agents/v1/sessions/{session_id}/board:
    get:
      tags:
        - Sessions
      summary: Get the team board
      description: >-
        Returns the shared task board of a session whose roster runs as a team:
        every task with its status, owner, notes, and outcome; the notices and
        the decision; and the members named the way the board names them. Any
        session id in the tree is accepted; the read resolves to its root. A
        session whose tree is not a team is a 404. Each transition is also
        recorded as a board_update event on the root's log, but that log
        interleaves events written by every member, so a reader paging it by
        event id after a cursor can skip one; this read is the authoritative
        state, and a poller should refresh from it rather than reconstruct the
        board from events alone.
      operationId: managedAgentsGetSessionBoard
      parameters:
        - description: >-
            Session id (UUID) as returned by managedAgentsStartSession or
            managedAgentsListSessions.
          in: path
          name: session_id
          required: true
          schema:
            description: >-
              Session id (UUID) as returned by managedAgentsStartSession or
              managedAgentsListSessions.
            format: uuid
            type: string
        - $ref: '#/components/parameters/RecursionTenantId'
        - $ref: '#/components/parameters/RecursionOrganizationId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Board'
          description: >-
            A snapshot of one session tree's shared task board: its tasks,
            posts, and members. Present once the tree has entered team state; an
            auto-mode tree that has not posted reads as an empty board.
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '400':
          description: Bad Request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorInvalidRequest'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorUnauthorized'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorForbidden'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '404':
          description: Not Found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorNotFound'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '413':
          description: Payload Too Large.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorPayloadTooLarge'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '429':
          headers:
            Retry-After:
              description: When to retry, as delay seconds or an HTTP date.
              schema:
                type: string
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
          description: Too Many Requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorRateLimitExceeded'
        '500':
          description: Internal Server Error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorInternalError'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '502':
          description: A dependent service returned an invalid response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorDependencyFailure'
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '503':
          headers:
            Retry-After:
              description: When to retry, as delay seconds or an HTTP date.
              schema:
                type: string
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
          description: Service Unavailable.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/ManagedAgentsApiErrorManagedAgentsUnavailable
                  - $ref: >-
                      #/components/schemas/ManagedAgentsApiErrorServiceUnavailable
                discriminator:
                  propertyName: code
                  mapping:
                    managed_agents_unavailable:
                      $ref: >-
                        #/components/schemas/ManagedAgentsApiErrorManagedAgentsUnavailable
                    service_unavailable:
                      $ref: >-
                        #/components/schemas/ManagedAgentsApiErrorServiceUnavailable
        '504':
          headers:
            Retry-After:
              description: When to retry, as delay seconds or an HTTP date.
              schema:
                type: string
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
          description: A dependent service timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorDependencyTimeout'
components:
  parameters:
    RecursionTenantId:
      name: x-tenant-id
      in: header
      required: false
      description: >-
        Optional tenant consistency check. When present, it must name the tenant
        bound to the API key, including when x-organization-id is `default`.
      schema:
        type: string
        minLength: 1
    RecursionOrganizationId:
      name: x-organization-id
      in: header
      required: false
      description: >-
        Organization in which to act. Required for a tenant-scoped API key.
        Optional for an organization-scoped key, where it must name that same
        organization. The value may be an organization id or `default`.
      schema:
        type: string
        minLength: 1
  schemas:
    Board:
      description: >-
        A snapshot of one session tree's shared task board: its tasks, posts,
        and members. Present once the tree has entered team state; an auto-mode
        tree that has not posted reads as an empty board.
      properties:
        as_of:
          description: >-
            RFC 3339 server time at which the snapshot was read, so a reader can
            age claims.
          format: date-time
          type: string
        members:
          description: >-
            The sessions that may act on the board. Omitted when the reader did
            not resolve members.
          items:
            $ref: '#/components/schemas/BoardMember'
          type: array
        posts:
          description: Every notice, recommendation, and decision in posting order.
          items:
            $ref: '#/components/schemas/BoardPost'
          type: array
        tasks:
          description: >-
            Every task on the board in posting order, including done and dropped
            ones.
          items:
            $ref: '#/components/schemas/BoardTask'
          type: array
      required:
        - tasks
        - posts
        - as_of
      type: object
      additionalProperties: false
    ManagedAgentsApiErrorInvalidRequest:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - invalid_request
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorUnauthorized:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - unauthorized
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorForbidden:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - forbidden
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorNotFound:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - not_found
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorPayloadTooLarge:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - payload_too_large
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorRateLimitExceeded:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - rate_limit_exceeded
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorInternalError:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - internal_error
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorDependencyFailure:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - bad_gateway
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorManagedAgentsUnavailable:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - managed_agents_unavailable
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorServiceUnavailable:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - service_unavailable
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorDependencyTimeout:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - gateway_timeout
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    BoardMember:
      description: >-
        One session on the team as the snapshot saw it: the name it is addressed
        by, whether it leads, and whether it is still live.
      properties:
        leader:
          description: True for the root session, which posts the round and decides.
          type: boolean
        name:
          description: >-
            The name members refer to it by: the thread name for a teammate, the
            agent's name for the leader.
          type: string
        session_id:
          description: >-
            The member's session id. Task owners and post authors are recorded
            by this id.
          type: string
        state:
          description: >-
            The member's thread state when the snapshot was read, as list_agents
            reports it. Omitted when the reader did not resolve members.
          type: string
      required:
        - session_id
        - name
      type: object
      additionalProperties: false
    BoardPost:
      description: >-
        A tree-wide post on the board: a pinned notice, a teammate's
        recommendation, or the leader's decision that closes an exploratory
        round.
      properties:
        created_at:
          description: When the post was made.
          format: date-time
          type: string
        created_by:
          description: Session id of the member who posted it.
          type: string
        kind:
          description: >-
            notice: a fact every member needs, shown to every member.
            recommendation: a teammate's pick among a round's proposals with its
            rationale. decision: the leader's call on which proposals carry
            forward; at most one per board.
          enum:
            - notice
            - decision
            - recommendation
          type: string
        post_id:
          description: Server-assigned id of the post.
          type: string
        task_ids:
          description: >-
            Tasks the post refers to. A decision names the winning proposals; a
            recommendation names the teammate's pick.
          items:
            type: string
          type: array
        text:
          description: >-
            The post's text: the notice, or the rationale behind a
            recommendation or decision.
          type: string
      required:
        - post_id
        - kind
        - text
        - created_by
        - created_at
      type: object
      additionalProperties: false
    BoardTask:
      description: >-
        One row of a team's shared task board: a unit of work a member claims,
        does, and marks done, with its brief, dependencies, owner, outcome, and
        notes.
      properties:
        artifacts:
          description: >-
            Sandbox paths the task is expected to write, named by the poster so
            every member sees which paths belong to whom.
          items:
            type: string
          type: array
        blocked_on:
          description: >-
            Task ids this task waits on. The task becomes claimable once every
            one of them is done.
          items:
            type: string
          type: array
        body:
          description: >-
            The self-contained brief the owner works from: what to produce,
            where to write it, what a good result contains, and any shared
            convention the round must follow.
          type: string
        claim_generation:
          description: >-
            Incremented on every claim so a stale owner cannot update a task
            that was released and re-claimed.
          format: int64
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        created_at:
          description: When the task was posted.
          format: date-time
          type: string
        created_by:
          description: Session id of the member who posted the task.
          type: string
        kind:
          description: >-
            task: work with a named output. explore: one angle on an open
            question, whose proposal a review reads. review: read another
            member's output or proposal and leave a verdict as a note.
          enum:
            - task
            - explore
            - review
          type: string
        notes:
          description: Notes attached to the task in the order they were added.
          items:
            $ref: '#/components/schemas/BoardNote'
          type: array
        outcome:
          $ref: '#/components/schemas/BoardOutcome'
          description: What the task produced. Present once the task is done.
        owner_session_id:
          description: >-
            Session id of the member holding the claim. Empty while the task is
            open or after a claim was released.
          type: string
        seq:
          description: >-
            Tree-local ordinal, assigned in posting order. Members and the
            console address the task by its label, "T" followed by this number.
          format: int64
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        status:
          description: >-
            open: claimable. claimed: owned and in progress. blocked: waiting on
            the tasks in blocked_on, or on something the owner named in a note.
            done: finished, with an outcome. dropped: withdrawn by the leader.
          enum:
            - open
            - claimed
            - blocked
            - done
            - dropped
          type: string
        task_id:
          description: Server-assigned id of the task, stable across status changes.
          type: string
        title:
          description: One-line title shown on the board and in the console.
          type: string
        updated_at:
          description: When the task last changed status, owner, outcome, or notes.
          format: date-time
          type: string
      required:
        - task_id
        - seq
        - kind
        - title
        - body
        - status
        - claim_generation
        - created_by
        - created_at
        - updated_at
      type: object
      additionalProperties: false
    ManagedAgentsApiErrorDetails:
      type: object
      properties:
        field:
          description: >-
            Request field or header responsible for the error, when one can be
            identified.
          type: string
        issues:
          description: >-
            Boundary-validation failures as path-prefixed human-readable
            messages.
          type: array
          items:
            type: string
        requestId:
          description: Request correlation identifier for support and log lookup.
          type: string
        retryable:
          description: >-
            Server advice about failure transience. `true` means transient,
            `false` means non-transient, and absence gives no advice. Automatic
            replay is allowed only when this field is not `false` and the
            operation-specific retry and idempotency contract permits replay.
          type: boolean
      additionalProperties:
        $ref: '#/components/schemas/PlatformSafeJsonValue'
      description: >-
        Optional structured error details. Reserved transport fields are typed;
        code-specific fields remain forward compatible.
    BoardNote:
      description: >-
        Prose attached to a board task by a member or by the harness: review
        verdicts, blockers, handover details. Notes are appended, never edited,
        so they read as the task's history.
      properties:
        at:
          description: When the note was added.
          format: date-time
          type: string
        by:
          description: >-
            Session id of the author, or "system" for a note the harness wrote
            (for example a released claim).
          type: string
        text:
          description: >-
            The note's text. A reviewer's verdict on a proposal, a blocker, or a
            handover detail.
          type: string
      required:
        - by
        - at
        - text
      type: object
      additionalProperties: false
    BoardOutcome:
      description: >-
        What a done task produced: the owner's summary, its confidence, and the
        artifact paths a reader or reviewer can open.
      properties:
        artifacts:
          description: >-
            Sandbox paths of the outputs the task produced, when the owner named
            them on completion.
          items:
            type: string
          type: array
        confidence:
          description: 'The owner''s confidence in the result: low, medium, or high.'
          type: string
        summary:
          description: What the task produced, written by its owner when marking it done.
          type: string
      required:
        - summary
      type: object
      additionalProperties: false
    PlatformSafeJsonValue:
      description: >-
        A JSON value whose integer members stay within the exact ECMAScript
        safe-integer range at every nesting level.
      oneOf:
        - type: 'null'
        - type: boolean
        - type: string
        - type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        - type: number
          not:
            type: integer
        - type: array
          items:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
        - additionalProperties:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
          type: object
  headers:
    RecursionOrganizationId:
      description: Organization id resolved for this request.
      schema:
        type: string
        minLength: 1
    RecursionTenantId:
      description: Tenant id resolved for this request.
      schema:
        type: string
        minLength: 1
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: A Recursion API key, created in the console under API keys.

````