---
title: "Export results (REST)"
method: GET
path: "/checks/{checkId}/export"
tags: ["Results"]
---

# Export results (REST)

`GET /checks/{checkId}/export`

## Request

- Base URL: `https://codequiry.com/api/v1`
- URL: `https://codequiry.com/api/v1/checks/{checkId}/export`
- Auth: API key in header `apikey`

## Path parameters

- `checkId` integer, required

## Query parameters

- `format` 'csv' | 'json'

## Response `200`

Export (JSON body or CSV download)

- ExportResult
  - `check_id` integer
  - `check_name` string
  - `export_date` string
  - `submissions` object[]
    - `submission_id` integer
    - `filename` string
    - `status` string
    - `plagiarism_local` number
    - `plagiarism_web` number
    - `plagiarism_total` number
    - `matches_local` integer
    - `matches_web` integer
    - `ai_detection_avg` number
    - `ai_detection_max` number
    - `code_quality_avg` number
    - `file_size` integer
    - `created_at` string
    - `updated_at` string

## Other responses

- `401`: Missing or invalid API key. The API key is checked before any endpoint logic runs, so this is returned for every operation.
- `402`: The account is suspended for an unpaid invoice. Every endpoint returns this until the invoice is paid from the billing dashboard; it is not retryable and the request was not performed.
- `404`: Resource not found or not owned by this account.
- `409`: Check is in a state that does not allow this operation (e.g. still processing, or not yet completed).
- `422`: Request validation failed.
- `429`: Rate limit exceeded: more than 60 requests in one minute from this IP. Retry after the number of seconds in the Retry-After header. Successful responses carry X-RateLimit-Limit and X-RateLimit-Remaining too, so you can pace a client without waiting to be refused.

---

[API](https://skmtc.dev/codequiry/apis/codequiry-api.md) · [All operations](https://skmtc.dev/codequiry/apis/codequiry-api/llms.txt) · [OpenAPI document](https://skmtc.dev/codequiry/apis/codequiry-api/revisions/6297e91d9665?raw)
