S3
Generate a presigned POST for uploading files directly to S3.
Upload Flow:
Call this endpoint to get presigned POST URL and fields
POST the file to S3 using the returned URL and fields (include
fileas last field)Call
/api/s3/successwith the key, uuid, name, and etag to confirm upload
Expiration: 5 minutes
MIME type of the file. Examples: application/pdf, text/plain, image/png, application/json
Name of the file to upload (e.g., 'updated-resume.pdf')
Allowed values: field_value, form_field_value, activity_field_value, automation_value, employee_import, record_import, meta_import, smart_connector_import, knowledge_source, public_image, third_party_image
POST destination URL for upload
UUID to use when calling /api/s3/success
Maximum allowed file size in bytes
When the presigned POST expires
GET /api/s3/presigned-post?contenttype=text&filename=text&source=text HTTP/1.1
X-API-KEY: YOUR_API_KEY
X-BUSINESS-ID: YOUR_BUSINESS_ID
X-USER-ID: YOUR_USER_ID
Accept: */*
{
"url": "https://kizen-file-uploads.s3.amazonaws.com/",
"fields": {
"key": "a1b2c3d4-e5f6-7890-abcd-ef1234567890/presigned_upload/f9e8d7c6-b5a4-3210-fedc-ba0987654321",
"Content-Type": "application/pdf",
"acl": "private",
"tagging": "<Tagging><TagSet><Tag><Key>kzn-business-id</Key><Value>a1b2c3d4-e5f6-7890-abcd-ef1234567890</Value></Tag><Tag><Key>kzn-source</Key><Value>field_value</Value></Tag></TagSet></Tagging>",
"policy": "eyJleHBpcmF0aW9uIjogIjIwMjUtMDEtMThUMTI6MDU6MDBaIiwgImNvbmRpdGlvbnMiOiBbLi4uXX0=",
"x-amz-algorithm": "AWS4-HMAC-SHA256",
"x-amz-credential": "AKIAIOSFODNN7EXAMPLE/20250118/us-east-1/s3/aws4_request",
"x-amz-date": "20250118T120000Z",
"x-amz-signature": "bWq2s1WEIj+Ydj0vQ697zp+IXMU="
},
"s3object_id": "f9e8d7c6-b5a4-3210-fedc-ba0987654321",
"max_file_size": 15000000,
"expires_at": "2025-01-18T12:05:00Z"
}This is where the upload will send a POST request after the file has been stored in S3.
Kind of the file (e.g. 'SMART_CONNECTOR_IMPORT')
S3 object UUID
S3 object key
File name
Whether the S3 object is public (default: false)
S3 object Entity Tag (ETag)
ID of the business associated with the S3 object
POST /api/s3/success HTTP/1.1
X-API-KEY: YOUR_API_KEY
X-BUSINESS-ID: YOUR_BUSINESS_ID
X-USER-ID: YOUR_USER_ID
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 94
"uuid='text'&key='text'&name='text'&is_public=true&etag='text'&business_id='text'"{
"id": "123e4567-e89b-12d3-a456-426614174000",
"created": "2026-01-01T00:00:00.000Z",
"key": "text",
"name": "text",
"url": "https://example.com",
"thumbnail_url": "https://example.com",
"size_bytes": 1,
"size_formatted": "text",
"content_type": "text",
"is_public": true,
"common_key": "text",
"is_common": true,
"metadata": null,
"employee": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Last updated
Was this helpful?