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

# Download recording

> Retrieves a temporary download link for a specific meeting recording

<Note>
  This feature is available starting with the Pro plan.
</Note>

<Note>
  The download link is valid for up to 4 hours from the time of generation.
  Within that 4-hour window, repeated requests for the same recording will return the same download link.
</Note>

<Info>
  A maximum of 5 simultaneous downloads is allowed per meeting id. Additional requests will be denied until active downloads complete.
</Info>

<Warning>
  Please only share the download link only with people or automations you trust, as anyone possessing the link will be able to download the meeting recording.
</Warning>


## OpenAPI

````yaml POST /v1/meetings/{meetingId}/download
openapi: 3.0.0
info:
  description: This is a sample server celler server.
  title: MeetGeek API
  termsOfService: http://swagger.io/terms/
  contact:
    name: API Support
    url: http://www.swagger.io/support
    email: support@swagger.io
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: '1.0'
servers:
  - url: https://api.meetgeek.ai
  - url: https://api-eu.meetgeek.ai
  - url: https://api-us.meetgeek.ai
security:
  - Bearer: []
externalDocs:
  description: OpenAPI
  url: https://swagger.io/resources/open-api/
paths:
  /v1/meetings/{meetingId}/download:
    post:
      tags:
        - download
      summary: Generates a temporary link to download the recording
      description: Retrieves a temporary download link for a specific meeting recording
      parameters:
        - description: Meeting ID
          name: meetingId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_models.DownloadResponse
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.BadRequestError
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.UnauthorizedError
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.AccessDeniedError
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.MeetingNotFoundError
        '410':
          description: Gone
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.GoneError
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.QuotaLimitReachedError
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_meetgeekai_api_internal_errors.InternalServerError
      security:
        - Bearer: []
components:
  schemas:
    github_com_meetgeekai_api_internal_models.DownloadResponse:
      type: object
      properties:
        download_link:
          type: string
          description: >-
            A publicly accessible URL that includes a secure token. Accessing
            this link will immediately initiate the file download.
          example: >-
            https://media.meetgeek.ai/api/download?token=jQzYmM1NTAtM2NmMi00MmNhLW
        expires_in:
          type: integer
          description: >-
            The number of seconds remaining until the download link expires and
            becomes invalid.
          example: 14400
    github_com_meetgeekai_api_internal_errors.BadRequestError:
      type: object
      properties:
        message:
          type: string
          example: bad request
        reason:
          type: string
          example: missing api key
    github_com_meetgeekai_api_internal_errors.UnauthorizedError:
      type: object
      properties:
        message:
          type: string
          example: unauthorized
    github_com_meetgeekai_api_internal_errors.AccessDeniedError:
      type: object
      properties:
        message:
          type: string
          example: you do not have access to view this meeting
    github_com_meetgeekai_api_internal_errors.MeetingNotFoundError:
      type: object
      properties:
        message:
          type: string
          example: meeting not found
    github_com_meetgeekai_api_internal_errors.GoneError:
      type: object
      properties:
        message:
          type: string
          example: target resource is no longer available
    github_com_meetgeekai_api_internal_errors.QuotaLimitReachedError:
      type: object
      properties:
        message:
          type: string
          example: quota limit reached
        unit:
          type: string
          example: day
    github_com_meetgeekai_api_internal_errors.InternalServerError:
      type: object
      properties:
        message:
          type: string
          example: internal server error
  securitySchemes:
    Bearer:
      description: Type "Bearer" followed by a space and a token
      type: apiKey
      name: Authorization
      in: header

````