---
title: "Get export job"
method: GET
path: "/v1/exports/{job_id}"
tags: ["Special Situations"]
---

# Get export job

`GET /v1/exports/{job_id}`

## Request

- Base URL: `https://api.turos.app`
- URL: `https://api.turos.app/v1/exports/{job_id}`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Poll an async export job and re-sign its download URL.

## Path parameters

- `job_id` string, required

## Query parameters

- `format` 'json' | 'csv' | 'xlsx' | 'pdf' | 'llm'

## Response `200`

Current export job status, content hash, revision id, and a short-lived signed download URL when complete.

- ExportJob
  - `object` 'export_job', required
  - `jobId` string, required
  - `status` 'queued' | 'running' | 'completed' | 'failed', required
  - `dataset` 'company_overview' | 'macro_observations' | 'situations', required
  - `format` 'json' | 'csv' | 'xlsx' | 'pdf' | 'llm', required
  - `rowCount` integer, required
  - `byteSize` integer, required
  - `downloadUrl` string, nullable, required
  - `expiresAt` string, nullable, required
  - `contentHash` string, nullable
  - `revisionId` string, nullable
  - `replayed` boolean
  - `errorText` string

## Other responses

- `default`: Contract-aware error response

---

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