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

# Generate Signed URL

> Generates a secure, time-limited pre-signed URL for an asset stored in the SubVerse private S3 bucket, such as call recordings or session attachments. You must provide either 'callId' or 'callRecordingUrl' in the query parameters.



## OpenAPI

````yaml GET /call/signed-recording-url
openapi: 3.0.0
info:
  title: SubVerse API reference
  description: Detailed guide on how to use the SubVerse APIs
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api-v2.subverseai.com/api
security:
  - ApiKeyAuth: []
paths:
  /call/signed-recording-url:
    get:
      tags:
        - Call
      summary: Generate a secure, time-limited signed URL for a SubVerse private asset
      description: >-
        Generates a secure, time-limited pre-signed URL for an asset stored in
        the SubVerse private S3 bucket, such as call recordings or session
        attachments. You must provide either 'callId' or 'callRecordingUrl' in
        the query parameters.
      operationId: getSignedRecordingUrl
      parameters:
        - name: callId
          in: query
          description: Unique identifier for the call.
          required: false
          schema:
            type: string
            example: '12345'
        - name: callRecordingUrl
          in: query
          description: >-
            A direct S3/Storage URL to a SubVerse private asset (e.g., a call
            recording, session attachment, etc.).
          required: false
          schema:
            type: string
            example: https://s3.amazonaws.com/bucket/recording.mp3
      responses:
        '200':
          description: Returns error or success Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
              examples:
                success:
                  summary: 200 - Success response
                  value:
                    responseCode: 200
                    message: Signed url generated successfully!
                    data:
                      url: https://example.com/recording.mp3?token=...
                apiMissing:
                  summary: 401 - Unauthorized (API key is missing).
                  value:
                    responseCode: 401
                    message: API key missing!
                    data: null
                callIdRequiredError:
                  summary: 400 - Validation error (Missing required parameters).
                  value:
                    responseCode: 400
                    message: >-
                      Validation error: Either callId or callRecordingUrl is
                      required
                    data: null
                callNotFound:
                  summary: 404 - Call record not found.
                  value:
                    responseCode: 404
                    message: No call record found, Please contact administrator.
                    data: null
                internalServerError:
                  summary: 500 - Internal server error
                  value:
                    responseCode: 500
                    message: Internal server error!
                    data: null
      security:
        - ApiKeyAuth: []
components:
  schemas:
    ApiResponse:
      type: object
      required:
        - responseCode
        - message
      properties:
        responseCode:
          type: integer
          description: >-
            Always returns 200 value, with error or success response details in
            message.
        message:
          type: string
          description: Success or error message with description.
        data:
          nullable: true
          description: Additional details if available.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Authentication header containing API key from SubVerse dashboard.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.