Skip to main content
Version: 0.16

Protocol

JMAP protocol behaviour is configured on the Jmap singleton (found in the WebUI under Settings › Network › JMAP › Limits, Settings › Network › JMAP › Push, Settings › Network › JMAP › WebSocket). The fields below influence request handling, upload quotas, and the size of responses returned by get, set, query, and changes methods.

Request limits

Request limits guard the JMAP server against resource exhaustion:

  • maxConcurrentRequests: the number of concurrent requests a single user may have in flight. Default 4.
  • maxRequestSize: the maximum size of a single request, in bytes. Default 10000000.
  • maxMethodCalls: the maximum number of method calls that can be included in a single request. Default 16.

Upload limits

Upload limits restrict how often and how much data users can upload:

  • maxUploadSize: the maximum size of a single uploaded file, in bytes. Default 50000000.
  • maxConcurrentUploads: the number of concurrent uploads a single user may have in flight. Default 4.
  • uploadTtl: how long each uploaded file is kept in temporary storage before it is deleted. Default "1h".
  • maxUploadCount: the maximum number of files a user may upload within the quota window. Default 1000.
  • uploadQuota: the total aggregate size of uploaded files allowed per user within the quota window, in bytes. Default 50000000.

Object limits

Object limits restrict the number of objects returned or modified by a single method call:

  • getMaxResults: the maximum number of objects that can be fetched in a single method call. Default 500.
  • setMaxObjects: the maximum number of objects that can be modified in a single method call. Default 500.
  • queryMaxResults: the maximum number of results returned by a Query method. Default 5000.
  • changesMaxResults: the maximum number of change objects returned by a Changes method. Default 5000.