{
  "data": {
    "a": {
      "slug": "alloy",
      "name": "Alloy",
      "vendor": "First Mile Group, Inc. (Alloy)",
      "vendorUrl": "https://www.alloy.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Alloy is an identity and fraud decisioning platform for banks and fintechs. Its API runs onboarding journeys and evaluations that orchestrate identity, business, document and watchlist checks across third-party data vendors, with case management and ongoing monitoring.",
      "url": "https://www.anchorterminal.com/tools/alloy",
      "markdownUrl": "https://www.anchorterminal.com/tools/alloy.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/alloy.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/alloy.json",
      "license": "Proprietary service under Alloy's terms of service. The @alloyidentity/web-sdk capture package is MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@alloyidentity/web-sdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "Account-level token and secret (older accounts use a workflow token and secret), sent as HTTP basic auth or exchanged at /v1/oauth/bearer for a one-hour Bearer token with client credentials. Up to five active secrets per key, rotated and revoked in the dashboard by users with key permissions. No scopes. The same keys serve sandbox and production, chosen by base URL or the `alloy-sandbox: true` header. Keys come with a customer contract (checked 2026-10-14).",
      "pricing": "paid",
      "pricingNotes": "No public prices. www.alloy.com/pricing returns 404 and the site routes buyers to a demo. Production calls invoke third-party data vendors and can incur charges, while sandbox calls don't (https://developer.alloy.com/public/docs/sandbox-vs-production, checked 2026-10-14).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs index, the API reference or the website (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 20569,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://developer.alloy.com/public/docs/introduction",
      "llmsTxt": "https://developer.alloy.com/public/llms.txt",
      "capabilities": [
        "kyc.identity",
        "kyc.business",
        "kyc.screening",
        "kyc.documents",
        "kyc.cases"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "sales-led",
        "api-key",
        "oauth",
        "llms-txt",
        "webhooks",
        "sandbox",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.4,
        "grade": "D",
        "agentReady": false,
        "rank": 782,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 16,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 52,
          "maintenance": 72,
          "payments": 0,
          "reliability": 59,
          "schema": 73,
          "security": 49,
          "transparency": 62
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Alloy's public docs cover journeys, evaluations, entities, documents, cases and investigations, with llms.txt, Markdown pages, OpenAPI fragments and rate-limit headers with retry-after. Access is sales-led with no public price or trial, credentials have no scopes, there is no idempotency key or server SDK, and inputs vary by each customer's workflow.",
        "bestFor": "Banks and fintechs that already run onboarding through Alloy and want an agent to submit journey applications, read decisions and work investigations.",
        "strengths": [
          "Public developer docs with llms.txt (247 entries), Markdown pages and an OpenAPI fragment on each reference page",
          "Rate-limit headers and `retry-after` on 429, with a written guide to which codes to retry",
          "One API orchestrates identity, business, document and watchlist checks across many data vendors",
          "Up to five active secrets per key, OAuth client credentials and an IP allowlist",
          "Status page with separate Production API, Sandbox API, Webhooks and third-party components"
        ],
        "weaknesses": [
          "No public prices, trial or self-serve sign-up. Access starts with a demo request",
          "Rate limits vary by account and endpoint with no published numbers",
          "No idempotency key and no server-side SDK",
          "Evaluation inputs and outputs depend on each customer's workflow, so the contract is loosely typed",
          "Sandbox and Production are request modes over one data store, so test and live records can collide"
        ],
        "agentNotes": [
          "Get the account's base URL from the customer. Defaults are api.alloy.co and sandbox.alloy.co, and some accounts have their own hosts",
          "Use unique, prefixed external IDs in sandbox. Sandbox and Production share one data store",
          "Read `alloy-ratelimit-remaining`, and on 429 or 5xx wait for `retry-after` with exponential backoff and jitter",
          "Expect `running` after about 25 seconds on journey applications and wait for the webhook instead of resubmitting",
          "Send the workflow header with account-level keys, since inputs depend on the workflow configured"
        ],
        "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": 52.4
          }
        ],
        "editorialScores": {
          "ergonomics": 52,
          "maintenance": 72,
          "payments": 0,
          "reliability": 59,
          "schema": 73,
          "security": 49,
          "transparency": 38
        },
        "provenanceScore": 86
      },
      "connect": {
        "http": "curl -X POST https://sandbox.alloy.co/v1/oauth/bearer \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Basic \u003cbasic_token\u003e\" \\\n  -d '{\n    \"grant_type\": \"client_credentials\"\n  }'"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/alloy"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "First Mile Group, Inc.",
        "domain": "alloy.com",
        "domainRegistered": "1999-02-25",
        "endpointOnVendorDomain": true,
        "terms": "https://www.alloy.com/tos",
        "privacy": "https://www.alloy.com/privacy-policy",
        "statusPage": "https://status.alloy.com",
        "changelog": "https://www.alloy.com/product-updates",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The privacy policy (29 August 2025) names First Mile Group, Inc. d/b/a/ Alloy.",
          "The default API hosts are on alloy.co (api.alloy.co, sandbox.alloy.co), and account-specific hosts on alloy.com. status.alloy.co redirects to status.alloy.com.",
          "www.alloy.com/.well-known/security.txt and alloy.co/.well-known/security.txt return 404.",
          "RDAP for alloy.com gives a registration date of 1999-02-25, before Alloy was founded in 2015."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/alloy.json",
      "live": {
        "slug": "alloy",
        "vendorStatus": {
          "page": "https://status.alloy.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:38:51.209484803Z"
        },
        "mcpTools": {
          "url": "https://api.alloy.cx/mcp",
          "checkedAt": "2026-10-02T22:09:59.902886223Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-02T22:09:59.902886223Z"
        },
        "updatedAt": "2026-10-14T09:38:51.209484803Z"
      }
    },
    "answer": "Entrust Identity Verification (formerly Onfido) scores 62.1 (B) on agent readiness against Alloy's 52.4 (D), and leads in 6 of 7 scored categories. Alloy leads on maintenance \u0026 community.",
    "b": {
      "slug": "entrust-identity-verification",
      "name": "Entrust Identity Verification (formerly Onfido)",
      "vendor": "Onfido Ltd (Entrust)",
      "vendorUrl": "https://www.entrust.com/products/identity-verification",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Entrust Identity Verification, formerly Onfido, checks identity documents, selfies and liveness, runs watchlist and database checks and orchestrates them in Workflow Studio. Agents use the Onfido Public API v3.6 in EU, US and CA regions.",
      "url": "https://www.anchorterminal.com/tools/entrust-identity-verification",
      "markdownUrl": "https://www.anchorterminal.com/tools/entrust-identity-verification.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/entrust-identity-verification.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/entrust-identity-verification.json",
      "repo": "https://github.com/onfido/onfido-openapi-spec",
      "license": "Proprietary service under Entrust's terms. The OpenAPI spec and the server libraries (onfido-java, onfido-node, onfido-php, onfido-python, onfido-ruby) are MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@onfido/api"
        },
        {
          "registry": "pypi",
          "name": "onfido-python"
        }
      ],
      "auth": "mixed",
      "authNotes": "API tokens per region and environment (`api_live.`, `api_sandbox.`, with `_us` and `_ca` variants) sent as `Authorization: Token token=\u003ctoken\u003e`, generated in the Dashboard under Developers, API authentication. From v3.6, OAuth client credentials issue 60-minute access tokens, with scopes and a per-application IP allowlist set in the Dashboard. Tokens remain valid until revoked. SDK tokens are separate and scoped to one workflow run. Live checks need billing details on the account (checked 2026-10-14).",
      "pricing": "paid",
      "pricingNotes": "No price list was readable. Entrust's pricing page answered 403. The UK G-Cloud 14 listing by Onfido Ltd gives £0.43 to £2.12 a transaction and says a free trial with sandbox access is available. Sandbox requests aren't charged (checked 2026-10-14).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the API v3.6 reference or the OpenAPI spec (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 59334,
        "pypiWeekly": 26714,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://documentation.identity.entrust.com/",
      "llmsTxt": "https://documentation.identity.entrust.com/llms.txt",
      "openapi": "https://github.com/onfido/onfido-openapi-spec/blob/master/openapi.yaml",
      "capabilities": [
        "kyc.identity",
        "kyc.documents",
        "kyc.screening"
      ],
      "tags": [
        "hosted",
        "api-key",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "status-page",
        "python",
        "typescript",
        "java",
        "ruby",
        "php",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-08-31",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.1,
        "grade": "B",
        "agentReady": false,
        "rank": 472,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 58,
          "payments": 20,
          "reliability": 70,
          "schema": 84,
          "security": 58,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "The v3.6 API has a public MIT OpenAPI file, server libraries in five languages, OAuth client credentials with scopes and an 18-month deprecation notice. Entrust's own site answered 403, so terms, privacy notice, pricing and security.txt weren't read. There is no idempotency key, and live tokens need a Dashboard account with billing details.",
        "bestFor": "A company already contracted with Entrust that wants an agent to create applicants, start workflow runs and read reports through typed libraries and a public spec.",
        "strengths": [
          "Public OpenAPI 3.0 file for v3.6 (85 operations, MIT) with official libraries in Java, Node.js, PHP, Python and Ruby",
          "OAuth client credentials with scopes and a per-application IP allowlist, alongside region-specific API tokens",
          "Rate limits stated, 400 requests a minute live and 120 in sandbox, with a free sandbox that returns predetermined results",
          "Written versioning policy with at least 18 months' notice before a version is deprecated",
          "Webhooks signed with HMAC-SHA256, retried five times over 10 hours and resendable for 30 days"
        ],
        "weaknesses": [
          "entrust.com answered 403 to every request, so the terms, privacy notice, pricing page and security.txt weren't read",
          "No idempotency key on POST and no Retry-After header on 429",
          "The API release notes page has no entry after 27 February 2023",
          "A faulty deployment rejected valid tokens on the CA Public API for an hour on 7 September 2026",
          "Pricing is known only as a range of £0.43 to £2.12 a transaction from a 2024 UK G-Cloud listing"
        ],
        "agentNotes": [
          "Use the regional host for the account (api.eu, api.us or api.ca.onfido.com/v3.6). v3.6 has no default region",
          "Prefer an OAuth client with only the scopes the task needs over a live API token, and refresh the 60-minute access token",
          "Stay under 400 requests a minute live and 120 in sandbox, and back off on a 429 `rate_limit` error",
          "Check before retrying a POST. There is no idempotency key, so a retry can create a second applicant or check",
          "Treat webhook events as duplicates or out of order, and verify `X-SHA2-Signature` over the raw body"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.1
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 58,
          "payments": 20,
          "reliability": 70,
          "schema": 84,
          "security": 58,
          "transparency": 52
        },
        "provenanceScore": 87
      },
      "connect": {
        "install": "pip install onfido-python"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/entrust-identity-verification"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Onfido Ltd",
        "domain": "onfido.com",
        "domainRegistered": "2013-02-22",
        "endpointOnVendorDomain": true,
        "terms": "https://www.entrust.com/terms-and-conditions",
        "privacy": "https://www.entrust.com/sites/default/files/documentation/licensingandagreements/product-privacy-notice-identity-verification-services.pdf",
        "statusPage": "https://status.onfido.com",
        "changelog": "https://documentation.identity.entrust.com/api/release-notes",
        "securityTxt": "unknown",
        "checked": "2026-10-14",
        "notes": [
          "The UK G-Cloud 14 listing names ONFIDO LTD as supplier. The docs say Onfido is now part of Entrust.",
          "onfido.com/terms-and-conditions and onfido.com/privacy redirect to the entrust.com URLs above, which answered 403, so neither was read.",
          "onfido.com/.well-known/security.txt redirects to entrust.com, which answered 403.",
          "The API answers on api.{eu,us,ca}.onfido.com, an onfido.com subdomain. The docs moved to documentation.identity.entrust.com.",
          "RDAP for onfido.com gives a registration date of 2013-02-22."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/entrust-identity-verification.json",
      "live": {
        "slug": "entrust-identity-verification",
        "vendorStatus": {
          "page": "https://status.onfido.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:39:10.845654397Z"
        },
        "updatedAt": "2026-10-14T09:39:10.845654397Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "First Mile Group, Inc. (Alloy)",
        "b": "Onfido Ltd (Entrust)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Alloy's terms of service. The @alloyidentity/web-sdk capture package is MIT",
        "b": "Proprietary service under Entrust's terms. The OpenAPI spec and the server libraries (onfido-java, onfido-node, onfido-php, onfido-python, onfido-ruby) are MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-05",
        "b": "2026-08-31",
        "name": "Last release"
      },
      {
        "a": "2026-03-12",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "21k npm/wk",
        "b": "59k npm/wk, 27k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Entrust Identity Verification (formerly Onfido) scores 62.1 (B) on agent readiness against Alloy's 52.4 (D), and leads in 6 of 7 scored categories. Alloy leads on maintenance \u0026 community.",
        "question": "Which is better for AI agents, Alloy or Entrust Identity Verification (formerly Onfido)?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Alloy and Entrust Identity Verification (formerly Onfido) need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Alloy. No hosted endpoint is listed for Entrust Identity Verification (formerly Onfido).",
        "question": "Can an agent call Alloy and Entrust Identity Verification (formerly Onfido) without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Maintenance \u0026 community, 72 against 58"
        ],
        "also": null,
        "goodFor": "Banks and fintechs that already run onboarding through Alloy and want an agent to submit journey applications, read decisions and work investigations.",
        "slug": "alloy",
        "watchFor": "No public prices, trial or self-serve sign-up. Access starts with a demo request"
      },
      {
        "aheadOn": [
          "Reliability, 70 against 59",
          "Schema \u0026 documentation, 84 against 73",
          "Agent ergonomics, 65 against 52",
          "Security \u0026 auth, 58 against 49",
          "Payments \u0026 pricing, 20 against 0",
          "Transparency \u0026 trust, 70 against 62"
        ],
        "also": null,
        "goodFor": "A company already contracted with Entrust that wants an agent to create applicants, start workflow runs and read reports through typed libraries and a public spec.",
        "slug": "entrust-identity-verification",
        "watchFor": "entrust.com answered 403 to every request, so the terms, privacy notice, pricing page and security.txt weren't read"
      }
    ],
    "job": {
      "capability": "kyc.identity",
      "name": "Identity verification"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-complycube.json",
        "title": "Alloy vs ComplyCube",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-complycube"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-didit.json",
        "title": "Alloy vs Didit",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-didit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-jumio.json",
        "title": "Alloy vs Jumio",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-jumio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-middesk.json",
        "title": "Alloy vs Middesk",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-persona.json",
        "title": "Alloy vs Persona",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-plaid-identity-verification.json",
        "title": "Alloy vs Plaid Identity Verification",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-plaid-identity-verification"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-shufti.json",
        "title": "Alloy vs Shufti",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-shufti"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-socure-riskos.json",
        "title": "Alloy vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-stripe-identity.json",
        "title": "Alloy vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-sumsub.json",
        "title": "Alloy vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-trulioo.json",
        "title": "Alloy vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-veriff.json",
        "title": "Alloy vs Veriff",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-vouched.json",
        "title": "Alloy vs Vouched",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-vouched"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-entrust-identity-verification.json",
        "title": "ComplyCube vs Entrust Identity Verification (formerly Onfido)",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-entrust-identity-verification"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-entrust-identity-verification.json",
        "title": "Didit vs Entrust Identity Verification (formerly Onfido)",
        "url": "https://www.anchorterminal.com/compare/didit-vs-entrust-identity-verification"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-jumio.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Jumio",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-jumio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-middesk.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Middesk",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-persona.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Persona",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-plaid-identity-verification.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Plaid Identity Verification",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-plaid-identity-verification"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-shufti.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Shufti",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-shufti"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-socure-riskos.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-stripe-identity.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-sumsub.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-trulioo.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-veriff.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Veriff",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-vouched.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Vouched",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-vouched"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-complyadvantage.json",
        "title": "Alloy vs ComplyAdvantage",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-complyadvantage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-entrust-identity-verification.json",
        "title": "ComplyAdvantage vs Entrust Identity Verification (formerly Onfido)",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-entrust-identity-verification"
      }
    ],
    "scores": [
      {
        "alloy": 59,
        "by": 11,
        "edge": "entrust-identity-verification",
        "entrust-identity-verification": 70,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "alloy": 73,
        "by": 11,
        "edge": "entrust-identity-verification",
        "entrust-identity-verification": 84,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "alloy": 52,
        "by": 13,
        "edge": "entrust-identity-verification",
        "entrust-identity-verification": 65,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "alloy": 49,
        "by": 9,
        "edge": "entrust-identity-verification",
        "entrust-identity-verification": 58,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "alloy": 0,
        "by": 20,
        "edge": "entrust-identity-verification",
        "entrust-identity-verification": 20,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "alloy": 72,
        "by": 14,
        "edge": "alloy",
        "entrust-identity-verification": 58,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "alloy": 62,
        "by": 8,
        "edge": "entrust-identity-verification",
        "entrust-identity-verification": 70,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Entrust Identity Verification (formerly Onfido) scores 62.1 (B) on agent readiness against Alloy's 52.4 (D), and leads in 6 of 7 scored categories. Alloy leads on maintenance \u0026 community. Both do identity verification.",
    "verdicts": {
      "alloy": "Alloy's public docs cover journeys, evaluations, entities, documents, cases and investigations, with llms.txt, Markdown pages, OpenAPI fragments and rate-limit headers with retry-after. Access is sales-led with no public price or trial, credentials have no scopes, there is no idempotency key or server SDK, and inputs vary by each customer's workflow.",
      "entrust-identity-verification": "The v3.6 API has a public MIT OpenAPI file, server libraries in five languages, OAuth client credentials with scopes and an 18-month deprecation notice. Entrust's own site answered 403, so terms, privacy notice, pricing and security.txt weren't read. There is no idempotency key, and live tokens need a Dashboard account with billing details."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification",
    "json": "https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification.md",
    "slim": "https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification.min.md"
  },
  "markdown": "Entrust Identity Verification (formerly Onfido) scores 62.1 (B) on agent readiness against Alloy's 52.4 (D), and leads in 6 of 7 scored categories. Alloy leads on maintenance \u0026 community. Both do identity verification.\n\n- Alloy: grade D, 52.4/100, rank #782 of 1076. Markdown https://www.anchorterminal.com/tools/alloy.md · JSON https://www.anchorterminal.com/api/v1/tools/alloy.json\n- Entrust Identity Verification (formerly Onfido): grade B, 62.1/100, rank #472 of 1076. Markdown https://www.anchorterminal.com/tools/entrust-identity-verification.md · JSON https://www.anchorterminal.com/api/v1/tools/entrust-identity-verification.json\n- Best identity and business verification APIs for AI agents: https://www.anchorterminal.com/best/identity-verification/index.md\n- All 119 verification comparisons: https://www.anchorterminal.com/compare/identity-verification/index.md\n\n## Which one, for what\n\n### Alloy (D)\n\nGood for: Banks and fintechs that already run onboarding through Alloy and want an agent to submit journey applications, read decisions and work investigations.\n\nAhead on:\n- Maintenance \u0026 community, 72 against 58\n\nWatch for: No public prices, trial or self-serve sign-up. Access starts with a demo request\n\n### Entrust Identity Verification (formerly Onfido) (B)\n\nGood for: A company already contracted with Entrust that wants an agent to create applicants, start workflow runs and read reports through typed libraries and a public spec.\n\nAhead on:\n- Reliability, 70 against 59\n- Schema \u0026 documentation, 84 against 73\n- Agent ergonomics, 65 against 52\n- Security \u0026 auth, 58 against 49\n- Payments \u0026 pricing, 20 against 0\n- Transparency \u0026 trust, 70 against 62\n\nWatch for: entrust.com answered 403 to every request, so the terms, privacy notice, pricing page and security.txt weren't read\n\n\n## Score by category\n\n| Category | Weight | Alloy | Entrust Identity Verification (formerly Onfido) | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 59 | 70 | Entrust Identity Verification (formerly Onfido) +11 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 73 | 84 | Entrust Identity Verification (formerly Onfido) +11 |\n| Agent ergonomics | 13% (16.2 this run) | 52 | 65 | Entrust Identity Verification (formerly Onfido) +13 |\n| Security \u0026 auth | 14% (17.5 this run) | 49 | 58 | Entrust Identity Verification (formerly Onfido) +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 0 | 20 | Entrust Identity Verification (formerly Onfido) +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 72 | 58 | Alloy +14 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 62 | 70 | Entrust Identity Verification (formerly Onfido) +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **52.4 · D** | **62.1 · B** | |\n\n## Facts side by side\n\n| Fact | Alloy | Entrust Identity Verification (formerly Onfido) |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | First Mile Group, Inc. (Alloy) | Onfido Ltd (Entrust) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Alloy's terms of service. The @alloyidentity/web-sdk capture package is MIT | Proprietary service under Entrust's terms. The OpenAPI spec and the server libraries (onfido-java, onfido-node, onfido-php, onfido-python, onfido-ruby) are MIT |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-05 | 2026-08-31 |\n| Terms last updated | 2026-03-12 | couldn't be read |\n| Privacy policy last updated | no date given |  |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | yes | couldn't be read |\n| Terms restrict benchmarking | not found in the text | couldn't be read |\n| Terms or service can change without notice | not found in the text | couldn't be read |\n| Arbitration or class-action waiver | yes | couldn't be read |\n| Popularity | 21k npm/wk | 59k npm/wk, 27k PyPI/wk |\n\n## Verdicts\n\n**Alloy.** Alloy's public docs cover journeys, evaluations, entities, documents, cases and investigations, with llms.txt, Markdown pages, OpenAPI fragments and rate-limit headers with retry-after. Access is sales-led with no public price or trial, credentials have no scopes, there is no idempotency key or server SDK, and inputs vary by each customer's workflow.\n\n**Entrust Identity Verification (formerly Onfido).** The v3.6 API has a public MIT OpenAPI file, server libraries in five languages, OAuth client credentials with scopes and an 18-month deprecation notice. Entrust's own site answered 403, so terms, privacy notice, pricing and security.txt weren't read. There is no idempotency key, and live tokens need a Dashboard account with billing details.\n\n## Before you call either\n\n### Alloy\n\n1. Get the account's base URL from the customer. Defaults are api.alloy.co and sandbox.alloy.co, and some accounts have their own hosts\n2. Use unique, prefixed external IDs in sandbox. Sandbox and Production share one data store\n3. Read `alloy-ratelimit-remaining`, and on 429 or 5xx wait for `retry-after` with exponential backoff and jitter\n4. Expect `running` after about 25 seconds on journey applications and wait for the webhook instead of resubmitting\n5. Send the workflow header with account-level keys, since inputs depend on the workflow configured\n\n### Entrust Identity Verification (formerly Onfido)\n\n1. Use the regional host for the account (api.eu, api.us or api.ca.onfido.com/v3.6). v3.6 has no default region\n2. Prefer an OAuth client with only the scopes the task needs over a live API token, and refresh the 60-minute access token\n3. Stay under 400 requests a minute live and 120 in sandbox, and back off on a 429 `rate_limit` error\n4. Check before retrying a POST. There is no idempotency key, so a retry can create a second applicant or check\n5. Treat webhook events as duplicates or out of order, and verify `X-SHA2-Signature` over the raw body\n\n## Questions\n\n### Which is better for AI agents, Alloy or Entrust Identity Verification (formerly Onfido)?\n\nEntrust Identity Verification (formerly Onfido) scores 62.1 (B) on agent readiness against Alloy's 52.4 (D), and leads in 6 of 7 scored categories. Alloy leads on maintenance \u0026 community.\n\n### Do Alloy and Entrust Identity Verification (formerly Onfido) need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Alloy and Entrust Identity Verification (formerly Onfido) without installing anything?\n\nNo hosted endpoint is listed for Alloy. No hosted endpoint is listed for Entrust Identity Verification (formerly Onfido).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification.json, and with the fewest tokens: https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"alloy\", \"b\": \"entrust-identity-verification\"}`. From a terminal: `anchor compare alloy entrust-identity-verification`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/alloy.json and https://www.anchorterminal.com/api/v1/tools/entrust-identity-verification.json\n\n## Other comparisons with Alloy or Entrust Identity Verification (formerly Onfido)\n\n- [Alloy vs ComplyCube](https://www.anchorterminal.com/compare/alloy-vs-complycube.md)\n- [Alloy vs Didit](https://www.anchorterminal.com/compare/alloy-vs-didit.md)\n- [Alloy vs Jumio](https://www.anchorterminal.com/compare/alloy-vs-jumio.md)\n- [Alloy vs Middesk](https://www.anchorterminal.com/compare/alloy-vs-middesk.md)\n- [Alloy vs Persona](https://www.anchorterminal.com/compare/alloy-vs-persona.md)\n- [Alloy vs Plaid Identity Verification](https://www.anchorterminal.com/compare/alloy-vs-plaid-identity-verification.md)\n- [Alloy vs Shufti](https://www.anchorterminal.com/compare/alloy-vs-shufti.md)\n- [Alloy vs Socure RiskOS](https://www.anchorterminal.com/compare/alloy-vs-socure-riskos.md)\n- [Alloy vs Stripe Identity](https://www.anchorterminal.com/compare/alloy-vs-stripe-identity.md)\n- [Alloy vs Sumsub](https://www.anchorterminal.com/compare/alloy-vs-sumsub.md)\n- [Alloy vs Trulioo](https://www.anchorterminal.com/compare/alloy-vs-trulioo.md)\n- [Alloy vs Veriff](https://www.anchorterminal.com/compare/alloy-vs-veriff.md)\n- [Alloy vs Vouched](https://www.anchorterminal.com/compare/alloy-vs-vouched.md)\n- [ComplyCube vs Entrust Identity Verification (formerly Onfido)](https://www.anchorterminal.com/compare/complycube-vs-entrust-identity-verification.md)\n- [Didit vs Entrust Identity Verification (formerly Onfido)](https://www.anchorterminal.com/compare/didit-vs-entrust-identity-verification.md)\n- [Entrust Identity Verification (formerly Onfido) vs Jumio](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-jumio.md)\n- [Entrust Identity Verification (formerly Onfido) vs Middesk](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-middesk.md)\n- [Entrust Identity Verification (formerly Onfido) vs Persona](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-persona.md)\n- [Entrust Identity Verification (formerly Onfido) vs Plaid Identity Verification](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-plaid-identity-verification.md)\n- [Entrust Identity Verification (formerly Onfido) vs Shufti](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-shufti.md)\n- [Entrust Identity Verification (formerly Onfido) vs Socure RiskOS](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-socure-riskos.md)\n- [Entrust Identity Verification (formerly Onfido) vs Stripe Identity](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-stripe-identity.md)\n- [Entrust Identity Verification (formerly Onfido) vs Sumsub](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-sumsub.md)\n- [Entrust Identity Verification (formerly Onfido) vs Trulioo](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-trulioo.md)\n- [Entrust Identity Verification (formerly Onfido) vs Veriff](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-veriff.md)\n- [Entrust Identity Verification (formerly Onfido) vs Vouched](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-vouched.md)\n- [Alloy vs ComplyAdvantage](https://www.anchorterminal.com/compare/alloy-vs-complyadvantage.md)\n- [ComplyAdvantage vs Entrust Identity Verification (formerly Onfido)](https://www.anchorterminal.com/compare/complyadvantage-vs-entrust-identity-verification.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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": "Alloy vs Entrust Identity Verification (formerly Onfido)",
        "url": ""
      }
    ],
    "description": "Entrust Identity Verification scores 62.1 (B) to Alloy's 52.4 (D) for identity verification. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Alloy D 52.4",
      "Entrust Identity Verification (formerly Onfido) B 62.1",
      "scores"
    ],
    "h1": "Alloy vs Entrust Identity Verification (formerly Onfido)",
    "image": "https://www.anchorterminal.com/assets/og/compare-alloy-vs-entrust-identity-verification.png",
    "path": "/compare/alloy-vs-entrust-identity-verification",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Alloy vs Entrust Identity Verification for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification"
  },
  "tokens": {
    "markdown": 2900,
    "slim": 730
  },
  "version": 1
}
