# Download report

Returns a 303 redirect to a short-lived download URL.

Endpoint: POST /reports/download
Version: 2.0.0
Security: bearerAuth

## Security:

  - `bearerAuth` (unknown)
    http bearer asec_xxx

## Request fields (application/json):

  - `id` (string, required)
    Unique report identifier.
    Example: rprt_01K8F3ZQ8X9YBCDEFGHJKMNPQR

## Response 303:

  - `303` (unknown)
    Redirects to a short-lived pre-signed URL for the report file

## Response 303 headers:

  - `Location` (string, required)
    Short-lived pre-signed URL for downloading the report file.
    Example: https://storage.example.com/reports/report.csv?signature=abc123

## Response 400:

  - `400` (unknown)
    Bad request

## Response 400 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
    Enum: "VALIDATION"

  - `message` (string, required)
    Message describing the error.
    Example: One or more fields failed validation due to constraints

  - `context` (object, required)
    Additional context about the validation error, including specific constraints.
    Example: {"constraints":{"email":{"type":"TYPE","message":"The 'email' field must be a valid email address"},"age":{"type":"MIN","message":"The 'age' field must be a number greater than or equal to 18"}}}

  - `context.constraints` (object, required)
    Failed constraints keyed by the field name.

## Response 401:

  - `401` (unknown)
    Unauthenticated

## Response 401 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
    Enum: "UNAUTHENTICATED"

  - `message` (string, required)
    Message describing the error.
    Example: Credentials are invalid or missing

## Response 403:

  - `403` (unknown)
    Unauthorized

## Response 403 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
    Enum: "PERMISSION_DENIED"

  - `message` (string, required)
    Message describing the error.
    Example: Permission denied

## Response 404:

  - `404` (unknown)
    Not found

## Response 404 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
The list of enum values may be extended without notice.
    Enum: "NOT_FOUND", "ENDPOINT_NOT_FOUND"

  - `message` (string, required)
    Message describing the error. The entity varies by endpoint.
    Example: The requested resource could not be found

## Response 422:

  - `422` (unknown)
    Unprocessable entity

## Response 422 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
The list of enum values may be extended without notice.
    Enum: "REPORT_CREATION_IN_PROGRESS", "REPORT_EXPIRED", "REPORT_FAILED"

  - `message` (string, required)
    Message describing the error.
    Example: The request conflicts with the current state

  - `context` (object)
    Additional error context.

## Response 404 examples:

  - `notFound` (unknown)

