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

# Get Revision

> Fetch a single audit-trail revision by oId. Returns the before/after entity snapshots plus a recursive field-level diff (added / removed / changed) that descends into nested objects. Arrays are treated as atomic leaves. Pass `diffOnly: true` to omit the full snapshots and return only the diff — useful when the entity is large and you only care about what changed.



## OpenAPI

````yaml get /api/v2/revision/get
openapi: 3.0.0
info:
  version: 1.0.0
  title: Octave API
  description: API for Octave workspace management and AI-powered content generation
servers:
  - url: https://app.octavehq.com
security:
  - ApiKeyAuth: []
paths:
  /api/v2/revision/get:
    get:
      tags:
        - Revisions
      summary: Get Revision
      description: >-
        Fetch a single audit-trail revision by oId. Returns the before/after
        entity snapshots plus a recursive field-level diff (added / removed /
        changed) that descends into nested objects. Arrays are treated as atomic
        leaves. Pass `diffOnly: true` to omit the full snapshots and return only
        the diff — useful when the entity is large and you only care about what
        changed.
      operationId: getRevision
      parameters:
        - schema:
            type: string
            description: >-
              The oId of the revision to fetch (ev_* prefix). Use
              `listRevisions` to discover revision oIds.
          required: true
          name: revisionOId
          in: query
        - schema:
            type: boolean
            nullable: true
            default: false
            description: >-
              If true, return only the field-level diff (added / removed /
              changed) instead of the full before-and-after entity snapshots.
              Defaults to false.
          required: false
          name: diffOnly
          in: query
      responses:
        '200':
          description: The requested revision detail.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      revisionOId:
                        type: string
                      summary:
                        type: string
                        nullable: true
                        description: >-
                          LLM-generated summary of the changes captured by this
                          revision.
                      entityType:
                        type: string
                        enum:
                          - Product
                          - Service
                          - Solution
                          - Persona
                          - UseCase
                          - Reference
                          - Segment
                          - Competitor
                          - Alternative
                          - BuyingTrigger
                          - Objection
                          - ProofPoint
                          - Playbook
                          - ContentAgent
                          - Hypothesis
                          - WorkspaceCompany
                          - WritingStyle
                          - BrandVoice
                          - ChainedAgentWorkflow
                          - SmartExample
                        description: Type of the entity this revision belongs to.
                      entityOId:
                        type: string
                        nullable: true
                        description: >-
                          oId of the entity this revision belongs to. Null in
                          the rare case the stored revision payload doesn't
                          carry one.
                      entityName:
                        type: string
                        nullable: true
                        description: >-
                          Display name of the entity at the time of the
                          revision.
                      createdAt:
                        type: string
                        description: ISO 8601 timestamp when the revision was created.
                      authorName:
                        type: string
                        nullable: true
                        description: >-
                          Display name of the user who authored the revision,
                          when known.
                      newEntity:
                        type: object
                        nullable: true
                        additionalProperties:
                          nullable: true
                        description: >-
                          Full snapshot of the entity captured by this revision.
                          Null when `diffOnly` is true.
                      oldEntity:
                        type: object
                        nullable: true
                        additionalProperties:
                          nullable: true
                        description: >-
                          Snapshot of the entity just before this revision (null
                          for the first revision of an entity). Null when
                          `diffOnly` is true.
                      diff:
                        allOf:
                          - $ref: '#/components/schemas/EntityRevisionDiff'
                          - description: >-
                              Recursive field-level diff between oldEntity and
                              newEntity. Always returned, even when `diffOnly`
                              is false.
                    required:
                      - revisionOId
                      - summary
                      - entityType
                      - entityOId
                      - entityName
                      - createdAt
                      - authorName
                      - newEntity
                      - oldEntity
                      - diff
                required:
                  - data
components:
  schemas:
    EntityRevisionDiff:
      type: object
      properties:
        added:
          type: object
          additionalProperties:
            nullable: true
          description: Fields present in the new entity but not the previous one.
        removed:
          type: object
          additionalProperties:
            nullable: true
          description: Fields present in the previous entity but not the new one.
        changed:
          type: object
          additionalProperties:
            type: object
            properties:
              from:
                nullable: true
              to:
                nullable: true
              nested:
                type: object
                additionalProperties:
                  nullable: true
                description: >-
                  Present when the changed field is itself an object: a nested
                  EntityRevisionDiff with the same {added, removed, changed}
                  shape.
          description: >-
            Fields whose value changed. Leaf changes are `{from, to}`; nested
            object changes carry a `{nested}` sub-diff.
      required:
        - added
        - removed
        - changed
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key

````