{
  "data": {
    "a": {
      "slug": "adobe-pdf-extract",
      "name": "Adobe PDF Services / PDF Extract API",
      "vendor": "Adobe",
      "vendorUrl": "https://developer.adobe.com/document-services/",
      "kind": "http-api",
      "category": "document-extraction",
      "summary": "Adobe's REST API for reading and changing PDFs.",
      "url": "https://www.anchorterminal.com/tools/adobe-pdf-extract",
      "markdownUrl": "https://www.anchorterminal.com/tools/adobe-pdf-extract.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/adobe-pdf-extract.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/adobe-pdf-extract.json",
      "repo": "https://github.com/adobe/pdfservices-python-sdk-samples",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://pdf-services.adobe.io",
      "packages": [
        {
          "registry": "pypi",
          "name": "pdfservices-sdk"
        },
        {
          "registry": "npm",
          "name": "@adobe/pdfservices-node-sdk"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth server-to-server. POST client_id and client_secret to /token for an access token, then send it as Bearer plus the client id in `x-api-key`. JWT service accounts are deprecated.",
      "pricing": "freemium",
      "pricingNotes": "Free tier of 500 Document Transactions a month with no card. Extract and PDF to Markdown use 1 transaction per 5 pages, most other operations 1 per 50 pages, Auto-Tag 10 a page. Paid use is sold through sales on volume or enterprise terms, and no per-transaction price is published (https://developer.adobe.com/document-services/pricing/main/).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 in docs or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 165,
        "npmWeekly": 81553,
        "pypiWeekly": 58026,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/",
      "openapi": "https://raw.githubusercontent.com/AdobeDocs/pdfservices-api-documentation/main/static/openapi.json",
      "capabilities": [
        "docs.parse",
        "docs.ocr",
        "docs.extract",
        "docs.tables",
        "pdf.convert",
        "pdf.merge",
        "pdf.forms",
        "pdf.generate",
        "pdf.extract"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "free-tier",
        "enterprise",
        "closed-source",
        "openapi",
        "webhooks",
        "python",
        "typescript",
        "async-jobs"
      ],
      "lastRelease": "2026-08-10",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.9,
        "grade": "C",
        "agentReady": false,
        "rank": 441,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 57,
          "maintenance": 53,
          "payments": 20,
          "reliability": 50,
          "schema": 80,
          "security": 55,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Public OpenAPI 3.0.1 spec covering Extract, PDF to Markdown and 20 other operations. No published paid price, paid use goes through sales.",
        "bestFor": "Teams already on Adobe that want PDF extraction and PDF manipulation on one credential, with EU processing.",
        "strengths": [
          "Public OpenAPI 3.0.1 spec covering Extract, PDF to Markdown and 20 other operations",
          "Extract error codes name the cause, such as DISQUALIFIED_SCAN_PAGE_LIMIT or BAD_PDF_COMPLEX_TABLE",
          "500 free Document Transactions a month with no card",
          "Files kept 24 hours by default, deletable at once, or never stored when you pass signed URLs",
          "security.txt and a public bug bounty on Intigriti"
        ],
        "weaknesses": [
          "No published paid price, paid use goes through sales",
          "Four steps per job (token, upload, operation, poll) and no idempotency key",
          "25 requests a minute on the free tier, no Retry-After or backoff guidance",
          "Node.js SDK unchanged since November 2024 and no llms.txt",
          "Status page renders only with JavaScript"
        ],
        "agentNotes": [
          "Cache the access token and reuse it until it expires",
          "Budget 1 Document Transaction per 5 pages for Extract and PDF to Markdown, so 500 free transactions cover about 2,500 pages",
          "Pass `notifiers` with a callback URL instead of polling the job status",
          "Use `pdf-services-ew1.adobe.io` when documents must stay in the EU",
          "Check `/operation/pdfproperties` first, since copy-protected PDFs fail Extract with DISQUALIFIED_PERMISSIONS"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.9
          }
        ],
        "editorialScores": {
          "ergonomics": 57,
          "maintenance": 53,
          "payments": 20,
          "reliability": 50,
          "schema": 80,
          "security": 55,
          "transparency": 60
        },
        "provenanceScore": 96
      },
      "connect": {
        "install": "pip install pdfservices-sdk   # or: npm i @adobe/pdfservices-node-sdk",
        "http": "curl https://pdf-services.adobe.io/token \\\n  -H \"content-type: application/x-www-form-urlencoded\" \\\n  --data-urlencode \"client_id=$PDF_SERVICES_CLIENT_ID\" --data-urlencode \"client_secret=$PDF_SERVICES_CLIENT_SECRET\""
      },
      "letme": {
        "capability": "https://letme.dev/docs.parse",
        "tool": "https://letme.dev/adobe-pdf-extract"
      },
      "sameCompany": [
        "adobe-firefly",
        "adobe-photoshop-api"
      ],
      "alsoIn": [
        "pdf-tools"
      ],
      "area": "web-data",
      "provenance": {
        "legalEntity": "Adobe Inc.",
        "domain": "adobe.com",
        "domainRegistered": "1986-11-17",
        "endpointOnVendorDomain": true,
        "terms": "https://www.adobe.com/legal/terms.html",
        "privacy": "https://www.adobe.com/privacy/policy.html",
        "statusPage": "https://status.adobe.com/products/512699",
        "changelog": "https://developer.adobe.com/document-services/docs/overview/releasenotes",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "notes": [
          "The API is served from pdf-services.adobe.io, Adobe's developer API domain, not adobe.com",
          "The status page is the PDF Services product page the docs link to, and it needs JavaScript to render"
        ],
        "score": 96
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/adobe-pdf-extract.json",
      "live": {
        "slug": "adobe-pdf-extract",
        "probe": {
          "target": "https://pdf-services.adobe.io",
          "method": "get",
          "lastAt": "2026-10-08T19:08:38.312367446Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 326,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 261,
          "p95ms24h": 373,
          "samples24h": 272,
          "samples30d": 2135,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 217,
              "ok": 217
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.adobe.com/products/512699",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T17:50:19.68632763Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "adobe/pdfservices-python-sdk-samples",
            "version": "v4.2.0",
            "released": "2025-07-11",
            "seenAt": "2026-10-08T15:56:37.430445927Z"
          },
          {
            "registry": "npm",
            "name": "@adobe/pdfservices-node-sdk",
            "version": "4.1.0",
            "seenAt": "2026-10-08T15:56:34.625898293Z"
          },
          {
            "registry": "pypi",
            "name": "pdfservices-sdk",
            "version": "4.3.0",
            "released": "2026-08-10",
            "seenAt": "2026-10-08T15:56:31.234161933Z"
          }
        ],
        "githubStars": 165,
        "npmWeekly": 77638,
        "pypiWeekly": 64365,
        "securityTxt": {
          "url": "https://adobe.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-07-30T01:00:00.000Z",
          "checkedAt": "2026-10-08T15:38:56.613662215Z"
        },
        "domain": {
          "domain": "adobe.com",
          "registered": "1986-11-17",
          "source": "https://rdap.verisign.com/com/v1/domain/adobe.com",
          "checkedAt": "2026-10-04T13:03:40.934529293Z"
        },
        "pages": [
          {
            "url": "https://developer.adobe.com/document-services/docs/overview/releasenotes",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-08T18:17:02.71984203Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "27885eb31d8e"
          },
          {
            "url": "https://developer.adobe.com/document-services/pricing/main/",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-08T18:17:04.729379436Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bf518d524ead"
          }
        ],
        "updatedAt": "2026-10-08T19:08:38.312367446Z"
      }
    },
    "answer": "Adobe PDF Services / PDF Extract API scores 55.9 (C) on agent readiness against Invofox's 46.8 (D), and leads in 5 of 7 scored categories. Invofox leads on agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "invofox",
      "name": "Invofox",
      "vendor": "Invofox, Inc.",
      "vendorUrl": "https://www.invofox.com",
      "kind": "http-api",
      "category": "document-extraction",
      "summary": "Invofox is a hosted API that extracts structured, validated JSON from PDFs and images such as invoices, payslips, bank statements and custom document types, with a classifier and a splitter. Results arrive by webhook or polling.",
      "url": "https://www.anchorterminal.com/tools/invofox",
      "markdownUrl": "https://www.anchorterminal.com/tools/invofox.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/invofox.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/invofox.json",
      "license": "Proprietary hosted service. The n8n community node on GitHub is MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.invofox.com",
      "packages": [],
      "auth": "api-key",
      "authNotes": "API key in an `x-api-key` header, created by a person under API and Webhooks in the dashboard at app.invofox.com after a self-serve sign-up. Each key is scoped to one environment, which is configured as TEST or PRODUCTION. The ingest OpenAPI file also defines an `x-access-token` header for browser sessions. No OAuth, and no scoped or read-only keys were found. Webhooks can be signed with HMAC, sent in an `x-invofox-signature` header.",
      "pricing": "freemium",
      "pricingNotes": "Free plan of 500 pages with REST API access, self-serve sign-up and no card. Starter is from $500 a month billed annually for up to 5,000 pages a month, with email support and a stated 99.9% uptime SLA. Scale and Enterprise are custom. Billing is per page, with no per-page or overage rate published. The YC launch post of 5 October 2026 mentions 1,500 free pages for new users, which the pricing page does not show (https://www.invofox.com/en/pricing.md, checked 2026-10-08).",
      "priceSummary": "$500 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the three OpenAPI files or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.invofox.com/documentation/start-here",
      "llmsTxt": "https://developers.invofox.com/llms.txt",
      "openapi": "https://www.invofox.com/openapi.yaml",
      "capabilities": [
        "docs.extract",
        "docs.ocr",
        "docs.classify"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "openapi",
        "llms-txt",
        "webhooks",
        "async-jobs",
        "api-key",
        "closed-source",
        "soc2"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 46.8,
        "grade": "D",
        "agentReady": false,
        "rank": 557,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 30,
          "payments": 30,
          "reliability": 30,
          "schema": 70,
          "security": 45,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Three public OpenAPI 3.1 files, llms.txt and Markdown docs describe an asynchronous upload and webhook flow, and the free plan covers 500 pages without a card. No status page, rate limit numbers, changelog or official SDK were found, and documents are retained by default, with zero retention limited to Scale and Enterprise.",
        "bestFor": "Teams that process a known set of business documents (invoices, payslips, bank statements, mortgage forms) at volume and can receive webhooks.",
        "strengths": [
          "Three public OpenAPI 3.1 files (main 25 operations, ingest 7, seven webhook events), plus llms.txt and a Markdown twin of every docs page",
          "Free plan of 500 pages with REST API access and no card, by self-serve sign-up opened on 5 October 2026",
          "The document list takes `select` field projection, `filter` operators, `sort`, and `skip` and `limit` up to 500",
          "429 responses carry RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset and Retry-After headers, per the main OpenAPI file",
          "security.txt valid until 1 June 2027, and the vendor states SOC 2 Type II and ISO 27001:2022 certification"
        ],
        "weaknesses": [
          "No status page found. status.invofox.com does not resolve, and neither the site nor the docs link to one",
          "No rate limit numbers. The vendor's own AI briefing says rate limits and page limits per file are not publicly documented",
          "No public changelog and no official SDK. The only package is an n8n community node at 0.1.0",
          "Documents are retained by default and used to tune models. Zero retention is opt-in on Scale and Enterprise only",
          "The General Terms and Conditions that the published DPA relies on were not found on the site"
        ],
        "agentNotes": [
          "Ask the owner for an API key and the Document Type id or alias from app.invofox.com. No API endpoint lists Document Types",
          "Upload with POST /v1/ingest/uploads as multipart, with `info` as a JSON string. Send `\"useClassifier\": true` in place of `type` to have the type detected",
          "Expect 404 from GET /documents/{id} for the first seconds. Poll from 5 seconds with doubling, and stop at approved, pendingCorrection or discarded",
          "Handle the `file.rejected` webhook or check the import. A rejected file never produces a document, so polling the document waits indefinitely",
          "Do not retry an upload blindly. There is no idempotency key, so send your own id in `clientData` and look it up with `filter` first"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 46.8
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 30,
          "payments": 30,
          "reliability": 30,
          "schema": 70,
          "security": 45,
          "transparency": 40
        },
        "provenanceScore": 69
      },
      "connect": {
        "http": "curl -s -X POST \"https://api.invofox.com/v1/ingest/uploads\" \\\n  -H \"x-api-key: $INVOFOX_API_KEY\" \\\n  -F \"files=@invoice.pdf\" \\\n  -F 'info={\"type\":\"\u003cTYPE_ID\u003e\",\"clientData\":{\"internalId\":\"inv-1234\"}}'"
      },
      "letme": {
        "capability": "https://letme.dev/docs.extract",
        "tool": "https://letme.dev/invofox"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 500,
          "note": "from $500, billed annually, up to 5,000 pages a month"
        },
        {
          "item": "Starter at its 5,000-page cap",
          "unit": "1k-pages",
          "usd": 100,
          "note": "derived from the plan price, no per-page rate is published"
        }
      ],
      "provenance": {
        "legalEntity": "Invofox, Inc. (Delaware), with a registered branch in Spain",
        "domain": "invofox.com",
        "domainRegistered": "2021-05-10",
        "endpointOnVendorDomain": true,
        "terms": "https://www.invofox.com/en/legal/#terms",
        "privacy": "https://www.invofox.com/en/legal/",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The DPA names INVOFOX, Inc., registered with the Delaware Division of Corporations under number 7218056, 251 Little Falls Drive, Wilmington, DE 19808.",
          "The legal notice names INVOFOX INC, BRANCH IN SPAIN, C/ Aranjuez 2, 28039 Madrid, tax ID W0265699I.",
          "The terms link is a website legal notice. The General Terms and Conditions for the platform, which the DPA cites, were not found on the public site.",
          "www.invofox.com/.well-known/security.txt gives security@invofox.com and expires on 1 June 2027. The apex invofox.com returns 404 for the same path.",
          "status.invofox.com does not resolve, and no status page or changelog is linked from the site or the docs.",
          "RDAP for invofox.com gives a registration date of 2021-05-10."
        ],
        "score": 69
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/invofox.json",
      "live": {
        "slug": "invofox",
        "probe": {
          "target": "https://api.invofox.com",
          "method": "get",
          "lastAt": "2026-10-08T19:08:49.896536796Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 210,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 55,
          "p95ms24h": 151,
          "samples24h": 42,
          "samples30d": 42,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 42,
              "ok": 42
            }
          ]
        },
        "securityTxt": {
          "url": "https://invofox.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:38.124664002Z"
        },
        "pages": [
          {
            "url": "https://www.invofox.com/en/pricing.md",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:34.537924989Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "caa9c0c0ae2c"
          },
          {
            "url": "https://www.invofox.com/en/legal/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:32.423224288Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "621168b3651a"
          }
        ],
        "updatedAt": "2026-10-08T19:08:49.896536796Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Adobe",
        "b": "Invofox, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://pdf-services.adobe.io",
        "b": "https://api.invofox.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary hosted service. The n8n community node on GitHub is MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-08-10",
        "b": "2026-10-05",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2025-10-24",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "165 stars, 82k npm/wk, 58k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Adobe PDF Services / PDF Extract API scores 55.9 (C) on agent readiness against Invofox's 46.8 (D), and leads in 5 of 7 scored categories. Invofox leads on agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Adobe PDF Services / PDF Extract API or Invofox?"
      },
      {
        "answer": "Adobe PDF Services / PDF Extract API uses an OAuth sign-in. Invofox needs an API key.",
        "question": "Do Adobe PDF Services / PDF Extract API and Invofox need an API key?"
      },
      {
        "answer": "Yes. Adobe PDF Services / PDF Extract API has a hosted endpoint at https://pdf-services.adobe.io and Invofox at https://api.invofox.com.",
        "question": "Can an agent call Adobe PDF Services / PDF Extract API and Invofox without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 50 against 30",
          "Schema \u0026 documentation, 80 against 70",
          "Security \u0026 auth, 55 against 45",
          "Maintenance \u0026 community, 53 against 30",
          "Transparency \u0026 trust, 78 against 55"
        ],
        "also": null,
        "goodFor": "Teams already on Adobe that want PDF extraction and PDF manipulation on one credential, with EU processing.",
        "slug": "adobe-pdf-extract",
        "watchFor": "No published paid price, paid use goes through sales"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 64 against 57",
          "Payments \u0026 pricing, 30 against 20"
        ],
        "also": null,
        "goodFor": "Teams that process a known set of business documents (invoices, payslips, bank statements, mortgage forms) at volume and can receive webhooks.",
        "slug": "invofox",
        "watchFor": "No status page found. status.invofox.com does not resolve, and neither the site nor the docs link to one"
      }
    ],
    "job": {
      "capability": "docs.extract",
      "name": "Docs extract"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-extend.json",
        "title": "Adobe PDF Services / PDF Extract API vs Extend API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-extend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-llamaparse.json",
        "title": "Adobe PDF Services / PDF Extract API vs LlamaParse API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-llamaparse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-mistral-ocr.json",
        "title": "Adobe PDF Services / PDF Extract API vs Mistral OCR API",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-mistral-ocr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-nanonets.json",
        "title": "Adobe PDF Services / PDF Extract API vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-opendocrouter.json",
        "title": "Adobe PDF Services / PDF Extract API vs OpenDocRouter",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-opendocrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-reducto.json",
        "title": "Adobe PDF Services / PDF Extract API vs Reducto API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-reducto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-unstructured.json",
        "title": "Adobe PDF Services / PDF Extract API vs Unstructured API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-unstructured"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-mindee.json",
        "title": "Adobe PDF Services / PDF Extract API vs Mindee API",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-mindee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-veryfi.json",
        "title": "Adobe PDF Services / PDF Extract API vs Veryfi API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-veryfi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-opendocrouter.json",
        "title": "Invofox vs OpenDocRouter",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-opendocrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/extend-vs-invofox.json",
        "title": "Extend API + MCP vs Invofox",
        "url": "https://www.anchorterminal.com/compare/extend-vs-invofox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-llamaparse.json",
        "title": "Invofox vs LlamaParse API + MCP",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-llamaparse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-mindee.json",
        "title": "Invofox vs Mindee API",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-mindee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-mistral-ocr.json",
        "title": "Invofox vs Mistral OCR API",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-mistral-ocr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-nanonets.json",
        "title": "Invofox vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-reducto.json",
        "title": "Invofox vs Reducto API + MCP",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-reducto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-unstructured.json",
        "title": "Invofox vs Unstructured API + MCP",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-unstructured"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-veryfi.json",
        "title": "Invofox vs Veryfi API + MCP",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-veryfi"
      }
    ],
    "scores": [
      {
        "adobe-pdf-extract": 50,
        "by": 20,
        "edge": "adobe-pdf-extract",
        "invofox": 30,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "adobe-pdf-extract": 80,
        "by": 10,
        "edge": "adobe-pdf-extract",
        "invofox": 70,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "adobe-pdf-extract": 57,
        "by": 7,
        "edge": "invofox",
        "invofox": 64,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "adobe-pdf-extract": 55,
        "by": 10,
        "edge": "adobe-pdf-extract",
        "invofox": 45,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "adobe-pdf-extract": 20,
        "by": 10,
        "edge": "invofox",
        "invofox": 30,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "adobe-pdf-extract": 53,
        "by": 23,
        "edge": "adobe-pdf-extract",
        "invofox": 30,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "adobe-pdf-extract": 78,
        "by": 23,
        "edge": "adobe-pdf-extract",
        "invofox": 55,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Adobe PDF Services / PDF Extract API scores 55.9 (C) on agent readiness against Invofox's 46.8 (D), and leads in 5 of 7 scored categories. Invofox leads on agent ergonomics and payments \u0026 pricing. Both do docs extract.",
    "verdicts": {
      "adobe-pdf-extract": "Public OpenAPI 3.0.1 spec covering Extract, PDF to Markdown and 20 other operations. No published paid price, paid use goes through sales.",
      "invofox": "Three public OpenAPI 3.1 files, llms.txt and Markdown docs describe an asynchronous upload and webhook flow, and the free plan covers 500 pages without a card. No status page, rate limit numbers, changelog or official SDK were found, and documents are retained by default, with zero retention limited to Scale and Enterprise."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox",
    "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox.md",
    "slim": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox.min.md"
  },
  "markdown": "Adobe PDF Services / PDF Extract API scores 55.9 (C) on agent readiness against Invofox's 46.8 (D), and leads in 5 of 7 scored categories. Invofox leads on agent ergonomics and payments \u0026 pricing. Both do docs extract.\n\n- Adobe PDF Services / PDF Extract API: grade C, 55.9/100, rank #441 of 629. Markdown https://www.anchorterminal.com/tools/adobe-pdf-extract.md · JSON https://www.anchorterminal.com/api/v1/tools/adobe-pdf-extract.json\n- Invofox: grade D, 46.8/100, rank #557 of 629. Markdown https://www.anchorterminal.com/tools/invofox.md · JSON https://www.anchorterminal.com/api/v1/tools/invofox.json\n\n## Which one, for what\n\n### Adobe PDF Services / PDF Extract API (C)\n\nGood for: Teams already on Adobe that want PDF extraction and PDF manipulation on one credential, with EU processing.\n\nAhead on:\n- Reliability, 50 against 30\n- Schema \u0026 documentation, 80 against 70\n- Security \u0026 auth, 55 against 45\n- Maintenance \u0026 community, 53 against 30\n- Transparency \u0026 trust, 78 against 55\n\nWatch for: No published paid price, paid use goes through sales\n\n### Invofox (D)\n\nGood for: Teams that process a known set of business documents (invoices, payslips, bank statements, mortgage forms) at volume and can receive webhooks.\n\nAhead on:\n- Agent ergonomics, 64 against 57\n- Payments \u0026 pricing, 30 against 20\n\nWatch for: No status page found. status.invofox.com does not resolve, and neither the site nor the docs link to one\n\n\n## Score by category\n\n| Category | Weight | Adobe PDF Services / PDF Extract API | Invofox | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 50 | 30 | Adobe PDF Services / PDF Extract API +20 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 70 | Adobe PDF Services / PDF Extract API +10 |\n| Agent ergonomics | 13% (16.2 this run) | 57 | 64 | Invofox +7 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 45 | Adobe PDF Services / PDF Extract API +10 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | Invofox +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 53 | 30 | Adobe PDF Services / PDF Extract API +23 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 78 | 55 | Adobe PDF Services / PDF Extract API +23 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **55.9 · C** | **46.8 · D** | |\n\n## Facts side by side\n\n| Fact | Adobe PDF Services / PDF Extract API | Invofox |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Adobe | Invofox, Inc. |\n| Hosted endpoint | `https://pdf-services.adobe.io` | `https://api.invofox.com` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | API key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | none | Proprietary hosted service. The n8n community node on GitHub is MIT |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-08-10 | 2026-10-05 |\n| Terms last updated | couldn't be read | no date given |\n| Privacy policy last updated | 2025-10-24 | no date given |\n| Customer content may train models | couldn't be read | not found in the text |\n| Terms restrict automated access | couldn't be read | not found in the text |\n| Terms restrict benchmarking | couldn't be read | not found in the text |\n| Terms or service can change without notice | couldn't be read | not found in the text |\n| Arbitration or class-action waiver | couldn't be read | not found in the text |\n| Popularity | 165 stars, 82k npm/wk, 58k PyPI/wk | none |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\n\n**Adobe PDF Services / PDF Extract API.** Public OpenAPI 3.0.1 spec covering Extract, PDF to Markdown and 20 other operations. No published paid price, paid use goes through sales.\n\n**Invofox.** Three public OpenAPI 3.1 files, llms.txt and Markdown docs describe an asynchronous upload and webhook flow, and the free plan covers 500 pages without a card. No status page, rate limit numbers, changelog or official SDK were found, and documents are retained by default, with zero retention limited to Scale and Enterprise.\n\n## Before you call either\n\n### Adobe PDF Services / PDF Extract API\n\n1. Cache the access token and reuse it until it expires\n2. Budget 1 Document Transaction per 5 pages for Extract and PDF to Markdown, so 500 free transactions cover about 2,500 pages\n3. Pass `notifiers` with a callback URL instead of polling the job status\n4. Use `pdf-services-ew1.adobe.io` when documents must stay in the EU\n5. Check `/operation/pdfproperties` first, since copy-protected PDFs fail Extract with DISQUALIFIED_PERMISSIONS\n\n### Invofox\n\n1. Ask the owner for an API key and the Document Type id or alias from app.invofox.com. No API endpoint lists Document Types\n2. Upload with POST /v1/ingest/uploads as multipart, with `info` as a JSON string. Send `\"useClassifier\": true` in place of `type` to have the type detected\n3. Expect 404 from GET /documents/{id} for the first seconds. Poll from 5 seconds with doubling, and stop at approved, pendingCorrection or discarded\n4. Handle the `file.rejected` webhook or check the import. A rejected file never produces a document, so polling the document waits indefinitely\n5. Do not retry an upload blindly. There is no idempotency key, so send your own id in `clientData` and look it up with `filter` first\n\n## Questions\n\n### Which is better for AI agents, Adobe PDF Services / PDF Extract API or Invofox?\n\nAdobe PDF Services / PDF Extract API scores 55.9 (C) on agent readiness against Invofox's 46.8 (D), and leads in 5 of 7 scored categories. Invofox leads on agent ergonomics and payments \u0026 pricing.\n\n### Do Adobe PDF Services / PDF Extract API and Invofox need an API key?\n\nAdobe PDF Services / PDF Extract API uses an OAuth sign-in. Invofox needs an API key.\n\n### Can an agent call Adobe PDF Services / PDF Extract API and Invofox without installing anything?\n\nYes. Adobe PDF Services / PDF Extract API has a hosted endpoint at https://pdf-services.adobe.io and Invofox at https://api.invofox.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox.json, and with the fewest tokens: https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"adobe-pdf-extract\", \"b\": \"invofox\"}`. From a terminal: `anchor compare adobe-pdf-extract invofox`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/adobe-pdf-extract.json and https://www.anchorterminal.com/api/v1/tools/invofox.json\n\n## Other comparisons with Adobe PDF Services / PDF Extract API or Invofox\n\n- [Adobe PDF Services / PDF Extract API vs Extend API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-extend.md)\n- [Adobe PDF Services / PDF Extract API vs LlamaParse API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-llamaparse.md)\n- [Adobe PDF Services / PDF Extract API vs Mistral OCR API](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-mistral-ocr.md)\n- [Adobe PDF Services / PDF Extract API vs Nanonets API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-nanonets.md)\n- [Adobe PDF Services / PDF Extract API vs OpenDocRouter](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-opendocrouter.md)\n- [Adobe PDF Services / PDF Extract API vs Reducto API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-reducto.md)\n- [Adobe PDF Services / PDF Extract API vs Unstructured API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-unstructured.md)\n- [Adobe PDF Services / PDF Extract API vs Mindee API](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-mindee.md)\n- [Adobe PDF Services / PDF Extract API vs Veryfi API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-veryfi.md)\n- [Invofox vs OpenDocRouter](https://www.anchorterminal.com/compare/invofox-vs-opendocrouter.md)\n- [Extend API + MCP vs Invofox](https://www.anchorterminal.com/compare/extend-vs-invofox.md)\n- [Invofox vs LlamaParse API + MCP](https://www.anchorterminal.com/compare/invofox-vs-llamaparse.md)\n- [Invofox vs Mindee API](https://www.anchorterminal.com/compare/invofox-vs-mindee.md)\n- [Invofox vs Mistral OCR API](https://www.anchorterminal.com/compare/invofox-vs-mistral-ocr.md)\n- [Invofox vs Nanonets API + MCP](https://www.anchorterminal.com/compare/invofox-vs-nanonets.md)\n- [Invofox vs Reducto API + MCP](https://www.anchorterminal.com/compare/invofox-vs-reducto.md)\n- [Invofox vs Unstructured API + MCP](https://www.anchorterminal.com/compare/invofox-vs-unstructured.md)\n- [Invofox vs Veryfi API + MCP](https://www.anchorterminal.com/compare/invofox-vs-veryfi.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Adobe PDF Services / PDF Extract API vs Invofox",
        "url": ""
      }
    ],
    "description": "Adobe PDF Services / PDF Extract API scores 55.9 (C) on agent readiness against Invofox's 46.8 (D), and leads in 5 of 7 scored categories. Invofox leads on agent ergonomics and payments \u0026 pricing. Both do docs extract. Category scores, facts, verdicts and agent notes side by…",
    "facts": [
      "Adobe PDF Services / PDF Extract API C 55.9",
      "Invofox D 46.8",
      "scores"
    ],
    "h1": "Adobe PDF Services / PDF Extract API vs Invofox",
    "image": "https://www.anchorterminal.com/assets/og/compare-adobe-pdf-extract-vs-invofox.png",
    "path": "/compare/adobe-pdf-extract-vs-invofox",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Adobe PDF Services / PDF Extract API vs Invofox for AI agents",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-invofox"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 730
  },
  "version": 1
}
