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

# Read a launch with its jobs, runs, receipts, and spend

> The state of one launch: which targets dispatched, the runs they produced,
the reservation receipts backing them, spend reserved and settled so far,
and any decision currently blocking the initiative.

### Scope
A launch id outside your workspace is reported exactly like an id that was
never issued.



## OpenAPI

````yaml /openapi/v1.yaml get /launches/{launchId}
openapi: 3.1.0
info:
  title: OrgX REST API v1
  version: '1'
  description: >-
    Build accountable work into your product with OrgX REST API v1.


    Create work with one field, attach evidence when it is complete, and keep
    the receipt. Every authenticated request is scoped to the workspace resolved
    from your credential.


    Start with `POST /work`. Human guide:
    https://docs.useorgx.com/docs/api/quickstart
  contact:
    name: OrgX Support
    url: https://useorgx.com/support
    email: support@useorgx.com
  license:
    name: Proprietary
    url: https://useorgx.com/terms
servers:
  - url: https://useorgx.com/api/v1
    description: Production
security: []
tags:
  - name: Work
    description: Create accountable work and complete it with evidence
  - name: Initiatives
    description: Organize related work around an outcome
  - name: Operating processes
    description: Evidence-backed company workflow/process lifecycle
  - name: Operating map
    description: Derived, rebuildable Operating Map projection over the process ledger
  - name: Discovery runs
    description: Wizard and deep-search workflow discovery over connected company sources
  - name: Handoffs
    description: Ledger-backed stage handoffs between operating-process stages
  - name: Events
    description: Replayable, workspace-scoped accepted ledger events
  - name: Projections
    description: Workspace-scoped, rebuildable read projections over OrgX sources
  - name: Episodes
    description: Mission-compatible Episode read adapters
  - name: Receipt validation
    description: Account-free Agent Work Receipt schema discovery and conformance
  - name: Receipt import
    description: Authenticated, workspace-scoped import into the hosted receipt ledger
  - name: Workload diagnosis
    description: >-
      Account-free evaluation of time, agents, systems, authority, and
      accountability boundaries
  - name: Content Studio
    description: >-
      Estimate, showcase, checkout, and payment event operations for Content
      Studio
  - name: Decisions
    description: Raise decisions for human ruling and read their state
  - name: Artifacts
    description: Register produced work against the entity it belongs to
  - name: Launches
    description: Preview and run an initiative launch through its spend gates
  - name: Runs
    description: Control agent runs with pause, resume, cancel, and rollback
  - name: Lifecycle
    description: Pause, resume, retry, or cancel work hierarchy nodes and runs
  - name: Deduplication
    description: Claim durable event fingerprints so duplicate triggers fire once
  - name: Credential
    description: >-
      Resolve the calling credential, the workspaces it reaches, and what it may
      do
  - name: API discovery
    description: Account-free error codes, request schemas, and closed vocabularies for v1
externalDocs:
  description: Human-readable OrgX REST API v1 reference
  url: https://docs.useorgx.com/docs/api/public-api
paths:
  /launches/{launchId}:
    get:
      tags:
        - Launches
      summary: Read a launch with its jobs, runs, receipts, and spend
      description: >-
        The state of one launch: which targets dispatched, the runs they
        produced,

        the reservation receipts backing them, spend reserved and settled so
        far,

        and any decision currently blocking the initiative.


        ### Scope

        A launch id outside your workspace is reported exactly like an id that
        was

        never issued.
      operationId: getLaunch
      parameters:
        - name: launchId
          in: path
          required: true
          description: Launch to read
          schema:
            type: string
            format: uuid
        - $ref: '#/components/parameters/WorkspaceIdQuery'
      responses:
        '200':
          description: The launch projection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LaunchDetailResponse'
              example:
                data:
                  launch_id: 1d2c3b4a-5e6f-4a7b-8c9d-0e1f2a3b4c5d
                  initiative_id: 4b014796-6b1e-4a4f-9a35-2b6a4d1c8a10
                  state: dispatched
                  aggregate_version: 2
                  created_at: '2026-08-19T21:00:00.000Z'
                  model_tier: balanced
                  effective_autonomy: gated
                  scope:
                    workstream_id: 9c1f2e77-3c58-4a1e-9d0b-6a2f8e4b1c33
                    task_id: null
                  cost:
                    server_estimate_cents: 500
                    cost_ceiling_cents: 1000
                    reserved_cents: 500
                    settled_cents: 0
                  jobs:
                    - workstream_id: 9c1f2e77-3c58-4a1e-9d0b-6a2f8e4b1c33
                      job_id: 3f4e5d6c-7b8a-4901-a2b3-c4d5e6f70819
                      status: running
                      block_code: null
                  runs:
                    - id: 5a4b3c2d-1e0f-4a9b-8c7d-6e5f4a3b2c1d
                      status: running
                      outcome_kind: null
                      cost_cents: 12
                  receipts:
                    - id: 8c7b6a59-4d3e-4f21-a0b9-c8d7e6f5a4b3
                      cost_estimate_cents: 500
                      settlement_status: reserved
                  blocking_decision: null
                meta:
                  apiVersion: '1'
                  workspaceId: 5be1076d-8fd0-4c0f-847f-fd67fdb935e8
                  projectionStatus: live_rows
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      security:
        - bearerAuth: []
        - cookieAuth: []
components:
  parameters:
    WorkspaceIdQuery:
      name: workspace_id
      in: query
      required: true
      schema:
        type: string
        format: uuid
  schemas:
    LaunchDetailResponse:
      type: object
      required:
        - data
        - meta
      properties:
        data:
          $ref: '#/components/schemas/LaunchDetail'
        meta:
          type: object
          properties:
            apiVersion:
              type: string
            workspaceId:
              type: string
              format: uuid
            projectionStatus:
              type: string
    LaunchDetail:
      type: object
      properties:
        launch_id:
          type: string
          format: uuid
        initiative_id:
          type: string
          format: uuid
          nullable: true
        state:
          type: string
          enum:
            - proposed
            - dispatched
            - failed
            - cancelled
        aggregate_version:
          type: integer
        created_at:
          type: string
          format: date-time
          nullable: true
        model_tier:
          type: string
          nullable: true
        effective_autonomy:
          type: string
          nullable: true
        scope:
          $ref: '#/components/schemas/LaunchScope'
        cost:
          type: object
          properties:
            server_estimate_cents:
              type: integer
              nullable: true
            cost_ceiling_cents:
              type: integer
              nullable: true
            reserved_cents:
              type: integer
            settled_cents:
              type: integer
        jobs:
          type: array
          items:
            $ref: '#/components/schemas/LaunchJob'
        runs:
          type: array
          description: >-
            An explicit allowlist. Dispatch capabilities held on the run row are
            never projected.
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              status:
                type: string
                nullable: true
              outcome_kind:
                type: string
                nullable: true
              cost_cents:
                type: integer
                nullable: true
        receipts:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              cost_estimate_cents:
                type: integer
                nullable: true
              settlement_status:
                type: string
                nullable: true
        blocking_decision:
          type: object
          nullable: true
          properties:
            id:
              type: string
              format: uuid
            title:
              type: string
              nullable: true
            decision_type:
              type: string
              nullable: true
            status:
              type: string
              nullable: true
    ApiError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
            details:
              type: object
            requestId:
              type: string
            timestamp:
              type: string
              format: date-time
            docsUrl:
              type: string
              format: uri
            retryAfter:
              type: integer
              description: Seconds until rate limit resets
    LaunchScope:
      type: object
      description: >-
        Narrows the launch. Every id is checked against your workspace and the
        named initiative first.
      properties:
        workstream_id:
          type: string
          format: uuid
          nullable: true
        task_id:
          type: string
          format: uuid
          nullable: true
    LaunchJob:
      type: object
      properties:
        workstream_id:
          type: string
          format: uuid
          nullable: true
        job_id:
          type: string
          format: uuid
          nullable: true
        status:
          type: string
          nullable: true
        block_code:
          type: string
          nullable: true
  responses:
    BadRequest:
      description: Request validation failed
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    NotFound:
      description: Resource is unavailable to the caller
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    ServiceUnavailable:
      description: Ledger or workspace authorization is unavailable
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'OrgX API key, sent as `Authorization: Bearer oxk_...`'
    cookieAuth:
      type: apiKey
      in: cookie
      name: __session
      description: Session cookie from web authentication

````