Skip to main content
POST
/
files
/
initmultipartupload
Upload multipart file
curl --request POST \
  --url https://{cluster}.cognitedata.com/api/v1/projects/{project}/files/initmultipartupload \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "externalId": "my.known.id",
  "directory": "<string>",
  "source": "<string>",
  "mimeType": "image/jpeg",
  "metadata": {},
  "assetIds": [
    4503599627370496
  ],
  "dataSetId": 4503599627370496,
  "sourceCreatedTime": 1730204346000,
  "sourceModifiedTime": 1730204346000,
  "securityCategories": [
    4503599627370496
  ],
  "labels": [
    {
      "externalId": "my.known.id"
    }
  ]
}
'
{
  "items": [
    {
      "name": "<string>",
      "id": 4503599627370496,
      "uploaded": true,
      "createdTime": 1730204346000,
      "lastUpdatedTime": 1730204346000,
      "uploadId": "<string>",
      "uploadUrls": [
        "uploadURL_for_part_1",
        "uploadURL_for_part_2",
        "uploadURL_for_part_3"
      ],
      "externalId": "my.known.id",
      "directory": "<string>",
      "source": "<string>",
      "mimeType": "image/jpeg",
      "metadata": {},
      "assetIds": [
        4503599627370496
      ],
      "dataSetId": 4503599627370496,
      "sourceCreatedTime": 1730204346000,
      "sourceModifiedTime": 1730204346000,
      "securityCategories": [
        4503599627370496
      ],
      "labels": [
        {
          "externalId": "my.known.id"
        }
      ],
      "geoLocation": {
        "type": "Feature",
        "geometry": {
          "type": "Point",
          "coordinates": [
            123
          ]
        },
        "properties": {}
      },
      "uploadedTime": 1730204346000,
      "instanceId": {
        "space": "<string>",
        "externalId": "<string>"
      }
    }
  ]
}

Authorizations

Authorization
string
header
required

Access token issued by the CDF project's configured identity provider. Access token must be an OpenID Connect token, and the project must be configured to accept OpenID Connect tokens. Use a header key of 'Authorization' with a value of 'Bearer $accesstoken'. The token can be obtained through any flow supported by the identity provider.

Query Parameters

overwrite
boolean
default:false

If 'overwrite' is set to true, and the POST body content specifies a 'externalId' field, fields for the file found for externalId can be overwritten. The default setting is false.

If metadata is included in the request body, all of the original metadata will be overwritten. The actual file will be overwritten after a successful upload with the uploadUrls from the response. If there is no successful upload, the current file contents will be kept.

File-Asset mappings only change if explicitly stated in the assetIds field of the POST json body. Do not set assetIds in request body if you want to keep the current file-asset mappings.

parts
integer<int32>
required

The 'parts' parameter specifies how many uploadURLs should be returned, for uploading the file contents in parts. See main endpoint description for more details.

Required range: 1 <= x <= 250

Body

application/json

Fields to be set for the file.

name
string
required

Name of the file.

Maximum string length: 256
externalId
string

The external ID provided by the client. Must be unique for the resource type.

Maximum string length: 255
Example:

"my.known.id"

directory
string

Directory containing the file. Must be an absolute, unix-style path.

Maximum string length: 512
source
string

The source of the file.

Maximum string length: 128
mimeType
string

File type. E.g. text/plain, application/pdf, ..

Maximum string length: 256
Example:

"image/jpeg"

metadata
object

Custom, application specific metadata. String key -> String value. Limits: Maximum length of key is 128 bytes, value 10240 bytes, up to 256 key-value pairs, of total size at most 10240.

assetIds
integer<int64>[]
Required array length: 1 - 1000 elements

A server-generated ID for the object.

Required range: 1 <= x <= 9007199254740991
dataSetId
integer<int64>

The dataSet Id for the item.

Required range: 1 <= x <= 9007199254740991
sourceCreatedTime
integer<int64>

The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds.

Required range: x >= 0
Example:

1730204346000

sourceModifiedTime
integer<int64>

The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds.

Required range: x >= 0
Example:

1730204346000

securityCategories
integer<int64>[]

The security category IDs required to access this file.

Maximum array length: 100

A server-generated ID for the object.

Required range: 1 <= x <= 9007199254740991
labels
Label · object[]

A list of the labels associated with this resource item.

Maximum array length: 10
geoLocation
object

Geographic metadata.

Response

The response for a successful request to initiate upload of multiple parts for a file.

items
object[]
Last modified on April 23, 2026