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

# enterprise.export.downloadUrl

> Returns a temporary pre-signed URL for downloading a completed export. The URL expires after 10 minutes — call this endpoint again to mint a new one.

<sup>Questions or issues? Contact us at [api-support@manus.ai](mailto:api-support@manus.ai).</sup>

<Tip>
  **URL validity:** The returned `download_url` expires after **10 minutes**. Call this endpoint again to mint a fresh URL — it does not consume any quota.

  **Status requirement:** The export must be `EXPORT_STATUS_COMPLETED`. Other statuses return `FAILED_PRECONDITION`.

  **File retention:** Files are purged 30 days after the export completes.
</Tip>


## OpenAPI

````yaml POST /dataexport.v1.EnterpriseDataExportService/GetDownloadURL
openapi: 3.1.0
info:
  title: Manus Enterprise Data Export OpenAPI v1
  description: >-
    gRPC-style API for exporting enterprise user data. All endpoints are POSTs
    to `/dataexport.v1.EnterpriseDataExportService/<Method>` and return raw JSON
    with an inline `request_id`. See also [v2](/enterprise/v2/introduction),
    which provides the same operations over REST URLs with a unified response
    envelope.
  version: 1.0.0
servers:
  - url: https://api.manus.im
security:
  - ApiKeyAuth: []
paths:
  /dataexport.v1.EnterpriseDataExportService/GetDownloadURL:
    post:
      summary: GetDownloadURL
      description: >-
        Returns a temporary pre-signed URL for downloading a completed export.
        The URL expires after 10 minutes — call this endpoint again to mint a
        new one.
      operationId: dataexport.v1.EnterpriseDataExportService.GetDownloadURL
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                uid:
                  type: string
                  description: Export task UID. Status must be `EXPORT_STATUS_COMPLETED`.
                  example: 5YX76pz7Dga3yztNVw97Dh
              required:
                - uid
      responses:
        '200':
          description: Download URL minted successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  download_url:
                    type: string
                    description: Pre-signed S3 URL for downloading the export archive.
                  expires_at:
                    type: string
                    format: date-time
                    description: URL expiration time. Typically 10 minutes after issuance.
                  request_id:
                    type: string
                    description: Request ID for tracing and auditing.
        4XX:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ErrorResponse:
      type: object
      description: Standard gRPC-style error response.
      properties:
        code:
          type: string
          description: >-
            Error code: `INVALID_ARGUMENT`, `NOT_FOUND`, `PERMISSION_DENIED`,
            `FAILED_PRECONDITION`, or `INTERNAL`.
        message:
          type: string
          description: Human-readable error description.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````