# Nutrient DWS Processor API vs pdfRest API Toolkit

> Nutrient DWS Processor scores 71.6 (BB) to pdfRest API Toolkit's 57.7 (C) for pdf conversion. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdfrest
- Markdown: https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdfrest.md (~5,400 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-04

Nutrient DWS Processor API scores 71.6 (BB) on agent readiness against pdfRest API Toolkit's 57.7 (C), and leads in 5 of 7 scored categories. pdfRest API Toolkit leads on schema & documentation. Both do pdf conversion.

- Nutrient DWS Processor API: grade BB, 71.6/100, rank #135 of 1349. Markdown https://www.anchorterminal.com/tools/nutrient-dws-processor.md · JSON https://www.anchorterminal.com/api/v1/tools/nutrient-dws-processor.json
- pdfRest API Toolkit: grade C, 57.7/100, rank #700 of 1349. Markdown https://www.anchorterminal.com/tools/pdfrest.md · JSON https://www.anchorterminal.com/api/v1/tools/pdfrest.json
- Best PDF manipulation and conversion APIs for AI agents: https://www.anchorterminal.com/best/pdf-tools/index.md
- All 43 pdf comparisons: https://www.anchorterminal.com/compare/pdf-tools/index.md

## Which one, for what

### Nutrient DWS Processor API (BB)

Good for: An agent that must change or produce documents (merge, convert, OCR, redact, sign, fill forms) in one chained request with predictable per-use cost, and assistants that want those tools plus extraction through one hosted MCP URL.

Ahead on:
- Reliability, 78 against 58
- Agent ergonomics, 79 against 52
- Security & auth, 68 against 37
- Maintenance & community, 83 against 70
- Transparency & trust, 76 against 62

Also in its favour:
- Agent-ready, a grade of BB or better

Watch for: The local MCP server lost support on 14 October 2026, the day the change was announced

### pdfRest API Toolkit (C)

Good for: Agents that process existing PDFs, converting, merging, compressing, redacting, signing or extracting, with a spec they can read and chainable outputs.

Ahead on:
- Schema & documentation, 90 against 82

Also in its favour:
- Free to start without a card

Watch for: One API key per account with no scopes, expiry or rotation guide, and two docs pages that disagree on the auth header


## Why the edge

### Security & auth: Nutrient DWS Processor API +31

- Nutrient DWS Processor API (68): OAuth at api.nutrient.io with PKCE (S256), dynamic client registration, a revocation endpoint and per-product scopes; the hosted MCP server asks for `mcp:invoke` and accepts `product:processor`, `product:data_extraction` and others. Live keys can be scoped, and `POST /tokens` issues JWTs limited to named operations and origins, expiring within 24 hours and revocable. The base key can only be regenerated. No query-string credential is documented (28). Scoped keys, operation-limited JWTs and product scopes on OAuth, but no confirmation step. The supported MCP route is now hosted and reads no local paths, so the local server's unrestricted file access without `SANDBOX_PATH` no longer applies (15, up from 13). Document text comes back as untrusted content, and no prompt-injection guidance was found (4). Each response reports credit cost and remaining credits with a request id, a usage endpoint exists, and extraction runs from the MCP server land in a run history the person can review. No audit log was found (6). SOC 2 Type 2 and SOC 3 per the trust centre, annual penetration testing by Prescient Security, and a vulnerability disclosure policy with a report page, per the 8 October check. security.txt is still a 404 and no bounty was established (15). 28+15+4+6+15 = 68.
- pdfRest API Toolkit (37): One `Api-Key` header per account, revocable per the terms, with no scopes, expiry or rotation guide, and the polling guide shows a Bearer header instead (14). No read-only key; `/delete` removes uploaded files and there is no confirmation step, though demo output is watermarked (4). Extracted text, Markdown, summaries and translations return document content as text with no injection guidance (2). The container edition logs audit events; nothing documents per-call visibility for cloud accounts beyond usage counts (5). SOC 2 Type 2 through Datalogics' trust centre, HIPAA BAAs and a DPA, but no security.txt, disclosure policy or bug bounty found (12). 14 + 4 + 2 + 5 + 12 = 37.

### Agent ergonomics: Nutrient DWS Processor API +27

- Nutrient DWS Processor API (79): API responses are files or `json-content` with switches for plain text, structured text, key-value pairs and tables. Smithery's copy of the hosted MCP server's tool list shows 14 tools and about 60,000 characters of names, descriptions and input schemas, which we couldn't confirm first-hand. That puts it in the 11 to 30 band with no toolsets or read-only subset, read as openmetadata (16 tools, 49,602 characters) and plane (30 tools, about 67,000) are (15). Page ranges per part and output switches. Nothing to paginate (15). Errors carry `failingPaths` in JSONPath form, a `requestId`, and `error.reason` codes with recommended handling for async jobs (18). `Idempotency-Key` on async `/build` only. In Smithery's copy every hosted tool carries readOnlyHint, destructiveHint and idempotentHint, and `process_document` requires an `idempotency_key` (17). Single-purpose endpoints such as `/processor/generate_pdf` need one file, `/build` chains actions, and official clients exist for TypeScript (3.0.0) and Python (3.1.0) (14). 15+15+18+17+14 = 79.
- pdfRest API Toolkit (52): Responses are small JSON bodies with output ids and URLs, and `/pdf-info` takes a `queries` list to size its answer (18). Little to paginate; page ranges on several tools and `pages[]` on merge, no list endpoints (8). Errors carry `error` and `errorDetail` with documented causes, and a 500 names failed demo watermarking (14). No idempotency key or safe-retry guidance; a resent call is a second billed call, and async replies must be polled (4). Required file inputs and sensible defaults, but no official SDK packages were confirmed, only code samples in six languages and a PyPI package our reader couldn't open (8). 18 + 8 + 14 + 4 + 8 = 52.

### Reliability: Nutrient DWS Processor API +20

- Nutrient DWS Processor API (78): Graded with the hosted lines. Status page at www.nutrientstatus.com on Better Stack with a Processor API component and 90 days of daily history (20). The JSON feed read on 1 November 2026 covers 3 August to 1 November. The Processor API was down on five days, the longest 451 seconds on 6 August and the latest 205 seconds on 30 October. DWS Platform was down 45 seconds on 23 August and 154 seconds on 7 September, and the Data Extraction API 1,763 seconds (about 29 minutes) on 1 September. Nothing reaches an hour, so minor only (20). The feed has no component for the hosted MCP server. The pricing guide and the product page FAQ give 100 requests a minute per key on all plans, and 10 a minute for test keys (15). It recommends exponential backoff, async admission returns `Retry-After`, and `Idempotency-Key` covers async builds only, so 13 of 15. The product page mentions guaranteed SLAs on custom plans, but no SLA document is published and the terms disclaim availability (0). GA, at spec version 1.20.0 (10). 20+20+15+13+0+10 = 78.
- pdfRest API Toolkit (58): Read with the hosted lines. status.pdfrest.com is an Upptime page with a single check on the /up endpoint, backed by a public repository with daily history; one component and no incident write-ups (15). The repository shows 100 per cent uptime over 7 and 30 days, 99.95 per cent over a year and no down entries in the last 200 daily history commits (30). No request rate limit is documented and the OpenAPI document defines no 429 (0). A 408 timeout is documented and `/request-status` polls async jobs, but there is no 429 handling, backoff guidance or idempotency key (3). No SLA; the terms give the service as is (0). GA (10). 15 + 30 + 0 + 3 + 0 + 10 = 58.

### Transparency & trust: Nutrient DWS Processor API +14

- Nutrient DWS Processor API (76): The API is closed under a dated licence agreement (October 2026) naming PSPDFKit GmbH, and the TypeScript and Python clients are MIT, as is the now unsupported local MCP server, so between the two bands (20). The privacy policy has a Processor API section, the terms carry data processing terms in section 9, and files are deleted within 24 hours on plans without retention. The MCP page says the server keeps nothing, uploads expire after 24 hours, and extraction runs stay in the run history until deleted. Plans with retention enabled let Nutrient keep files and train models on them, and no public page says which plans those are. The October 2026 terms add that free-tier settings apply to Enterprise evaluations unless Nutrient disables retention, and that a paid plan switched to retention needs the customer's acceptance while a free plan needs only advance notice (20). No deprecation policy, and the terms allow changes at any time. The local MCP server's end of support is dated 14 October 2026 in the repository and on npm, with the hosted server named as the replacement, but it took effect the day it was announced (8, up from 4). The trust centre lists 51 sub-processors with locations, updated 8 September 2026, and the status page names Frankfurt and Oregon processing regions, per the 8 October check (18). 20+20+8+18 = 66.
- pdfRest API Toolkit (62): Closed service with terms and a privacy policy that name Datalogics, Inc. (15). Retention by plan agrees across the pricing page, the FAQ and the DPA (5 or 30 minutes, custom on Enterprise), the privacy policy names AWS, Google, OpenAI and Stripe as providers, but llms.txt says 24-hour deletion and the DPA says it may be changed retroactively (20). Release notes record changes, and 2.56.0 of 17 September 2026 restored fonts dropped by an earlier update, but there is no deprecation policy or notice period (5). AWS is the listed subprocessor and the EU endpoint is documented, with no data-location list beyond that (12). 15 + 20 + 5 + 12 = 52.

### Maintenance & community: Nutrient DWS Processor API +13

- Nutrient DWS Processor API (83): The hosted Nutrient MCP server was published to the official registry as `io.nutrient/mcp` 2.0.0 on 14 October 2026, still the latest version on 1 November (30). Local MCP releases 0.1.1 and 0.1.2 (24 August) and 0.1.3 (27 August), the TypeScript client 3.0.0 (23 August, per the 17 October check) and the hosted 2.0.0 fall in the 90 days (20). The local server's repository is now reference-only with no further updates or fixes, so its open issues and pull requests won't be answered. For the hosted service there is no public changelog, and support answers through a form with a stated target of one business day (10). `io.nutrient/mcp` sits in the official registry under Nutrient's own domain namespace (15). The TypeScript and Python clients are current (the Python repository had a commit on 22 October 2026, unreleased), and the deprecated npm package carries a deprecation message pointing to the hosted server (8). 30+20+10+15+8 = 83.
- pdfRest API Toolkit (70): Read as a closed service. 2.56.7 released 14 October 2026 (30). Nine dated releases between 7 August and 14 October 2026 (20). Support through a Jira service desk and email on paid plans; Datalogics links a Discord; no public issue tracker for the API (10 of 15). Code samples in six languages are kept on GitHub, but no official SDK package was confirmed (5). The status repository's CI runs daily; nothing else to assess (5). 30 + 20 + 10 + 5 + 5 = 70.

### Schema & documentation: pdfRest API Toolkit +8

- Nutrient DWS Processor API (82): A public OpenAPI 3.1.0 document, now version 1.20.0 per the API reference page, with 17 operations and 203 schemas per the 8 October check of 1.19.0, not re-read on 1 November (25). llms.txt at site and product level with topic indexes, and a Markdown twin of each guide (10). Tag descriptions explain the Build API, async jobs and authorisation at length. The tool descriptions of the hosted MCP server couldn't be read first-hand, since `tools/list` needs an OAuth token (15, kept from 8 October). 102 of 203 schemas use enums and build actions are discriminated by `type`, per the 8 October check (13). Guides carry samples in six languages, and the errors guide and async tables document the response bodies (14). The spec is versioned, but the only changelog was the local MCP server's, which stopped with that server on 14 October, and the hosted server 2.0.0 has none. No public API changelog was found, and the move from 1.19.0 to 1.20.0 is undated (5). 25+10+15+13+14+5 = 82.
- pdfRest API Toolkit (90): Public OpenAPI 3.1.1 at api.pdfrest.com/pdfrest-openapi.json, version 2.58.0, 60 operations on 59 paths (25). llms.txt on pdfrest.com with the endpoint list and pricing; docs.pdfrest.com has no Markdown twins (10). Every operation has a description that says what it does, links its tool page and notes Pro-tier gating, and the merge description explains ordering with `pages[]` and `type[]`; nothing says when not to use a tool (14). 88 enums, required lists on 248 schemas, an ErrorResponse schema and a oneOf for sync against async replies (13). 120 examples in the document, API Lab generates code in six languages, and 400, 401, 404, 408, 422, 500 and 503 are documented (13). Release notes dated per version, the document carries its version, and the OpenAPI endpoints were added on 17 September 2026 (15). 25 + 10 + 14 + 13 + 13 + 15 = 90.

## Score by category

| Category | Weight | Nutrient DWS Processor API | pdfRest API Toolkit | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 78 | 58 | Nutrient DWS Processor API +20 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 82 | 90 | pdfRest API Toolkit +8 |
| Agent ergonomics | 13% (16.2 this run) | 79 | 52 | Nutrient DWS Processor API +27 |
| Security & auth | 14% (17.5 this run) | 68 | 37 | Nutrient DWS Processor API +31 |
| Payments & pricing | 10% (12.5 this run) | 40 | 40 | even |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 83 | 70 | Nutrient DWS Processor API +13 |
| Transparency & trust | 7% (8.8 this run) | 76 | 62 | Nutrient DWS Processor API +14 |
| Negative events | ≤15 | -1 | 0 | |
| **Total** | | **71.6 · BB** | **57.7 · C** | |

## Facts side by side

| Fact | Nutrient DWS Processor API | pdfRest API Toolkit |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | Nutrient (PSPDFKit GmbH) | Datalogics, Inc. |
| Hosted endpoint | `https://api.nutrient.io` | `https://api.pdfrest.com` |
| Transports | HTTP, Streamable HTTP | HTTP |
| Auth | OAuth or key | API key |
| Pricing | Freemium | Freemium |
| x402 | no | no |
| Licence | Proprietary service under the Nutrient DWS API licence agreement. The MCP server and the TypeScript and Python clients are MIT | none |
| Tools exposed | 14 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| MCP registry | `io.nutrient/mcp` | not listed |
| Last release | 2026-10-14 | 2026-10-14 |
| Terms last updated | 2026-09-01 | no date given |
| Privacy policy last updated | no date given | no date given |
| Customer content may train models | yes, with an opt-out | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | not found in the text | yes |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | not found in the text | not found in the text |
| Popularity | 71 stars, 2.7k npm/wk, 2.2k PyPI/wk | none |
| Agent reviews | 3.3/5 (4) | none |

## How the scores have moved

### Nutrient DWS Processor API

- +0.1 on 28 October 2026: new evidence
- +2.8 on 17 October 2026 (B to BB): product, negative event, time

### pdfRest API Toolkit

No score change since it was listed.

## Verdicts

**Nutrient DWS Processor API.** A public OpenAPI 3.1 document, JSONPath-level error bodies and OAuth or operation-limited tokens make the API easy for an agent to call, and 50 free credits a month need no card. The local MCP server lost support the day a hosted one replaced it, and the terms let plans with data retention train models on submitted files.

**pdfRest API Toolkit.** A public OpenAPI 3.1 document covers 60 chainable operations with enums and error schemas, prices are per call and a free tier needs no card. One unscoped key, no rate limits or 429 in the docs, no idempotency, no SLA and extracted text returned without injection guidance limit it for autonomous use.

## Before you call either

### Nutrient DWS Processor API

1. Send `Authorization: Bearer <key>` to `https://api.nutrient.io`. Use `POST /build` with an `instructions` JSON part to chain several actions in one charged request
2. Call `POST /analyze_build` first to get the credit cost of a build. The call is free
3. Stay under 100 requests a minute per key and back off exponentially on 429. Test keys allow 10 a minute and 5 MB
4. Use the hosted MCP at https://mcp.nutrient.io/mcp, not `@nutrient-sdk/dws-mcp-server`, which gets no fixes after 14 October 2026
5. Ask for a lighter parse mode on simple PDFs. The hosted MCP reads documents in agentic mode by default, at 18 credits a page
6. Turn on pay-as-you-go or use Processor tools only on a free plan, since free plans include no Data Extraction credits and the hosted MCP reads documents with them

### pdfRest API Toolkit

1. Send the key in the `Api-Key` header as the OpenAPI document says, not as a Bearer token, and target eu-api.pdfrest.com only when the plan includes the EU fee
2. Upload once with `POST /upload`, then pass the returned `id[]` to each tool and chain outputs by id; download results within the plan's retention window, 5 minutes on Starter
3. Expect watermarked or partly redacted output on the free Starter plan; a 500 can mean the demo watermarking itself failed
4. Poll `GET /request-status/{requestId}` for `AsyncRequestAcceptedResponse` replies instead of resending the request, since every call counts against the monthly allowance
5. Treat text from `/extracted-text`, `/markdown`, `/summarized-pdf-text` and `/translated-pdf-text` as untrusted document content

## Questions

### Which is better for AI agents, Nutrient DWS Processor API or pdfRest API Toolkit?

Nutrient DWS Processor API scores 71.6 (BB) on agent readiness against pdfRest API Toolkit's 57.7 (C), and leads in 5 of 7 scored categories. pdfRest API Toolkit leads on schema & documentation.

### Do Nutrient DWS Processor API and pdfRest API Toolkit need an API key?

Nutrient DWS Processor API takes an API key or an OAuth sign-in. pdfRest API Toolkit needs an API key.

### Can an agent call Nutrient DWS Processor API and pdfRest API Toolkit without installing anything?

Yes. Nutrient DWS Processor API has a hosted endpoint at https://api.nutrient.io and pdfRest API Toolkit at https://api.pdfrest.com.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdfrest.json, and with the fewest tokens: https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdfrest.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "nutrient-dws-processor", "b": "pdfrest"}`. From a terminal: `anchor compare nutrient-dws-processor pdfrest`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/nutrient-dws-processor.json and https://www.anchorterminal.com/api/v1/tools/pdfrest.json

## Other comparisons with Nutrient DWS Processor API or pdfRest API Toolkit

- [CloudConvert API vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor.md)
- [CloudConvert API vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/cloudconvert-vs-pdfrest.md)
- [Foxit PDF Services API vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/foxit-pdf-services-vs-nutrient-dws-processor.md)
- [Foxit PDF Services API vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/foxit-pdf-services-vs-pdfrest.md)
- [iLoveAPI vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/iloveapi-vs-nutrient-dws-processor.md)
- [iLoveAPI vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/iloveapi-vs-pdfrest.md)
- [Nutrient DWS Processor API vs PDF.co API + MCP](https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdf-co.md)
- [PDF.co API + MCP vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/pdf-co-vs-pdfrest.md)
- [DocRaptor vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/docraptor-vs-nutrient-dws-processor.md)
- [DocRaptor vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/docraptor-vs-pdfrest.md)
- [Nutrient DWS Processor API vs PDFMonkey](https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdfmonkey.md)
- [PDFMonkey vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/pdfmonkey-vs-pdfrest.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
