Skip to main content
PUT
Update external file

Authorizations

Authorization
string
header
required

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

Headers

if-match
string

The etag from ExternalFile. The update is refused with 409 conflict when the file changed.

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

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
file_id
string
required

Provider item ID from listExternalFiles. Opaque; percent-encode it. Missing or inaccessible items return not_found.

Required string length: 1 - 1024

Body

application/json
content
string
required

Replacement content; folders cannot be updated. At most 10000000 characters as sent. Send If-Match to refuse a stale write with 409.

Maximum string length: 10000000
content_encoding
enum<string>

Encoding of content: utf8 (default) or base64.

Available options:
utf8,
base64

Response

The updated 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.