---
title: "Get many audit upload URLs"
method: POST
path: "/audit/uploads/bulk"
tags: ["Audit"]
---

# Get many audit upload URLs

`POST /audit/uploads/bulk`

## Request

- Base URL: `https://api.tarifflo.com/api/v2`
- URL: `https://api.tarifflo.com/api/v2/audit/uploads/bulk`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

Presigned PUT URLs for up to 50 documents; one unsupported file type refuses the whole call.

Requires the API key scope `audit`.

## Request body

- object
  - `files` object[], required
    - `filename` string, required: PDF, Excel, Word, CSV or an image; the type is checked again from the bytes.
    - `mimeType` string, required

## Response `200`

Successful response

- object
  - `uploads` object[], required
    - `fileId` string, required: Pass it in `fileIds` when starting the run.
    - `uploadUrl` string, required: PUT the file's bytes here, with the declared `mimeType` as Content-Type.
    - `expiresInSeconds` number, required

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `500`: Internal server error

---

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