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

# Get Agent Session Recording

> Return time-limited download URLs for the session's audio recording, one
per speaker track (agent and user are recorded separately).



## OpenAPI

````yaml get /v1/agent/sessions/{session_id}/recording
openapi: 3.1.0
info:
  title: FishAudio OpenAPI
  version: '1'
servers:
  - description: Fish Audio API
    url: https://api.fish.audio
security: []
tags: []
paths:
  /v1/agent/sessions/{session_id}/recording:
    get:
      tags:
        - Agent Sessions
      summary: Get Agent Session Recording
      description: |-
        Return time-limited download URLs for the session's audio recording, one
        per speaker track (agent and user are recorded separately).
      parameters:
        - in: path
          name: session_id
          description: ''
          required: true
          schema:
            title: Session Id
            type: string
          deprecated: false
      responses:
        '200':
          description: Request fulfilled, document follows
          headers: {}
          content:
            application/json:
              schema:
                properties:
                  session_id:
                    title: Session Id
                    type: string
                  status:
                    enum:
                      - processing
                      - complete
                      - failed
                    title: Status
                    type: string
                  tracks:
                    items:
                      $ref: '#/components/schemas/AgentSessionRecordingTrackEntity'
                    title: Tracks
                    type: array
                  error:
                    anyOf:
                      - type: string
                      - type: 'null'
                    default: null
                    title: Error
                  error_code:
                    anyOf:
                      - type: string
                      - type: 'null'
                    default: null
                    title: Error Code
                  error_message:
                    anyOf:
                      - type: string
                      - type: 'null'
                    default: null
                    title: Error Message
                required:
                  - session_id
                  - status
                  - tracks
                type: object
        '401':
          description: No permission -- see authorization schemes
          headers: {}
          content:
            application/json:
              schema:
                properties:
                  status:
                    title: Status
                    type: integer
                  message:
                    title: Message
                    type: string
                required:
                  - status
                  - message
                type: object
        '404':
          description: Nothing matches the given URI
          headers: {}
          content:
            application/json:
              schema:
                properties:
                  status:
                    title: Status
                    type: integer
                  message:
                    title: Message
                    type: string
                required:
                  - status
                  - message
                type: object
        '502':
          description: Invalid responses from another server/proxy
          headers: {}
          content:
            application/json:
              schema:
                properties:
                  status:
                    title: Status
                    type: integer
                  message:
                    title: Message
                    type: string
                required:
                  - status
                  - message
                type: object
      security:
        - BearerAuth: []
components:
  schemas:
    AgentSessionRecordingTrackEntity:
      properties:
        role:
          enum:
            - agent
            - user
            - human
          title: Role
          type: string
        status:
          enum:
            - requested
            - active
            - complete
            - failed
          title: Status
          type: string
        url:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Url
        expires_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          default: null
          title: Expires At
        duration_ms:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Duration Ms
        started_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          default: null
          title: Started At
        ended_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          default: null
          title: Ended At
        error:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Error
        error_code:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Error Code
      required:
        - role
        - status
      title: AgentSessionRecordingTrackEntity
      type: object
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````