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

# List Exports

> Returns the project's export jobs, newest first. Files are omitted from the list (call the single-export endpoint for download URLs); each item still carries `downloadable`.

<span style={{display: "flex", gap: "10px", flexDirection: "row", alignItems: "center"}}>
  <img src="https://cdn.peaka.com/badges/partner-api-key-badge.png" />

  <img src="https://cdn.peaka.com/badges/project-api-key-badge.png" />
</span>


## OpenAPI

````yaml get /data/projects/{projectId}/exports
openapi: 3.0.1
info:
  title: Peaka Gateway API
  description: Peaka Gateway API Documentation
  version: '1.0'
servers:
  - url: https://partner.peaka.studio/api/v1
    description: Default Server URL (US Zone)
  - url: https://partner.eu.peaka.studio/api/v1
    description: EU Zone
security:
  - bearerAuth: []
paths:
  /data/projects/{projectId}/exports:
    get:
      tags:
        - Data -- Exports
      summary: List Exports
      description: >-
        Returns the project's export jobs, newest first. Files are omitted from
        the list (call the single-export endpoint for download URLs); each item
        still carries `downloadable`.
      operationId: listExports
      parameters:
        - name: projectId
          in: path
          description: ID of the Project
          required: true
          schema:
            type: string
          example: mtKDhe1U
        - name: status
          in: query
          description: >-
            Comma-separated status filter:
            PENDING,RUNNING,SUCCEEDED,FAILED,CANCELLED. Examples:
            `SUCCEEDED,RUNNING` (active or done), `FAILED,CANCELLED`
            (unsuccessful), `SUCCEEDED` (single status). Omit to return every
            status.
          required: false
          schema:
            type: string
          example: SUCCEEDED,RUNNING
        - name: limit
          in: query
          description: Page size, clamped to [1, 200]
          required: false
          schema:
            type: integer
            format: int32
          example: 50
        - name: createdBefore
          in: query
          description: >-
            Keyset cursor (ISO-8601): the previous page's last createdAt.
            Example: `2026-06-10T15:23:26.893985Z`. Omit for the first page.
          required: false
          schema:
            type: string
          example: '2026-06-10T15:23:26.893985Z'
      responses:
        '200':
          description: List of export jobs
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExportJobResponse'
              examples:
                Mixed statuses:
                  description: Mixed statuses
                  value:
                    - id: 4c9fcb44-126a-45f8-99a0-f1d245083d78
                      status: SUCCEEDED
                      format: JSONL
                      compression: NONE
                      rowCount: 993
                      bytes: 3706920
                      durationMs: 1055
                      downloadable: true
                      queryId: '709922802836177297'
                      source: peaka.query."charges_view"
                      userName: user@example.com
                      apiKeyPrefix: hBWIQxjc
                      clientSource: peaka-studio
                      createdAt: '2026-06-10T12:24:08Z'
                    - id: 2f1a9c77-8b3e-4d21-9a5c-1e7f0b2d4a90
                      status: RUNNING
                      format: CSV
                      compression: GZIP
                      downloadable: false
                      catalogId: '367189801096446904'
                      schemaName: payment
                      tableName: charges
                      source: peaka.payment."charges"
                      userName: user@example.com
                      apiKeyPrefix: hBWIQxjc
                      clientSource: peaka-api
                      createdAt: '2026-06-10T12:20:31Z'
                    - id: 9d8c7b6a-5e4f-3210-bca9-87654321fedc
                      status: FAILED
                      format: CSV
                      downloadable: false
                      error: Query exceeded the 1,000,000 row export limit
                      queryId: '709922802836177297'
                      source: peaka.query."charges_view"
                      userName: user@example.com
                      apiKeyPrefix: hBWIQxjc
                      clientSource: peaka-studio
                      createdAt: '2026-06-10T12:11:02Z'
components:
  schemas:
    ExportJobResponse:
      type: object
      properties:
        id:
          type: string
          description: Export job id
          example: 4c9fcb44-126a-45f8-99a0-f1d245083d78
        status:
          type: string
          description: >-
            Job status. EXPIRED is derived when the artifacts have been removed
            by the lifecycle rule; exports are point-in-time snapshots and are
            never regenerated.
          example: SUCCEEDED
          enum:
            - PENDING
            - RUNNING
            - SUCCEEDED
            - FAILED
            - CANCELLED
            - EXPIRED
        format:
          type: string
          description: Output format
          example: JSONL
        compression:
          type: string
          description: Output compression
          example: NONE
        rowCount:
          type: integer
          description: Number of exported rows
          format: int64
          example: 993
        bytes:
          type: integer
          description: Total output size in bytes
          format: int64
          example: 3706920
        durationMs:
          type: integer
          description: Execution time in milliseconds
          format: int64
          example: 1055
        files:
          type: array
          description: Downloadable artifacts (only for the owner of a SUCCEEDED job)
          items:
            $ref: '#/components/schemas/ExportFile'
        expiresAt:
          type: string
          description: Expiry of the presigned URLs (ISO-8601); re-call GET for fresh links
          example: '2026-06-10T13:24:20Z'
        downloadable:
          type: boolean
          description: >-
            Whether the calling user may download this export (owner-only
            access)
          example: true
        error:
          type: string
          description: Error message when the job failed
        createdAt:
          type: string
          description: Submission time (ISO-8601)
          example: '2026-06-10T12:24:08Z'
        queryId:
          type: string
          description: Source query id (query exports)
          example: '709922802836177297'
        catalogId:
          type: string
          description: Source catalog id (table exports)
        schemaName:
          type: string
          description: Source schema name (table exports)
        tableName:
          type: string
          description: Source table name (table exports)
        source:
          type: string
          description: Quoted, fully-qualified source name for display
          example: peaka.query."charges_view"
        userId:
          type: string
          description: Initiator user id
        userName:
          type: string
          description: Initiator user name
          example: user@example.com
        apiKeyPrefix:
          type: string
          description: Public prefix of the initiator's API key
          example: hBWIQxjc
        clientSource:
          type: string
          description: Client source (X-Trino-Source, falling back to User-Agent)
          example: peaka-studio
      description: Status and result of an export job
    ExportFile:
      type: object
      properties:
        name:
          type: string
          description: File name
          example: query_709922802836177297_charges.jsonl
        url:
          type: string
          description: Presigned download URL (short-lived)
          example: https://<minio>/export/...&X-Amz-Signature=...
        bytes:
          type: integer
          description: Object size in bytes
          format: int64
          example: 3706920
      description: A downloadable export artifact with a freshly-minted presigned URL
  securitySchemes:
    bearerAuth:
      type: http
      description: >-
        Use the Authorization header with the value 'Bearer <apiKey>' to
        authenticate. Partner API Keys have full access; Project API Keys are
        limited to their project scope. Learn more:
        https://docs.peaka.com/api-reference/authentication
      scheme: bearer
      bearerFormat: Api Key

````