Skip to main content
POST
Create external file

Authorizations

Authorization
string
header
required

Use a JWT bearer token or a Veryfront API key in the Authorization header.

Headers

idempotency-key
string

Key of 1-128 characters without whitespace. A retry with the same key and request within 24 hours returns the first result instead of creating another item; the same key with a different request returns 409 conflict.

Required string length: 1 - 128
Pattern: ^\S+$

Path Parameters

project_reference
string
required

Project slug, UUID, or domain that identifies the project.

provider
enum<string>
required

External file provider: onedrive, sharepoint or drive (Google Drive).

Available options:
onedrive,
sharepoint,
drive

Body

application/json
folder_id
string
required

Folder item ID, or root. SharePoint uses sp-site:{siteId} for a site and {siteId}|{itemId} inside one.

Required string length: 1 - 1024
name
string
required

File name, 1-255 characters without a slash. Creates a new file without replacing an existing one. OneDrive and SharePoint return conflict for an existing name; Google Drive creates a new item with the same name.

Required string length: 1 - 255
Pattern: ^[^/]*$
content
string
required

File content, at most 10000000 characters as sent.

Maximum string length: 10000000
content_encoding
enum<string>

Encoding of content: utf8 (default) or base64.

Available options:
utf8,
base64
mime_type
string

MIME type. Defaults from the name, else text/plain (utf8) or application/octet-stream (base64).

Required string length: 3 - 255

Response

The created file.

id
string
required

Provider item ID. Opaque. SharePoint items use {siteId}|{itemId} and site roots sp-site:{siteId}. Site IDs also accept Microsoft Graph root and hostname aliases.

Required string length: 1 - 1024
provider
enum<string>
required

Provider that stores the item.

Available options:
onedrive,
sharepoint,
drive
name
string
required

File or folder name.

kind
enum<string>
required

Whether the item is a file or a folder.

Available options:
file,
folder
parent_id
string | null
required

Provider ID of the parent folder, or null.

Required string length: 1 - 1024
path
string
required

Provider path of the item, with the same meaning as on the legacy routes.

mime_type
string
required

MIME type. Folders report the provider folder type or folder.

Minimum string length: 1
size_bytes
integer
required

Size in bytes. Folders may report 0.

Required range: 0 <= x <= 9007199254740991
modified_at
string<date-time> | null
required

Last modification time in RFC 3339 UTC, or null when the provider reports none.

Example:

"2026-03-02T09:15:27.000Z"

etag
string | null
required

Provider version tag. Send it as If-Match on update to refuse a stale write.

Required string length: 1 - 1024
Pattern: ^(?:\*|(?:W\/)?"[\x21\x23-\x7e]*"(?:[ \t]*,[ \t]*(?:W\/)?"[\x21\x23-\x7e]*")*|[!#$%&'*+.^_`|~0-9A-Za-z-]+)$
thumbnail_url
string | null
required

Provider thumbnail URL (https), or null.

web_url
string | null
required

Provider URL (https) that opens the item, or null.