{
  "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": "ComplyCube scores 63.7 (B) on agent readiness against Alloy's 52.4 (D), and leads in every scored category.",
    "b": {
      "slug": "complycube",
      "name": "ComplyCube",
      "vendor": "ComplyCube (Teemo Technology Ltd)",
      "vendorUrl": "https://www.complycube.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "ComplyCube verifies people from identity documents and a liveness check, screens people and companies against sanctions, PEP and adverse media lists, and runs address and bureau checks. Agents reach it through a REST API with separate test and live keys.",
      "url": "https://www.anchorterminal.com/tools/complycube",
      "markdownUrl": "https://www.anchorterminal.com/tools/complycube.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/complycube.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/complycube.json",
      "repo": "https://github.com/complycube/complycube-php",
      "license": "Proprietary service under ComplyCube's terms of service. The PHP library and the web, iOS and Android SDK repositories are MIT, and `@complycube/api` on npm is MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.complycube.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@complycube/api"
        },
        {
          "registry": "pypi",
          "name": "complycube"
        }
      ],
      "auth": "api-key",
      "authNotes": "Every request carries an API key in the `Authorization` header, with no Bearer prefix. Each account has a test key (prefix `test_`) and a live key (prefix `live_`), created and rotated on the API keys page of the Web Portal by a signed-in Owner, Administrator or Developer. Keys have no scopes, and the docs say they carry many privileges. The live key opens when the account is activated from Test to Live in the portal. Client-side SDKs use short-lived tokens from `POST /v1/tokens` (https://docs.complycube.com/documentation/api-reference/authentication).",
      "pricing": "usage",
      "pricingNotes": "Starter is $99 a month and Core $299, each converted to credits spent per check, with further checks billed at plan rates. On Starter a document check is $1.05, standard AML screening $0.50 and a photo liveness check $0.35. Growth and Enterprise are quoted by sales. Only completed verifications are charged. The sandbox is free with a test key, and a 14-day trial of 50 checks starts on activation to Live (https://www.complycube.com/en/pricing/, checked 2026-10-08).",
      "priceSummary": "$99 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 6182,
        "pypiWeekly": 292,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.complycube.com/documentation",
      "llmsTxt": "https://docs.complycube.com/documentation/llms.txt",
      "openapi": "https://2245032618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkAhgmUKSf8CFUFVL3GEe%2Fuploads%2FcpxxltxmYAxOotxgEkmP%2Fcomplycube-openapi.yaml?alt=media\u0026token=aa988fe0-8ce8-431c-a69a-6657f5eacf28",
      "capabilities": [
        "kyc.identity",
        "kyc.documents",
        "kyc.screening",
        "kyc.business"
      ],
      "tags": [
        "hosted",
        "usage-based",
        "sandbox",
        "api-key",
        "openapi",
        "llms-txt",
        "webhooks",
        "status-page",
        "python",
        "typescript",
        "php",
        "dotnet",
        "iso27001",
        "soc2"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.7,
        "grade": "B",
        "agentReady": false,
        "rank": 403,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 74,
          "payments": 27,
          "reliability": 84,
          "schema": 78,
          "security": 52,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A sandbox with its own key and scripted outcomes, a public OpenAPI spec, Markdown docs and an audit log API suit an agent running verification checks. Each environment has one unscoped key, no idempotency keys were found, and the only published terms are undated and read as website terms.",
        "bestFor": "An agent that creates clients, uploads documents, starts document, identity and AML screening checks and reads results for a regulated business, with low entry cost ($99 a month) and a scripted sandbox.",
        "strengths": [
          "Test and live environments have separate keys, and sandbox outcomes are set by test data such as a client last name of attention or failed",
          "Public OpenAPI 3.0.0 spec (version 1.7.3, 52 operations), `llms.txt`, and every docs page served as Markdown",
          "Audit log API records the team member, trigger, action and a field-level diff of old and new values",
          "Per-check prices are public for the Starter and Core plans, and failed or incomplete verifications are not charged",
          "Statuspage lists API, Web Portal and each check type for four regions, with no incident recorded since August 2022"
        ],
        "weaknesses": [
          "One API key per environment with no scopes. The docs say keys carry many privileges",
          "No idempotency keys, and no Retry-After header documented for 429 responses",
          "The only published terms are undated, read as website terms and cite the Data Protection Act 1998. No service agreement or DPA was found on a public page",
          "No `security.txt`, disclosure policy or bug bounty found, and the trust centre is drawn by script",
          "Company search, address search and redaction endpoints are in the API reference but not in the OpenAPI spec",
          "The ComplyCube MCP server serves documentation only and cannot reach account data"
        ],
        "agentNotes": [
          "Send the key bare in the `Authorization` header, with no Bearer prefix. Keys start `test_` or `live_`",
          "Create a client first, then documents or live photos for it, then `POST /v1/checks` with the client and upload IDs",
          "Stay under 10 requests a second live and 5 in the sandbox. On 429, back off exponentially with jitter, starting at 30 seconds",
          "A badly formed filter returns 200 with no results, so check filter names before trusting an empty list",
          "Checks are asynchronous. Subscribe to webhooks, verify the `ComplyCube-Signature` HMAC-SHA256 header, and expect duplicate and out-of-order events"
        ],
        "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": 63.7
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 74,
          "payments": 27,
          "reliability": 84,
          "schema": 78,
          "security": 52,
          "transparency": 43
        },
        "provenanceScore": 82
      },
      "connect": {
        "install": "npm install --save @complycube/api",
        "http": "curl -X GET https://api.complycube.com/v1/clients \\\n     -H 'Authorization: \u003cYOUR_API_KEY\u003e'"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/complycube"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 99,
          "note": "converted to usage credits; 1,000 checks a month quota"
        },
        {
          "item": "Core plan",
          "unit": "month",
          "usd": 299,
          "note": "converted to usage credits; 8,000 checks a month quota"
        },
        {
          "item": "Document verification check, Starter",
          "unit": "tx",
          "usd": 1.05,
          "note": "per completed check; $0.75 on Core"
        },
        {
          "item": "Standard AML screening, Starter",
          "unit": "tx",
          "usd": 0.5,
          "note": "per completed check; $0.35 on Core"
        },
        {
          "item": "Extensive AML screening, Starter",
          "unit": "tx",
          "usd": 1.05,
          "note": "per completed check; $0.85 on Core"
        },
        {
          "item": "Liveness and facial similarity check (photo), Starter",
          "unit": "tx",
          "usd": 0.35,
          "note": "per completed check; $0.20 on Core"
        }
      ],
      "provenance": {
        "legalEntity": "Teemo Technology Ltd",
        "domain": "complycube.com",
        "domainRegistered": "2018-05-24",
        "endpointOnVendorDomain": true,
        "terms": "https://www.complycube.com/en/terms-of-service/",
        "privacy": "https://www.complycube.com/en/privacy-policy/",
        "statusPage": "https://status.complycube.com",
        "changelog": "https://docs.complycube.com/documentation/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The privacy policy gives ComplyCube as the trading name of TEEMO TECHNOLOGY LTD, company number 12392069, Crown House, 27 Old Gloucester Street, London WC1N 3AX. The terms of service name only ComplyCube, registered in England and Wales, at that address.",
          "The terms of service are the only terms published. They define the Services to include ComplyCube's data and software services, but are written around website use, carry no date and cite the Data Protection Act 1998. No separate service agreement or DPA was found on a public page.",
          "The privacy policy covers the website and the Service and carries no date.",
          "The API answers at api.complycube.com, the Web Portal at portal.complycube.com and the docs at docs.complycube.com.",
          "www.complycube.com/.well-known/security.txt redirects to a 404 page, and api.complycube.com returns 403 for the same path.",
          "RDAP for complycube.com gives a registration date of 2018-05-24."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/complycube.json",
      "live": {
        "slug": "complycube",
        "probe": {
          "target": "https://api.complycube.com",
          "method": "get",
          "lastAt": "2026-10-14T09:41:47.00857857Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 23,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 31,
          "p95ms24h": 61,
          "samples24h": 248,
          "samples30d": 1389,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 50,
              "ok": 50
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 100,
              "ok": 100
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.complycube.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:39:03.573157507Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "complycube/complycube-php",
            "version": "v1.1.7",
            "released": "2026-06-12",
            "seenAt": "2026-10-13T22:50:34.951018678Z"
          },
          {
            "registry": "npm",
            "name": "@complycube/api",
            "version": "1.1.14",
            "seenAt": "2026-10-13T22:50:33.853096293Z"
          },
          {
            "registry": "pypi",
            "name": "complycube",
            "version": "1.1.8",
            "released": "2025-12-08",
            "seenAt": "2026-10-13T22:50:34.764450201Z"
          }
        ],
        "githubStars": 8,
        "npmWeekly": 3903,
        "pypiWeekly": 226,
        "securityTxt": {
          "url": "https://complycube.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-13T15:45:37.986718457Z"
        },
        "llmsTxt": {
          "url": "https://docs.complycube.com/documentation/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:11:18.521517961Z"
        },
        "domain": {
          "domain": "complycube.com",
          "registered": "2018-05-24",
          "source": "https://rdap.verisign.com/com/v1/domain/complycube.com",
          "checkedAt": "2026-10-11T13:22:08.453398589Z"
        },
        "pages": [
          {
            "url": "https://docs.complycube.com/documentation/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-13T20:14:29.245781819Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a0f1e75d7152"
          },
          {
            "url": "https://www.complycube.com/en/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-13T20:27:00.290699453Z",
            "changedAt": "2026-10-13T20:27:00.290699453Z",
            "fingerprint": "929dd6bebaf1"
          },
          {
            "url": "https://www.complycube.com/en/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-13T20:27:02.379636504Z",
            "changedAt": "2026-10-13T20:27:02.379636504Z",
            "fingerprint": "6e85f6c17ce3"
          },
          {
            "url": "https://www.complycube.com/en/terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-13T20:27:04.438246898Z",
            "changedAt": "2026-10-13T20:27:04.438246898Z",
            "fingerprint": "3f61d0059f99"
          }
        ],
        "updatedAt": "2026-10-14T09:41:47.00857857Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "First Mile Group, Inc. (Alloy)",
        "b": "ComplyCube (Teemo Technology Ltd)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.complycube.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Pay per use",
        "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 ComplyCube's terms of service. The PHP library and the web, iOS and Android SDK repositories are MIT, and `@complycube/api` on npm is 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-10-06",
        "name": "Last release"
      },
      {
        "a": "2026-03-12",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "21k npm/wk",
        "b": "6.2k npm/wk, 292 PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "ComplyCube scores 63.7 (B) on agent readiness against Alloy's 52.4 (D), and leads in every scored category.",
        "question": "Which is better for AI agents, Alloy or ComplyCube?"
      },
      {
        "answer": "Alloy takes an API key or an OAuth sign-in. ComplyCube needs an API key.",
        "question": "Do Alloy and ComplyCube need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Alloy. ComplyCube has a hosted endpoint at https://api.complycube.com.",
        "question": "Can an agent call Alloy and ComplyCube without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "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, 84 against 59",
          "Schema \u0026 documentation, 78 against 73",
          "Agent ergonomics, 60 against 52",
          "Payments \u0026 pricing, 27 against 0"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "An agent that creates clients, uploads documents, starts document, identity and AML screening checks and reads results for a regulated business, with low entry cost ($99 a month) and a scripted sandbox.",
        "slug": "complycube",
        "watchFor": "One API key per environment with no scopes. The docs say keys carry many privileges"
      }
    ],
    "job": {
      "capability": "kyc.identity",
      "name": "Identity verification"
    },
    "others": [
      {
        "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-entrust-identity-verification.json",
        "title": "Alloy vs Entrust Identity Verification (formerly Onfido)",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification"
      },
      {
        "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-didit.json",
        "title": "ComplyCube vs Didit",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-didit"
      },
      {
        "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/complycube-vs-jumio.json",
        "title": "ComplyCube vs Jumio",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-jumio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-middesk.json",
        "title": "ComplyCube vs Middesk",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-persona.json",
        "title": "ComplyCube vs Persona",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-plaid-identity-verification.json",
        "title": "ComplyCube vs Plaid Identity Verification",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-plaid-identity-verification"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-shufti.json",
        "title": "ComplyCube vs Shufti",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-shufti"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-socure-riskos.json",
        "title": "ComplyCube vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-stripe-identity.json",
        "title": "ComplyCube vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-sumsub.json",
        "title": "ComplyCube vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-trulioo.json",
        "title": "ComplyCube vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-veriff.json",
        "title": "ComplyCube vs Veriff",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-vouched.json",
        "title": "ComplyCube vs Vouched",
        "url": "https://www.anchorterminal.com/compare/complycube-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-complycube.json",
        "title": "ComplyAdvantage vs ComplyCube",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-complycube"
      }
    ],
    "scores": [
      {
        "alloy": 59,
        "by": 25,
        "complycube": 84,
        "edge": "complycube",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "alloy": 73,
        "by": 5,
        "complycube": 78,
        "edge": "complycube",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "alloy": 52,
        "by": 8,
        "complycube": 60,
        "edge": "complycube",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "alloy": 49,
        "by": 3,
        "complycube": 52,
        "edge": "complycube",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "alloy": 0,
        "by": 27,
        "complycube": 27,
        "edge": "complycube",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "alloy": 72,
        "by": 2,
        "complycube": 74,
        "edge": "complycube",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "alloy": 62,
        "by": 1,
        "complycube": 63,
        "edge": "complycube",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "ComplyCube scores 63.7 (B) on agent readiness against Alloy's 52.4 (D), and leads in every scored category. 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.",
      "complycube": "A sandbox with its own key and scripted outcomes, a public OpenAPI spec, Markdown docs and an audit log API suit an agent running verification checks. Each environment has one unscoped key, no idempotency keys were found, and the only published terms are undated and read as website terms."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/alloy-vs-complycube",
    "json": "https://www.anchorterminal.com/compare/alloy-vs-complycube.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/alloy-vs-complycube.md",
    "slim": "https://www.anchorterminal.com/compare/alloy-vs-complycube.min.md"
  },
  "markdown": "ComplyCube scores 63.7 (B) on agent readiness against Alloy's 52.4 (D), and leads in every scored category. 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- ComplyCube: grade B, 63.7/100, rank #403 of 1076. Markdown https://www.anchorterminal.com/tools/complycube.md · JSON https://www.anchorterminal.com/api/v1/tools/complycube.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\nWatch for: No public prices, trial or self-serve sign-up. Access starts with a demo request\n\n### ComplyCube (B)\n\nGood for: An agent that creates clients, uploads documents, starts document, identity and AML screening checks and reads results for a regulated business, with low entry cost ($99 a month) and a scripted sandbox.\n\nAhead on:\n- Reliability, 84 against 59\n- Schema \u0026 documentation, 78 against 73\n- Agent ergonomics, 60 against 52\n- Payments \u0026 pricing, 27 against 0\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: One API key per environment with no scopes. The docs say keys carry many privileges\n\n\n## Score by category\n\n| Category | Weight | Alloy | ComplyCube | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 59 | 84 | ComplyCube +25 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 73 | 78 | ComplyCube +5 |\n| Agent ergonomics | 13% (16.2 this run) | 52 | 60 | ComplyCube +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 49 | 52 | ComplyCube +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 0 | 27 | ComplyCube +27 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 72 | 74 | ComplyCube +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 62 | 63 | ComplyCube +1 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **52.4 · D** | **63.7 · B** | |\n\n## Facts side by side\n\n| Fact | Alloy | ComplyCube |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | First Mile Group, Inc. (Alloy) | ComplyCube (Teemo Technology Ltd) |\n| Hosted endpoint | no (local only) | `https://api.complycube.com` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Paid | Pay per use |\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 ComplyCube's terms of service. The PHP library and the web, iOS and Android SDK repositories are MIT, and `@complycube/api` on npm is MIT |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-05 | 2026-10-06 |\n| Terms last updated | 2026-03-12 | no date given |\n| Privacy policy last updated | no date given | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 21k npm/wk | 6.2k npm/wk, 292 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**ComplyCube.** A sandbox with its own key and scripted outcomes, a public OpenAPI spec, Markdown docs and an audit log API suit an agent running verification checks. Each environment has one unscoped key, no idempotency keys were found, and the only published terms are undated and read as website terms.\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### ComplyCube\n\n1. Send the key bare in the `Authorization` header, with no Bearer prefix. Keys start `test_` or `live_`\n2. Create a client first, then documents or live photos for it, then `POST /v1/checks` with the client and upload IDs\n3. Stay under 10 requests a second live and 5 in the sandbox. On 429, back off exponentially with jitter, starting at 30 seconds\n4. A badly formed filter returns 200 with no results, so check filter names before trusting an empty list\n5. Checks are asynchronous. Subscribe to webhooks, verify the `ComplyCube-Signature` HMAC-SHA256 header, and expect duplicate and out-of-order events\n\n## Questions\n\n### Which is better for AI agents, Alloy or ComplyCube?\n\nComplyCube scores 63.7 (B) on agent readiness against Alloy's 52.4 (D), and leads in every scored category.\n\n### Do Alloy and ComplyCube need an API key?\n\nAlloy takes an API key or an OAuth sign-in. ComplyCube needs an API key.\n\n### Can an agent call Alloy and ComplyCube without installing anything?\n\nNo hosted endpoint is listed for Alloy. ComplyCube has a hosted endpoint at https://api.complycube.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/alloy-vs-complycube.json, and with the fewest tokens: https://www.anchorterminal.com/compare/alloy-vs-complycube.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"alloy\", \"b\": \"complycube\"}`. From a terminal: `anchor compare alloy complycube`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/alloy.json and https://www.anchorterminal.com/api/v1/tools/complycube.json\n\n## Other comparisons with Alloy or ComplyCube\n\n- [Alloy vs Didit](https://www.anchorterminal.com/compare/alloy-vs-didit.md)\n- [Alloy vs Entrust Identity Verification (formerly Onfido)](https://www.anchorterminal.com/compare/alloy-vs-entrust-identity-verification.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 Didit](https://www.anchorterminal.com/compare/complycube-vs-didit.md)\n- [ComplyCube vs Entrust Identity Verification (formerly Onfido)](https://www.anchorterminal.com/compare/complycube-vs-entrust-identity-verification.md)\n- [ComplyCube vs Jumio](https://www.anchorterminal.com/compare/complycube-vs-jumio.md)\n- [ComplyCube vs Middesk](https://www.anchorterminal.com/compare/complycube-vs-middesk.md)\n- [ComplyCube vs Persona](https://www.anchorterminal.com/compare/complycube-vs-persona.md)\n- [ComplyCube vs Plaid Identity Verification](https://www.anchorterminal.com/compare/complycube-vs-plaid-identity-verification.md)\n- [ComplyCube vs Shufti](https://www.anchorterminal.com/compare/complycube-vs-shufti.md)\n- [ComplyCube vs Socure RiskOS](https://www.anchorterminal.com/compare/complycube-vs-socure-riskos.md)\n- [ComplyCube vs Stripe Identity](https://www.anchorterminal.com/compare/complycube-vs-stripe-identity.md)\n- [ComplyCube vs Sumsub](https://www.anchorterminal.com/compare/complycube-vs-sumsub.md)\n- [ComplyCube vs Trulioo](https://www.anchorterminal.com/compare/complycube-vs-trulioo.md)\n- [ComplyCube vs Veriff](https://www.anchorterminal.com/compare/complycube-vs-veriff.md)\n- [ComplyCube vs Vouched](https://www.anchorterminal.com/compare/complycube-vs-vouched.md)\n- [Alloy vs ComplyAdvantage](https://www.anchorterminal.com/compare/alloy-vs-complyadvantage.md)\n- [ComplyAdvantage vs ComplyCube](https://www.anchorterminal.com/compare/complyadvantage-vs-complycube.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 ComplyCube",
        "url": ""
      }
    ],
    "description": "ComplyCube scores 63.7 (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",
      "ComplyCube B 63.7",
      "scores"
    ],
    "h1": "Alloy vs ComplyCube",
    "image": "https://www.anchorterminal.com/assets/og/compare-alloy-vs-complycube.png",
    "path": "/compare/alloy-vs-complycube",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Alloy vs ComplyCube for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/alloy-vs-complycube"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 630
  },
  "version": 1
}
