Skip to main content
POST
Get Presigned URL
Get an S3 presigned URL for uploading large documents (recommended for files > 6MB).

Request Body

document_category
string
Document category. Required if document_metadata is not provided.
document_metadata
object
Detailed metadata for precise rule matching. Required if document_category is not provided.
content_type
string
default:"application/octet-stream"
MIME type of the document (e.g., application/pdf for PDFs). Defaults to application/octet-stream if not specified.
filename
string
Original filename for reference

Response

job_id
string
Unique identifier for the validation job
upload_url
string
S3 presigned URL for file upload
upload_method
string
HTTP method to use for upload (always “PUT”)
s3_bucket
string
S3 bucket name
s3_key
string
S3 object key
expires_at
string
ISO 8601 timestamp when the URL expires
expires_in_seconds
integer
Seconds until URL expiration
content_type
string
The content type to use when uploading
required_headers
object
Important: All headers that MUST be included in the upload request. The presigned URL is signed with these headers, so omitting any will result in a SignatureDoesNotMatch error from S3.
instructions
object
Step-by-step instructions and example curl command for uploading
Required Headers: The presigned URL is signed with metadata headers. You must include ALL headers from the required_headers field exactly as provided when uploading your file. Missing or incorrect headers will result in a SignatureDoesNotMatch error from S3.

Example