Unqork documentation is available in two workspaces: UnqorkAI for the latest AI-first platform, and legacy Unqork for previous versions. Use the drop-down near the logo to switch.

Platform Limits

Prev Next

Constraints that apply across the UnqorkAI platform, including file uploads, API requests, submission data, email, Build Agent, and session behavior.

Submission Data

The most common question Creators have about the submissions API is how many submissions they can read or write in a single request.

Submission Size

Each submission is stored as a single document in the database. The maximum size of a single submission document is 16 MB, a hard limit set by the database engine. This includes all field values, metadata, and any Base64-encoded file data stored in the submission.

Submissions approaching this limit might indicate that large file data should be stored externally using cloud storage instead of embedded in the submission. See the File component and File Storage component for guidance.

Submissions per Request

Operation Default Maximum
Get submissions 50 50
Create submissions — 50
Update submissions — 50
Delete submissions — 50
Data query results 50 50

The 50-submission limit applies to both the default and the maximum for submission endpoints. A single request cannot exceed 50 submissions regardless of query parameters. To retrieve more than 50 submissions, paginate using the limit and offset parameters.

Pagination

Submission endpoints support limit and offset query parameters for paginating through large result sets.

Parameter Description
limit Number of records to return per request. Maximum 50.
offset Number of records to skip before selecting results. Zero-based.

Example: To retrieve records 51–100, set limit=50&offset=50.

The response includes a x-total-count header with the total number of matching records. Use this value to calculate how many requests are needed to retrieve all results.

Unqork also supports HTTP range headers as an alternative pagination method. See the API Reference for details.

Other API Endpoints

Limits vary by endpoint type. The following are common endpoints Creators access through the Plug-In component.

Endpoint Default Maximum
Get Users 50 500
Get Groups 1,000 1,000
Get Transforms 50 1,000
Get Applications 1,000 1,000
Get Modules 50 50
Get Workspaces — 3,000

Data Models and Query Builder

Data Model Records

Limit Default Maximum Notes
Records per page 50 200 Use limit and offset parameters to paginate.
Empty-criteria query cap — 100 When a query specifies no criteria and no limit, the server automatically caps results at 100.
Lookup nesting depth — 3 levels Maximum depth for nested record lookups in a single query.

Query Builder Pipeline

Query Builder pipelines are evaluated server-side. The following limits apply per pipeline.

Limit Value
Total pipeline JSON size 64 KB
Pipeline nesting depth 10 levels
Regex pattern length 200 characters
Maximum $limit operator value 10,000 records
Results per page 100

Smart Queries

Smart Query read operations enforce a hard cap of 10,000 records. The cap is applied at two points. At structural validation, a limit stage is automatically injected if the query specifies none. At execution, any limit value above 10,000 is rejected. Parameter values passed to Smart Queries must be primitives or arrays of primitives. Object values are not supported.

File Uploads

End-users submit files through modules. The limits that apply depend on the storage used.

Any file-related or API request lasting longer than five minutes will fail.

Upload Size Limits

Administrators configure the maximum file size for end-user uploads in Environment Administration.

Limit Default Configurable Range Notes
Max file size 2,048 MB 0–2,048 MB Files are automatically virus scanned up to 100 MB. Files above 100 MB are not automatically virus scanned. A warning displays in the platform when the configured limit exceeds this threshold.

File Component Storage Paths

The File component stores uploaded files through one of two paths, determined by the Parse Files on Upload setting.

Parse Files on Upload Storage path Effective size limit
OFF storage 100 MB per file
ON Base64 embedded in the submission Governed by the 16 MB BSON submission limit

Cloud storage (Parse Files on Upload = OFF): Files are stored in the environment's cloud storage provider. The Unqork server enforces a 100 MB per-file limit server-side, regardless of the Max File Size setting on the component.

Base64 in submission (Parse Files on Upload = ON): Files are Base64-encoded and embedded directly in the submission document. Base64 encoding inflates binary file size by approximately 33%, and the encoded data counts against the 16 MB BSON submission document limit. The maximum file size depends on how much other data the submission contains. A submission with minimal other field data can accommodate a file of approximately 12 MB binary; submissions with more field data have less headroom.

Execution Channel Upload Limits

Administrators configure upload limits for Service Execute and Execute via API channels in Environment Administration.

Limit Default Configurable Range Notes
Max file size per file 500 MB 0–2,048 MB Applies to both Service Execute and Execute via API upload channels.
Max number of files 25 1–10,000 Applies per execution request.
Aggregate cap per execution 10 GB Not configurable Hard limit regardless of per-file max.
Aggregate cap (anonymous calls) 500 MB Not configurable Applies when the execution is made without authentication.

Upload Errors

If an uploaded file or request payload exceeds the enforced limit, the server returns a PayloadTooLargeError: request entity too large error. The upload is rejected before processing; the file itself is not stored. To resolve the error, reduce the file size or check the Max File Size setting in Environment Administration. For Base64 submissions, consider switching to cloud storage (Parse Files on Upload = OFF). Switching to cloud storage lifts the effective limit from the BSON submission cap to the 100 MB per-file server limit.

File Downloads

End-users download files from cloud storage through the Unqork server, which proxies the stream directly from the storage provider to the browser. Unqork does not enforce a file size cap on downloads. Download availability and throughput are governed by the cloud storage provider and network conditions.

File Imports

Data Collections

Creators import CSV files into Data Collections through the UnqorkAI platform.

Limit Value
CSV import file size 1 GB
CSV import row limit 10,000 rows

Module and Application Blueprints

Application definitions are imported as JSON through the Unqork API. The import endpoint accepts JSON request bodies up to 100 MB by default. This limit is configurable per environment using the UNQORK_SERVER_MERGE_ENDPOINTS_JSON_PARSER_LIMIT environment variable.

Limit Default Notes
Application blueprint JSON 100 MB Applies to the /merge and /validateMerge endpoints. Configurable per environment.

File Processing

The Unqork server supports server-side file operations through the /fileUtils API, including creating ZIP archives, extracting ZIP files, and converting between JSON and CSV. The following limits apply per request.

Operation Per-file limit Max files
ZIP archive creation 250 MB 20
ZIP extraction 250 MB 20
JSON to CSV conversion 250 MB 20

External Service File Calls

When Creators call external services through the Plug-In component, separate limits apply to the outgoing request and the incoming response.

Outgoing requests: Unqork does not impose a limit on the payload sent to an external service. The external service's own limits apply.

Incoming responses: Unqork limits the response it accepts back from external services based on the Expect Binary Response setting.

Limit Value Notes
External service response (text) 100 MB Default response limit. Applies when Expect Binary Response is OFF.
External service response (binary) 2 GB Applies when Expect Binary Response is ON. Unqork switches to streaming mode, which raises the response limit.
External file service upload 500 MB per file Applies when sending files to an external service through the Plug-In component. Verify the external service's own limits before configuring.
Server-side proxy upload 500 MB total Maximum of 25 files at 500 MB total. Applies to the Execute via Proxy - POST Unqork service.
Base64 retrieval (contents output type) 10 MB Limit for retrieving a file as Base64 using the contents output type in a Plug-In component.

Request Payload Limits

These limits apply to all API requests sent to the Unqork server, regardless of which component or service initiates the call.

Request type Limit Notes
JSON body 50 MB Applies to all JSON and URL-encoded request bodies, including submission saves and API calls to Unqork endpoints. Does not apply to outgoing Plug-In component calls to external services.
Multipart non-file fields 50 MB total Applies to the total size of all non-file form fields in a multipart upload. File data in the same request is not counted against this limit.
Application blueprint import 100 MB Applies to the /merge and /validateMerge endpoints. Configurable per environment.

Style Assets

Administrators upload style assets through the Style Editor, including images, fonts, and CSS files. The following limits apply.

Asset type Extensions Size limit
Images .svg, .png, .jpg, .jpeg, .gif, .webp 10 MB
Icons .ico 1 MB
Fonts .eot, .ttf, .otf, .woff, .woff2 10 MB
CSS stylesheets .css 10 MB

Accepted File Types

By default, Unqork accepts the following file types for end-user uploads. Administrators can configure a different set of allowed extensions per file manager in Environment Administration.

Category Extensions
Images .jpg, .jpeg, .png, .gif, .svg, .ico
Documents .pdf, .txt, .docx, .xlsx, .xlsm, .csv
Fonts .eot, .ttf, .otf, .woff, .woff2

To restrict accepted file types on a specific File component, use the File Pattern setting (for example, .pdf,.png).

Security Processing

All uploaded files go through the following checks before being stored:

  • Antivirus scan: Files are scanned for malware and rejected if infected.
  • MIME type validation: Files are rejected if their MIME type does not match their extension.
  • Magic byte check: The file's binary signature is verified against its declared type.
  • SVG sanitization: SVG files are sanitized to remove embedded JavaScript before storage.
  • HTML sanitization: HTML files are filtered to remove XSS content before storage.

Email

Email workflow steps route through AWS SES. The following limits apply per message.

Limit Default Configurable Range Notes
Total recipients 50 Not configurable Combined total of To, CC, and BCC recipients. Enforced by AWS SES.
Attachment size 100 MB 0–2,048 MB Configurable per environment in Environment Administration.

Build Agent

The following limits apply to Build Agent interactions in the UnqorkAI platform.

Chat Input and Output

Limit Value
Max message input length 100,000 characters
Max response length 65,535 tokens
Rate limit 10 requests per 60 seconds per Creator

File Attachments

Creators can attach files to Build Agent messages. The total size of all attachments per Task cannot exceed 10 MB. Additional per-type limits apply.

File type Limit
PDF 100 pages total
Text files (TXT, MD, JSON, LOG, XML, ) 500,000 characters total
CSV, TSV 5,000 rows and 100 columns
Spreadsheets (XLSX, XLSM, XLS, ODS) 10,000 total rows across all sheets; 75 sheets
Images (PNG, JPEG, GIF, WEBP) Subject to the 10 MB total

Session and Authentication

Session Timeout

Both timeout values are configurable per environment in Environment Administration.

Limit Default Notes
Inactivity timeout 240 minutes Session expires after this period of inactivity.
Absolute session expiry 1,440 minutes (24 hours) Session cannot be refreshed after this duration regardless of activity.

Account Lockout

Both values are configurable per environment in Environment Administration.

Limit Default Configurable Range
Failed login attempts before lockout 5 2–10
Lockout duration 30 minutes 5–120 minutes

Passwords

Password length requirements are configurable per environment in Environment Administration.

Limit Default
Minimum length 12 characters
Maximum length 64 characters

Rate Limiting

Rate limits are configured per environment by an administrator and vary by customer.

Limit Minimum Maximum
Requests per IP address per server per 60 seconds 100 1,000,000

Administrators can view and update this setting in Environment Administration. Applications hitting rate limits should contact their environment administrator to review the current configuration.

Browser Storage Component

The Browser Storage component stores data in the browser's localStorage. Storage limits are enforced by the browser, not by Unqork.

Limit Value Notes
localStorage per domain 5–10 MB Varies by browser. Exceeding this limit causes a storage quota error.

Keep data stored in the Browser Storage component small. Avoid storing large arrays or deeply nested objects.

Platform Updates

When the Unqork platform undergoes an infrastructure update, long-running processes have a 5-minute graceful shutdown window to complete. The window applies to both scheduled platform releases and unscheduled infrastructure changes.

The following process types are subject to this window:

  • Server-side execution (SSE) modules
  • Automated Workflows
  • Timers (scheduled and repeating timers configured in the Timer component)

Processes that do not complete in 5 minutes are interrupted when the update takes effect. Creators and end-users cannot extend the window or terminate in-flight processes manually.

To reduce the impact of interruptions:

  • Avoid scheduling time-sensitive automated workflows or timers during known platform maintenance windows.
  • Build retry logic into workflows that call external services, so they can recover if an in-flight request is cut short.
  • After a platform update, check downstream systems for any processes that did not complete and rerun them as needed.

Changelog

Date Change
2026-10-09 Added Platform Updates section — 5-minute graceful shutdown window for SSE, Workflows, and timers during pod replacement events.
2026-09-24 Updated File Attachments to clarify the 10 MB limit applies per Task, not per conversation.
2026-08-28 Added Upload Errors section — PayloadTooLargeError description and resolution guidance.
2026-08-27 Added Smart Queries section: 10,000 record hard cap, dual enforcement (structural validation + execution), primitives-only parameter type restriction.
2026-08-13 Build Agent: fixed double word in section header; updated File Attachments to reflect current limits (10 MB total across conversation, PDF 100 pages, text/CSV/XLSX per-type limits); removed deprecated Knowledge Base Entries section.
2026-06-30 Added: Data Models and Query Builder section (records per page, empty-criteria cap, nesting depth, pipeline limits); Email section (50 recipients, 100 MB attachment); Agent Chat section (rate limit, max output, PDF limits, KB entry limit); Session and Authentication section (inactivity, absolute expiry, lockout, password length). Expanded Other API Endpoints (modules, workspaces). Added CSV 10,000 row limit to Data Collections.
2026-06-30 Reorganized file limits by operation (uploads, downloads, imports, processing, external service calls, request payloads, style assets). Added: file downloads (no cap), Data Collections CSV import (1 GB), application blueprint import (100 MB), file processing via /fileUtils (250 MB / 20 files), multipart non-file field limit (50 MB), style asset limits (10 MB images/fonts/CSS, 1 MB ico). Clarified Base64/BSON limit relationship.
2026-06-29 Corrected Plug-In Component limits: 100 MB is the inbound response limit (not outgoing payload); outgoing requests have no Unqork-imposed limit; 50 MB clarified as inbound Unqork server limit only.
2026-06-26 Added external service response limit (100 MB) and binary response limit (2 GB) to Plug-In Component File Limits.
— Initial publication.