> ## 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.

# Update a motion playbook

> Update name, active state, or narrative sections of a motion playbook



## OpenAPI

````yaml post /api/v2/motion-playbook/update
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/motion-playbook/update:
    post:
      tags:
        - MotionPlaybook
      summary: Update a motion playbook
      description: Update name, active state, or narrative sections of a motion playbook
      operationId: updateMotionPlaybook
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                oId:
                  type: string
                  description: Motion playbook oId to update
                name:
                  type: string
                  minLength: 1
                  description: New playbook name
                active:
                  type: boolean
                  description: Set active state
                motionFraming:
                  type: string
                  nullable: true
                  description: Updated motion framing narrative
                keyMessaging:
                  type: array
                  items:
                    type: string
                  description: Updated key messaging points
                keyPositioning:
                  type: array
                  items:
                    type: string
                  description: Updated key positioning points
              required:
                - oId
      responses:
        '200':
          description: Updated motion playbook
          content:
            application/json:
              schema:
                type: object
                properties:
                  _metadata:
                    $ref: '#/components/schemas/Metadata'
                  data:
                    $ref: '#/components/schemas/MotionPlaybook'
                required:
                  - _metadata
                  - data
      deprecated: false
components:
  schemas:
    Metadata:
      type: object
      properties:
        usage:
          type: number
          default: 0
          description: API usage
          example: 0
        requestId:
          type: string
          description: Request ID
          example: requestId
        message:
          type: string
          description: Message
          example: message
        timestamp:
          type: string
          description: Timestamp
          example: '2021-01-01T00:00:00.000Z'
      required:
        - requestId
        - timestamp
    MotionPlaybook:
      type: object
      properties:
        oId:
          type: string
          description: Motion playbook oId
        motionOId:
          type: string
          description: Parent motion oId
        name:
          type: string
          nullable: true
          description: Playbook name
        narrativeType:
          type: string
          nullable: true
          enum:
            - DEFAULT
            - THEMATIC
            - MILESTONE
            - ACCOUNT
            - COMPETITIVE
        narrativeInput:
          type: string
          nullable: true
        competitorOIds:
          type: array
          nullable: true
          items:
            type: string
        accountDomain:
          type: string
          nullable: true
        buyingTriggerOId:
          type: string
          nullable: true
        motionFraming:
          type: string
          nullable: true
        keyMessaging:
          type: array
          nullable: true
          items:
            type: string
        keyPositioning:
          type: array
          nullable: true
          items:
            type: string
        scope:
          type: object
          nullable: true
          properties:
            icpScopeMode:
              type: string
              enum:
                - AUTO
                - MANUAL
            allSegments:
              type: boolean
            segmentOIds:
              type: array
              items:
                type: string
            allPersonas:
              type: boolean
            personaOIds:
              type: array
              items:
                type: string
          required:
            - icpScopeMode
            - allSegments
            - segmentOIds
            - allPersonas
            - personaOIds
        anchorOverrides:
          type: object
          nullable: true
          properties:
            useCases:
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - AUTO
                    - MANUAL
                    - 'OFF'
                oIds:
                  type: array
                  items:
                    type: string
              required:
                - mode
                - oIds
            references:
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - AUTO
                    - MANUAL
                    - 'OFF'
                oIds:
                  type: array
                  items:
                    type: string
              required:
                - mode
                - oIds
            proofPoints:
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - AUTO
                    - MANUAL
                    - 'OFF'
                oIds:
                  type: array
                  items:
                    type: string
              required:
                - mode
                - oIds
            alternatives:
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - AUTO
                    - MANUAL
                    - 'OFF'
                oIds:
                  type: array
                  items:
                    type: string
              default:
                mode: AUTO
                oIds: []
              required:
                - mode
                - oIds
            buyingTriggers:
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - AUTO
                    - MANUAL
                    - 'OFF'
                oIds:
                  type: array
                  items:
                    type: string
              default:
                mode: AUTO
                oIds: []
              required:
                - mode
                - oIds
            objections:
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - AUTO
                    - MANUAL
                    - 'OFF'
                oIds:
                  type: array
                  items:
                    type: string
              default:
                mode: AUTO
                oIds: []
              required:
                - mode
                - oIds
          required:
            - useCases
            - references
            - proofPoints
        additionalContext:
          type: string
          nullable: true
        additionalContextSources:
          type: array
          nullable: true
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - TEXT
                  - URL
                  - GOOGLE_DRIVE_FILE_ID
                  - GENERATIVE_NAME
                  - OID
                  - COMPANY_NAME
                  - FIELDWISE_DOCUMENT_ID
                  - RAG_DOCUMENT_ID
                  - RESOURCE
                  - REPORT
                  - REPORT_SECTION
                  - EVENT_OID_FINDINGS
                  - FINDING_OIDS
              value:
                type: string
              name:
                type: string
                nullable: true
              details:
                type: string
                nullable: true
              useNameIfUrlFails:
                type: boolean
                nullable: true
            required:
              - type
              - value
        brandVoiceOId:
          type: string
          nullable: true
        active:
          type: boolean
          description: Whether the playbook is active
        lastNarrativeGeneratedAt:
          type: string
          nullable: true
        createdAt:
          type: string
          nullable: true
          description: Creation date
        updatedAt:
          type: string
          nullable: true
          description: Updated date
      required:
        - oId
        - motionOId
        - name
        - narrativeType
        - narrativeInput
        - competitorOIds
        - accountDomain
        - buyingTriggerOId
        - motionFraming
        - keyMessaging
        - keyPositioning
        - scope
        - anchorOverrides
        - additionalContext
        - additionalContextSources
        - brandVoiceOId
        - active
        - lastNarrativeGeneratedAt
        - createdAt
        - updatedAt
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key

````