---
title: "Get Workflow Play Code Revision"
method: GET
path: "/api/plays/{play_id}/code-revisions/{code_revision_id}"
tags: ["plays"]
---

# Get Workflow Play Code Revision

`GET /api/plays/{play_id}/code-revisions/{code_revision_id}`

## Request

- Base URL: `https://platform.verbiflow.com/api/bridge`
- URL: `https://platform.verbiflow.com/api/bridge/api/plays/{play_id}/code-revisions/{code_revision_id}`
- Auth: one of:
  - HTTP bearer and API key in header `x-flage-org-id`
  - HTTP bearer and API key in header `x-flage-org-slug`

## Path parameters

- `play_id` string, required
- `code_revision_id` string, required

## Response `200`

Successful Response

- union
  - WorkflowPlayPromptRevisionResponse: An immutable Agent Play prompt revision has no downloadable code archive.
    - `archive_sha256` unknown, required
    - `code_revision_id` string, required: Immutable code revision id.
    - `content_length` unknown, required
    - `created_at` string, required: ISO 8601 revision creation time.
    - `executor_kind` 'prompt', required: Agent Play prompt executor.
    - `manifest` WorkflowPlayCodeManifest, required: Known immutable code-manifest envelope plus version-specific extension fields.
      - `archive_sha256` string, nullable: SHA-256 of the immutable source archive.
      - `budget` WorkflowPlayCodeBudget: Known workflow-code budget fields with additional JSON metadata retained.
        - `maximum_branches` integer, nullable: Maximum delegated child branches per occurrence.
        - `maximum_tokens` integer, nullable: Total model-token ceiling when one is declared.
        - `timeout_seconds` integer, nullable: Maximum occurrence wall-clock lifetime in seconds.
      - `capability_ceiling` AgentCapabilityCeiling: Exact hosted SDK capabilities admitted by an immutable Agent Play revision.
        - `capabilities` string[]: Canonical hosted SDK capability ids required by the Play. The backend sorts the list and rejects duplicates or unavailable capabilities.
      - `definition_path` string, nullable: Archive-relative workflow definition module.
      - `entrypoint` string, nullable: Archive-relative executable entrypoint.
      - `execution_contract` 'verbiflow.sdk_play.v1', nullable: Hosted execution contract; required by current v3 code bundles.
      - `file_count` integer, nullable: Number of files in the archive.
      - `paths` string[], nullable: Sorted archive-relative file paths.
      - `report_path` string, nullable: Archive-relative report renderer when one is declared.
      - `schema` 'verbiflow.workflow_play_code.v1' | 'verbiflow.workflow_play_code.v2' | 'verbiflow.workflow_play_code.v3', nullable: Code-bundle schema version; absent on the oldest retained revisions.
      - `sdk_version` string, nullable: Python SDK version locked into this revision.
      - `source_hash` string, nullable: Digest of the normalized source inputs.
      - `state_policy` WorkflowPlayCodeStatePolicy: Known workflow-code state policy fields with additional JSON metadata retained.
        - `input_key` string, nullable: Dotted occurrence-input field used by partition mode.
        - `mode` 'play' | 'none' | 'trigger' | 'partition', nullable: Declared state partition strategy when recorded.
      - `synced_at` string, nullable: ISO 8601 publication time.
      - `uncompressed_size_bytes` integer, nullable: Total uncompressed archive size.
      - `workflow_name` string, nullable: Human-readable local workflow name at publication time.
      - `workflow_slug` string, nullable: Workflow slug attached during publication.
    - `play_id` string, required: Canonical Play id.
    - `schedule_health` WorkflowPlayCodeScheduleHealth[]: Schedules affected by this revision and their current health.
      - `authority_grant_version` integer, required: Monotonic authority version currently fencing the schedule.
      - `authority_status` 'unconfigured' | 'active' | 'needs_reauthorization' | 'revoked', required: Current durable execution-authority state.
      - `changed_at` string, nullable, required: ISO 8601 time when the health classification last changed.
      - `health_status` 'healthy' | 'needs_reauthorization' | 'needs_sync' | 'paused_authority' | 'paused_deterministic' | 'paused_transient' | 'paused_unknown_effect', required: Current operator health classification.
      - `reason` string, nullable, required: Sanitized health explanation, or null when healthy.
      - `schedule_id` string, required: Canonical schedule id affected by this revision.
      - `schedule_slug` string, required: Stable human-readable schedule key.
    - `source_hash` unknown, required
    - `workflow_slug` string, required: Stable workflow slug stored with this revision.
  - WorkflowPlaySourceRevisionResponse: Workflow source metadata; older revisions may lack an archive digest.
    - `archive_sha256` string, nullable, required: Archive SHA-256, or null when legacy metadata is absent.
    - `code_revision_id` string, required: Immutable code revision id.
    - `content_length` integer, nullable, required: Archive byte length, or null when legacy metadata is absent.
    - `created_at` string, required: ISO 8601 revision creation time.
    - `executor_kind` 'workflow', required: Workflow Play source executor.
    - `manifest` WorkflowPlayCodeManifest, required: Known immutable code-manifest envelope plus version-specific extension fields.
      - `archive_sha256` string, nullable: SHA-256 of the immutable source archive.
      - `budget` WorkflowPlayCodeBudget: Known workflow-code budget fields with additional JSON metadata retained.
        - `maximum_branches` integer, nullable: Maximum delegated child branches per occurrence.
        - `maximum_tokens` integer, nullable: Total model-token ceiling when one is declared.
        - `timeout_seconds` integer, nullable: Maximum occurrence wall-clock lifetime in seconds.
      - `capability_ceiling` AgentCapabilityCeiling: Exact hosted SDK capabilities admitted by an immutable Agent Play revision.
        - `capabilities` string[]: Canonical hosted SDK capability ids required by the Play. The backend sorts the list and rejects duplicates or unavailable capabilities.
      - `definition_path` string, nullable: Archive-relative workflow definition module.
      - `entrypoint` string, nullable: Archive-relative executable entrypoint.
      - `execution_contract` 'verbiflow.sdk_play.v1', nullable: Hosted execution contract; required by current v3 code bundles.
      - `file_count` integer, nullable: Number of files in the archive.
      - `paths` string[], nullable: Sorted archive-relative file paths.
      - `report_path` string, nullable: Archive-relative report renderer when one is declared.
      - `schema` 'verbiflow.workflow_play_code.v1' | 'verbiflow.workflow_play_code.v2' | 'verbiflow.workflow_play_code.v3', nullable: Code-bundle schema version; absent on the oldest retained revisions.
      - `sdk_version` string, nullable: Python SDK version locked into this revision.
      - `source_hash` string, nullable: Digest of the normalized source inputs.
      - `state_policy` WorkflowPlayCodeStatePolicy: Known workflow-code state policy fields with additional JSON metadata retained.
        - `input_key` string, nullable: Dotted occurrence-input field used by partition mode.
        - `mode` 'play' | 'none' | 'trigger' | 'partition', nullable: Declared state partition strategy when recorded.
      - `synced_at` string, nullable: ISO 8601 publication time.
      - `uncompressed_size_bytes` integer, nullable: Total uncompressed archive size.
      - `workflow_name` string, nullable: Human-readable local workflow name at publication time.
      - `workflow_slug` string, nullable: Workflow slug attached during publication.
    - `play_id` string, required: Canonical Play id.
    - `schedule_health` WorkflowPlayCodeScheduleHealth[]: Schedules affected by this revision and their current health.
      - `authority_grant_version` integer, required: Monotonic authority version currently fencing the schedule.
      - `authority_status` 'unconfigured' | 'active' | 'needs_reauthorization' | 'revoked', required: Current durable execution-authority state.
      - `changed_at` string, nullable, required: ISO 8601 time when the health classification last changed.
      - `health_status` 'healthy' | 'needs_reauthorization' | 'needs_sync' | 'paused_authority' | 'paused_deterministic' | 'paused_transient' | 'paused_unknown_effect', required: Current operator health classification.
      - `reason` string, nullable, required: Sanitized health explanation, or null when healthy.
      - `schedule_id` string, required: Canonical schedule id affected by this revision.
      - `schedule_slug` string, required: Stable human-readable schedule key.
    - `source_hash` string, nullable, required: Source identity digest, or null for legacy revisions.
    - `workflow_slug` string, required: Stable workflow slug stored with this revision.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract.md) - [All operations](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract/llms.txt) - [OpenAPI document](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract/revisions/c80e903ef8f3?raw)
