---
title: "Export a client’s benefits and plans"
method: POST
path: "/v1/clients/{clientId}/exports"
tags: ["Exports"]
---

# Export a client’s benefits and plans

`POST /v1/clients/{clientId}/exports`

## Request

- Base URL: `https://api.pasito.ai`
- URL: `https://api.pasito.ai/v1/clients/{clientId}/exports`
- Auth: HTTP bearer

Generates an export of the given benefits/plans in the requested format and returns a presigned download URL. The file belongs to the client (tagged via `clientCompanyId`). Returns a presigned `downloadUrl` — HTTP GET it to download the file (expires ~1 hour after issue).

## Path parameters

- `clientId` string, required

## Request body

- CreateExportRequest
  - `format` 'csv' | 'json' | 'excel' | 'parquet', required: Output format.
  - `companyBenefitIds` string[]: Export all plans under these benefits (cben_ ids).
  - `planIds` string[]: Export these specific plans (ipn_ ids).

## Response `201`

Default Response

- object
  - `exportId` string, required: The created export file id.
  - `format` 'csv' | 'json' | 'excel' | 'parquet', required
  - `fileName` string, required
  - `downloadUrl` string, required: Presigned download URL for the generated file — HTTP GET it to download (no auth header needed; it's presigned). Expires ~1 hour after issue. The file is also stored for the client (via `clientCompanyId`).

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `429`: Default Response

---

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