Skip to content

Limits ​

Every limit the API enforces, in one place.

Files ​

WhatLimitOver-limit response
CSV recipients file5 MB413 File too large. Maximum 5MB.
Excel recipients file10 MB413 File too large. Maximum 10MB.
PDF background20 MB400 PDF must be under 20 MB
Logo image5 MB400 Logo file must be under 5 MB
Return-address logo5 MB400 Logo file must be under 5 MB
Each placed image5 MB400 Image file must be under 5 MB
Images per campaign5400 At most 5 images are allowed
Whole multipart campaign body40 MB413 Request body too large. Maximum 40MB.

Two different codes for "too big"

Per-part image and PDF limits report 400 validation_failed, while the recipients-file and whole-body limits report 413 payload_too_large. Handle both.

Accepted image types: PNG and JPEG only. Anything else is 400 Logo must be a PNG or JPG image / Image must be a PNG or JPG image.

Recipients ​

WhatLimit
Inline recipients per campaign create5,000 rows
Custom fields per recipient16
Custom-field policies per request16

Beyond 5,000 recipients, either import into a list first and send with listId, or split into several campaigns. There is no limit on how many recipients a list may hold.

Field lengths ​

FieldMax
Campaign name200
List name200
Recipient name200
Recipient street255
Recipient postCode20
Recipient postTown100
Recipient country100
Custom-field key64 (alphanumeric + underscore)
Custom-field value512
returnAddress1,000
QR description500
search query200
Idempotency-Key255 (minimum 1)

Exceeding any of these is 400 validation_failed with the field named in details.fieldErrors.

Pagination ​

WhatValue
Default limit20
Maximum limit100
Minimum limit1

Requests ​

WhatLimit
Rate, per key100 requests / 60 s
Rate, per account (all keys together)300 requests / 60 s, burst 60
Rate, per IPA flood shield; not published
Key expiry1–365 days, if set at creation

See Rate limits.

Retention ​

WhatBehaviour
Inactive listDeleted after 90 days without activity
Campaigns of a deleted listKept, with listId and listName set to null

Activity means adding a recipient, importing, or using the list in a campaign. Reading does not count. See Lists & recipients.

Uniqueness ​

Rule
One QR code per campaign — a second is 409 Campaign already has a QR code
One campaign per Idempotency-Key per account — a repeat replays the original
A QR slug is globally unique and permanent

PDF expectations that are not enforced ​

Your responsibility

The API validates only that a PDF part is declared application/pdf, is under 20 MB, and begins with a PDF signature. It does not check:

  • page size (must be A4, 210 × 297 mm),
  • page count (1, or 2 with hasBackPage),
  • orientation,
  • whether artwork avoids the reserved address zones.

A non-conforming PDF is accepted and printed as-is. See PDF campaigns.

No documented limit ​

These have no API-enforced ceiling, which is not a promise that they are unbounded:

  • recipients per list,
  • lists per account,
  • campaigns per account,
  • concurrent in-flight campaigns.

If you are planning a send far beyond your normal volume, confirm capacity before relying on it.