---
title: "Download locations"
method: GET
path: "/locations/download"
tags: ["Locations"]
---

# Download locations

`GET /locations/download`

## Request

- Base URL: `https://api.synup.com/api/v4`
- URL: `https://api.synup.com/api/v4/locations/download`
- Auth: none required
- TypeScript: <https://skmtc.dev/synup/apis/synup-api/docs/locations/download/get.ts> (a function with typed inputs; its response is checked against the schema)

Generates a CSV export of the selected locations and returns a download URL. The export runs asynchronously — the response confirms the request was accepted, and the user is notified by email when the CSV is ready.

Use `selectionType` to choose between all matching locations (`ALL_ITEMS`) or an explicit set (`SELECTED_ITEMS` with `locationIds`). The `filterInput` parameter accepts the same JSON-encoded filter object as Filter locations.

## Query parameters

- `filterInput` string
- `selectionType` 'ALL_ITEMS' | 'SELECTED_ITEMS'
- `locationIds` string[]
- `emails` string[]
- `archived` boolean
- `approved` boolean
- `archivalScheduledAt` boolean

## Headers

- `Synup-Version` string, required
- `Authorization` string, required

## Response `200`

Successful response

- object
  - `data` object
    - `downloadLocations` DownloadLocationsInBulkType
      - `success` boolean: Whether the export request was accepted.
      - `csvUrl` string: URL of the CSV file (populated when the export completes).

## Other responses

- `401`: Unauthorized - Invalid or missing API key

---

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