Platform limits
The connector uploads files directly, so the standard Nitro PDF Services request limits apply:The higher asynchronous limits (300 MB, 2,500 pages) apply to remote-file input via the REST API.
The connector uses direct upload only, so flows are bound by the standard limits above. For larger
files, split them first or move the step to an HTTP action against the
REST API with a URL input.
Throttling
Nitro also enforces per-account rate limits and returns 429 with a
extensions.retryAfter value (in
seconds) when they are hit. A flow that fans out over a large collection will reach these.
Mitigations:
- Set Concurrency Control on Apply to each to a low degree of parallelism (1–5).
- Add a Delay step inside the loop for large batches.
- Split very large batches across scheduled runs.
Error codes
Every action can return the following responses.400 — Bad request
400 — Bad request
The request was malformed. In a flow this is almost always the JSON in a parameters field: a
missing brace, a smart quote pasted from a document, or a field name that does not match (for
example
pageIndice instead of pageIndices). Also returned when the input PDF is password
protected — unprotect it first — a page index is out of range, or a watermark image is in an
unsupported format.403 — Forbidden
403 — Forbidden
The API application does not have permission for the requested operation.
404 / 405 — Not found / Method not allowed
404 / 405 — Not found / Method not allowed
The operation endpoint could not be resolved. This points at the connector definition rather
than your flow. Delete the step and add it again so Power Automate reloads the connector.
406 — Not acceptable
406 — Not acceptable
The Accept (Output format) value is not one the operation supports. Use
application/octet-stream or application/json.408 — Request timeout
408 — Request timeout
The upload took too long, usually because of network conditions or an oversized payload.
Compress or split the file, or retry.
410 — Gone
410 — Gone
A file referenced by URL is no longer in temporary storage — the 15-minute retention window has
passed. Download results in the same run that produced them.
413 — Content too large
413 — Content too large
The file exceeds the size limit. Compress or split it before the failing step, or move the work
to the REST API with remote-file input.
415 — Unsupported media type
415 — Unsupported media type
The file format is not supported for that operation — for example a
.pages document sent to
Word to PDF, or a Fill PDF Form data file whose name has no recognised extension.422 — Unprocessable entity
422 — Unprocessable entity
The request was well-formed but could not be carried out on this document: a redaction box
outside the page bounds, an invalid regular expression in Extract searched Text, or an
unknown form field with
strict: true on Fill PDF Form. Check the values against the
document with Extract Properties from PDF or Extract PDF Form Data.429 — Too many requests
429 — Too many requests
Rate limited. The response includes
extensions.retryAfter in seconds. Enable Power Automate’s retry
policy on the step, or reduce concurrency as described above.500 — Internal server error
500 — Internal server error
A Nitro-side failure. Retry once; if it persists,
contact support with the flow run ID and the time of the
failure.
Known issues
- Fill PDF Form with Accept = application/json fails with The API operation ‘FillPDFForm’ is
missing required property ‘body/type’ even when the fill succeeded. Leave Accept at
application/octet-streamfor this action. - Extract PDF Table Data and Smart Detect Form Fields list the wrong tokens in the dynamic content picker. Read their results with an expression — see Using JSON outputs.
- The in-designer hints for Split PDF Document (
pageIndice) and Password Protect PDF Document (ownerPredentials) contain typos. The API requirespageIndicesandownerPassword. - OCR processes one language per request. For mixed-language documents choose the dominant language or split the document by language first.
Handling failures in a flow
Wrap Nitro steps in a Scope and add a second scope with Configure run after → has failed, so a failure notifies someone rather than disappearing into the run history. Power Automate’s own retry policy (Settings → Retry Policy) is worth enabling for429 and 500 responses, but
leave it off for 400 and 422 — those will fail identically on every retry.