> ## 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.compliance.export.downloadUrl

> Returns a temporary pre-signed download URL for a completed export. The URL expires after 15 minutes — call this endpoint again to mint a new one. Only callable when the export's status is `COMPLIANCE_EXPORT_STATUS_COMPLETED`.

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

<Tip>
  **Auth:** Requires a **SIEM** enterprise API key (`X-API-Key`).

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

  **Status requirement:** The export must be `COMPLIANCE_EXPORT_STATUS_COMPLETED`. Other statuses return `failed_precondition`.

  **Archive:** A ZIP containing a single `events.ndjson` file (one JSON event per line). See [Record format](/enterprise/v2/siem-record-format).

  **Protocols:** Also callable via Connect RPC. See [Protocols](/enterprise/v2/protocols).
</Tip>


## OpenAPI

````yaml GET /v2/enterprise.compliance.export.downloadUrl
openapi: 3.1.0
info:
  title: Manus Enterprise SIEM Integrations OpenAPI v2
  description: >-
    API for enterprise administrators to export audit events (agent chat, tool
    calls, and results) for compliance and SIEM workflows. Exports run
    asynchronously and produce a ZIP archive of newline-delimited JSON (NDJSON).
    All responses are wrapped with `{"ok": true, "request_id": "...", ...}` for
    success and `{"ok": false, "request_id": "...", "error": {"code": "...",
    "message": "..."}}` for errors. Every operation is callable via REST (paths
    below) or via Connect RPC at
    `/observability.v2.EnterpriseComplianceV2Service/<Method>`.
  version: 2.0.0
servers:
  - url: https://api.manus.im
security:
  - ApiKeyAuth: []
paths:
  /v2/enterprise.compliance.export.downloadUrl:
    get:
      summary: GetDownloadURL
      description: >-
        Returns a temporary pre-signed download URL for a completed export. The
        URL expires after 15 minutes — call this endpoint again to mint a new
        one. Only callable when the export's status is
        `COMPLIANCE_EXPORT_STATUS_COMPLETED`.
      operationId: observability.v2.EnterpriseComplianceV2Service.GetDownloadURL
      parameters:
        - name: uid
          in: query
          required: true
          schema:
            type: string
            example: 5YX76pz7Dga3yztNVw97Dh
          description: >-
            Export task UID. The export must have status
            `COMPLIANCE_EXPORT_STATUS_COMPLETED`.
      responses:
        '200':
          description: Download URL minted successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                    description: Whether the request was successful.
                  request_id:
                    type: string
                    description: Unique identifier for this API request.
                  download_url:
                    type: string
                    description: >-
                      Pre-signed URL for downloading the export archive (a ZIP
                      containing NDJSON).
                  expires_at:
                    type: string
                    format: date-time
                    description: URL expiration time (RFC3339), 15 minutes after issuance.
        4XX:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ErrorResponse:
      type: object
      description: Standard error response format returned when a request fails.
      properties:
        ok:
          type: boolean
          example: false
          description: Always false for error responses.
        request_id:
          type: string
          description: >-
            Unique identifier for this API request, useful for debugging with
            support.
        error:
          type: object
          description: Error details.
          properties:
            code:
              type: string
              description: >-
                Machine-readable error code: `invalid_argument`,
                `unauthenticated`, `not_found`, `failed_precondition` (an export
                is already in progress, or the export is not yet complete), or
                `internal`.
            message:
              type: string
              description: Human-readable error description explaining what went wrong.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````