upsertFile
Creates or updates a file using the `key` parameter as unique identifier. Updating a file will erase the existing content of the file. Upload the file content by sending it in a PUT request to the `uploadUrl` returned in the response.
PUT
/v1/filesAuthorization
AuthorizationBearerBearer authentication header of the form Bearer <token>, where <token> is your auth token.
Header parameters
x-bot-idstringBot id
x-integration-id?stringIntegration id
x-integration-alias?stringIntegration alias
x-integration-name?stringIntegration name
x-user-id?stringUser Id
x-user-role?stringUser Role
Request body
Properties of the file to create or update.
keystringUnique key for the file. Must be unique across the bot (and the integration, when applicable).
tags?objectFile tags as an object of key-value pairs. Tag values should be of `string` (text) type.
sizenumberFile size in bytes. This will count against your File Storage quota. If the `index` parameter is set to `true`, this will also count against your Vector DB Storage quota.
index?booleandefault: falseSet to a value of 'true' to index the file in vector storage. Only certain file formats are currently supported for indexing. Files larger than 95 MB cannot be indexed. Note that if a file is indexed, it will count towards both the Vector DB Storage quota and the File Storage quota of the workspace.
indexing?objectaccessPolicies?enum<string>[]File access policies. Add "public_content" to allow public access to the file content. Add "integrations" to allow read, search and list operations for any integration installed in the bot.
contentType?stringFile content type. If omitted, the content type will be inferred from the file extension (if any) specified in `key`. If a content type cannot be inferred, the default is "application/octet-stream".
expiresAt?date-timeExpiry timestamp in ISO 8601 format with UTC timezone. After expiry, the File will be deleted. Must be in the future. Cannot be more than 90 days from now. The value up to minutes is considered. Seconds and milliseconds are ignored.(date-time)
publicContentImmediatelyAccessible?booleanUse when your file has "public_content" in its access policy and you need the file\'s content to be immediately accessible through its URL after the file has been uploaded without having to wait for the upload to be processed by our system.
If set to `true`, the `x-amz-tagging` HTTP header with a value of `public=true` will need to be sent in the HTTP PUT request to the `uploadUrl` in order for the upload request to work.
metadata?anyCustom metadata for the file expressed as an object of key-value pairs. The values can be of any type.
Response
The created or updated file
fileobject