---
search:
  tags:
    - DAM V2
    - POST
seo:
  description: >-
    Bulk-creates file records and returns a presigned upload url… Reference for
    the POST /api/v2/{team_slug}/{app_slug}/dam/files endpoint in the Management
    API.
sidebar:
  label: Create files
  badge: POST
title: Create files
type: openapi-operation
---
Bulk-creates file records and returns a presigned upload url per file. Nabbit never receives the file bytes;
the consumer PUTs the bytes directly to `upload_url` and the file becomes active.

`POST /api/v2/{team_slug}/{app_slug}/dam/files`

**Request body** (`application/json`, required)

- `files` (CreateFileItem[], required)

Request body example:

```json
{
  "files": [
    {
      "filename": "string",
      "content_type": "string",
      "size_bytes": 0,
      "title": "string",
      "type": "string",
      "public": true,
      "created_with_ai": false,
      "overwrite": false,
      "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901"
    }
  ]
}
```

**Responses**

- `201` — Created (partial success possible)
- `400` — Request-level failure
- `401` — Request-level failure
- `403` — Request-level failure
- `500` — Request-level failure

Response example, 201:

```json
{
  "data": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "path": "string",
      "upload_url": "string",
      "expires_at": 0,
      "constraints": {
        "max_size_bytes": 0,
        "allowed_types": [
          "string"
        ]
      }
    }
  ],
  "errors": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "filename": "string",
      "message": "string"
    }
  ]
}
```
