{
  "data": {
    "a": {
      "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": 299,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 4,
        "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-08T21:53:19.619695507Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 36,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 33,
          "p95ms24h": 67,
          "samples24h": 28,
          "samples30d": 28,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 28,
              "ok": 28
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.complycube.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:57:48.052186709Z"
        },
        "updatedAt": "2026-10-08T21:57:48.052186709Z"
      }
    },
    "answer": "Persona scores 69.5 (B) on agent readiness against ComplyCube's 63.7 (B), and leads in 6 of 7 scored categories. ComplyCube leads on reliability.",
    "b": {
      "slug": "persona",
      "name": "Persona",
      "vendor": "Persona Identities, Inc.",
      "vendorUrl": "https://withpersona.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Persona is an identity verification platform from Persona Identities, Inc. Its REST API and hosted MCP server create inquiries, run government ID, selfie, document and database verifications, screen people and businesses against watchlists, and manage review cases.",
      "url": "https://www.anchorterminal.com/tools/persona",
      "markdownUrl": "https://www.anchorterminal.com/tools/persona.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/persona.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/persona.json",
      "license": "Proprietary service under Persona's terms of service. The `persona` JavaScript client on npm is MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://mcp.withpersona.com",
      "packages": [
        {
          "registry": "npm",
          "name": "persona"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key, sent as `Authorization: Bearer \u003ckey\u003e` to https://api.withpersona.com/api/v1. A browser sign-up with a business email gives a sandbox key (`persona_sandbox_...`) at once. A production key (`persona_production_...`) needs a plan and Persona's approval of the organisation. Each key can be limited to about 50 read and write permissions per resource, given its own rate limit and an IP allowlist, and expired through the dashboard or the API. A new key has every standard permission until someone limits it. The MCP server at https://mcp.withpersona.com takes the same key. Its help article says OAuth is coming and isn't available yet (checked 2026-10-08).",
      "pricing": "paid",
      "pricingNotes": "The Essential plan starts at $250 a month on a 12-month contract with 500 verifications or reports a month included, then $1.50 for each further one, per the help centre. Growth and Enterprise are priced through sales. A 60-day trial with no card gives sandbox access and up to 50 services, so an agent can build and test without a contract, but the sandbox performs no real verifications. A Startup Programme gives eligible small companies 500 free verifications a month for a year. The pricing page itself refused our reader (checked 2026-10-08).",
      "priceSummary": "$250 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI file, the MCP tool list or the help centre's plan articles (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 190,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 570188,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.withpersona.com/getting-started",
      "llmsTxt": "https://docs.withpersona.com/llms.txt",
      "openapi": "https://docs.withpersona.com/openapi/api-reference.json",
      "capabilities": [
        "kyc.identity",
        "kyc.business",
        "kyc.documents",
        "kyc.screening",
        "kyc.cases"
      ],
      "tags": [
        "hosted",
        "paid",
        "sandbox",
        "api-key",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "json-api",
        "status-page",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.5,
        "grade": "B",
        "agentReady": false,
        "rank": 157,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 75,
          "payments": 35,
          "reliability": 70,
          "schema": 85,
          "security": 73,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API has a public OpenAPI 3.1 file, llms.txt, API keys with per-resource permissions, idempotency keys on every POST and a 60-day sandbox trial with no card. Production needs a business review and a 12-month plan from $250 a month. The status page lists 11 incidents since 10 July 2026, including 70 minutes of timeouts across all products.",
        "bestFor": "A company that already runs Persona and wants an agent to create inquiries from templates, read verification and report results, screen against watchlists and work review cases with a permission-limited key.",
        "strengths": [
          "Public OpenAPI 3.1 file with 231 operations and 141 webhook definitions, plus llms.txt and a Markdown copy of every docs page",
          "API keys take about 50 read and write permissions per resource, an IP allowlist, their own rate limit and an expiry endpoint",
          "`Idempotency-Key` on every POST, cursor pagination, and `fields` and `include` parameters that trim responses",
          "API logs kept for two weeks and user audit logs for six months, both readable through the API",
          "Dated API versions selected per key or per request with `Persona-Version`, and a changelog with an RSS feed"
        ],
        "weaknesses": [
          "Production access needs Persona's approval and a 12-month plan from $250 a month, and API-only integration is limited to Enterprise plans",
          "Eleven incidents on the status page since 10 July 2026, five marked partial outage, most on document and government ID verifications",
          "The MCP server lists all 190 tools whatever the key allows, with no annotations, toolsets or read-only subset, and OAuth isn't available yet",
          "No official server-side SDK was found. The npm, iOS, Android and React Native packages are clients for the end-user flow",
          "The marketing site, terms, privacy policy and pricing page answered our reader with a bot check, and no SLA was found in the docs or help centre"
        ],
        "agentNotes": [
          "Ask for a dedicated key limited to the permissions the task needs. A new key has every standard permission until it's limited",
          "Send `Persona-Version` on every call and an `Idempotency-Key` on every POST. A replayed key returns the first result, including a 500",
          "Treat redact calls as irreversible. They permanently delete personal data and cascade to downstream objects",
          "Stay under 300 requests a minute in production, read `RateLimit-Remaining` and `Quota-Remaining`, and back off on 429 because rejected requests still count",
          "Use `fields` and `include` to cut response size. Through MCP these parameters aren't exposed, and only 14 tools take `filter`"
        ],
        "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": 69.5
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 75,
          "payments": 35,
          "reliability": 70,
          "schema": 85,
          "security": 73,
          "transparency": 46
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl --request POST \\\n     --url https://api.withpersona.com/api/v1/inquiries \\\n     --header 'Persona-Version: 2023-01-05' \\\n     --header 'accept: application/json' \\\n     --header 'authorization: Bearer persona_sandbox_YOURAPIKEY' \\\n     --header 'content-type: application/json' \\\n     --data '{\"data\":{\"attributes\":{\"inquiry-template-id\":\"itmpl_YOURTEMPLATEID\",\"fields\":{\"name-first\":\"Jane\",\"name-last\":\"Doe\",\"birthdate\":\"1994-04-12\"}}}}'"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/persona"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Essential plan",
          "unit": "month",
          "usd": 250,
          "note": "12-month contract, 500 verifications or reports a month included, unused ones don't roll over"
        },
        {
          "item": "Additional verification or report on the Essential plan",
          "unit": "tx",
          "usd": 1.5,
          "note": "Each service beyond the 500 included a month"
        }
      ],
      "provenance": {
        "legalEntity": "Persona Identities, Inc.",
        "domain": "withpersona.com",
        "domainRegistered": "2018-09-24",
        "endpointOnVendorDomain": true,
        "terms": "https://withpersona.com/legal/terms-of-service",
        "privacy": "https://withpersona.com/legal/privacy-policy",
        "statusPage": "https://status.withpersona.com",
        "changelog": "https://docs.withpersona.com/api-reference/versioning/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The help centre footer reads \"2026 Persona Identities, Inc.\", and the `persona` npm package names Persona Identities, Inc. as author.",
          "The API answers at api.withpersona.com and the MCP server at mcp.withpersona.com, both withpersona.com subdomains.",
          "withpersona.com/.well-known/security.txt gives security@withpersona.com, an expiry of 17 February 2027 and a note that disclosure runs through Bugcrowd.",
          "The terms and privacy URLs are the ones the status page links to. Both pages, and the rest of withpersona.com, answered our reader with a bot check (HTTP 403), so their text wasn't read.",
          "RDAP for withpersona.com gives a registration date of 2018-09-24 and MarkMonitor Inc. as registrar."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/persona.json",
      "live": {
        "slug": "persona",
        "probe": {
          "target": "https://mcp.withpersona.com",
          "method": "get",
          "lastAt": "2026-10-08T21:53:30.395062029Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 141,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 148,
          "p95ms24h": 425,
          "samples24h": 71,
          "samples30d": 71,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 71,
              "ok": 71
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.withpersona.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:39:03.085783021Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "persona",
            "version": "5.9.0",
            "seenAt": "2026-10-08T16:25:07.765894859Z"
          }
        ],
        "npmWeekly": 570188,
        "securityTxt": {
          "url": "https://withpersona.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-02-17T08:00:00.000Z",
          "checkedAt": "2026-10-08T15:39:00.840131962Z"
        },
        "pages": [
          {
            "url": "https://docs.withpersona.com/api-reference/versioning/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:46.701685957Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6f0e8de3c16e"
          },
          {
            "url": "https://withpersona.com/legal/privacy-policy",
            "kind": "privacy",
            "status": 403,
            "checkedAt": "2026-10-08T18:25:46.538922013Z",
            "changedAt": "0001-01-01T00:00:00Z"
          },
          {
            "url": "https://withpersona.com/legal/terms-of-service",
            "kind": "terms",
            "status": 403,
            "checkedAt": "2026-10-08T18:25:48.548892401Z",
            "changedAt": "0001-01-01T00:00:00Z"
          }
        ],
        "updatedAt": "2026-10-08T21:53:30.395062029Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "ComplyCube (Teemo Technology Ltd)",
        "b": "Persona Identities, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.complycube.com",
        "b": "https://mcp.withpersona.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "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",
        "b": "Proprietary service under Persona's terms of service. The `persona` JavaScript client on npm is MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "190",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-06",
        "b": "2026-09-29",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "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": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "6.2k npm/wk, 292 PyPI/wk",
        "b": "570k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Persona scores 69.5 (B) on agent readiness against ComplyCube's 63.7 (B), and leads in 6 of 7 scored categories. ComplyCube leads on reliability.",
        "question": "Which is better for AI agents, ComplyCube or Persona?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do ComplyCube and Persona need an API key?"
      },
      {
        "answer": "Yes. ComplyCube has a hosted endpoint at https://api.complycube.com and Persona at https://mcp.withpersona.com.",
        "question": "Can an agent call ComplyCube and Persona without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 84 against 70"
        ],
        "also": null,
        "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"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 85 against 78",
          "Agent ergonomics, 74 against 60",
          "Security \u0026 auth, 73 against 52",
          "Payments \u0026 pricing, 35 against 27",
          "Transparency \u0026 trust, 68 against 63"
        ],
        "also": null,
        "goodFor": "A company that already runs Persona and wants an agent to create inquiries from templates, read verification and report results, screen against watchlists and work review cases with a permission-limited key.",
        "slug": "persona",
        "watchFor": "Production access needs Persona's approval and a 12-month plan from $250 a month, and API-only integration is limited to Enterprise plans"
      }
    ],
    "job": {
      "capability": "kyc.identity",
      "name": "Kyc identity"
    },
    "others": [
      {
        "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-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-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/didit-vs-persona.json",
        "title": "Didit vs Persona",
        "url": "https://www.anchorterminal.com/compare/didit-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jumio-vs-persona.json",
        "title": "Jumio vs Persona",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-sumsub.json",
        "title": "Persona vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/persona-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-trulioo.json",
        "title": "Persona vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/persona-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-veriff.json",
        "title": "Persona vs Veriff",
        "url": "https://www.anchorterminal.com/compare/persona-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-complycube.json",
        "title": "ComplyAdvantage vs ComplyCube",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-complycube"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-persona.json",
        "title": "ComplyAdvantage vs Persona",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-persona.json",
        "title": "Middesk vs Persona",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-persona"
      }
    ],
    "scores": [
      {
        "by": 14,
        "complycube": 84,
        "edge": "complycube",
        "key": "reliability",
        "name": "Reliability",
        "persona": 70,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "complycube": 78,
        "edge": "persona",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "persona": 85,
        "weight": 13
      },
      {
        "by": 14,
        "complycube": 60,
        "edge": "persona",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "persona": 74,
        "weight": 13
      },
      {
        "by": 21,
        "complycube": 52,
        "edge": "persona",
        "key": "security",
        "name": "Security \u0026 auth",
        "persona": 73,
        "weight": 14
      },
      {
        "by": 8,
        "complycube": 27,
        "edge": "persona",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "persona": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 1,
        "complycube": 74,
        "edge": "persona",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "persona": 75,
        "weight": 7
      },
      {
        "by": 5,
        "complycube": 63,
        "edge": "persona",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "persona": 68,
        "weight": 7
      }
    ],
    "summary": "Persona scores 69.5 (B) on agent readiness against ComplyCube's 63.7 (B), and leads in 6 of 7 scored categories. ComplyCube leads on reliability. Both do kyc identity.",
    "verdicts": {
      "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.",
      "persona": "The REST API has a public OpenAPI 3.1 file, llms.txt, API keys with per-resource permissions, idempotency keys on every POST and a 60-day sandbox trial with no card. Production needs a business review and a 12-month plan from $250 a month. The status page lists 11 incidents since 10 July 2026, including 70 minutes of timeouts across all products."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/complycube-vs-persona",
    "json": "https://www.anchorterminal.com/compare/complycube-vs-persona.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/complycube-vs-persona.md",
    "slim": "https://www.anchorterminal.com/compare/complycube-vs-persona.min.md"
  },
  "markdown": "Persona scores 69.5 (B) on agent readiness against ComplyCube's 63.7 (B), and leads in 6 of 7 scored categories. ComplyCube leads on reliability. Both do kyc identity.\n\n- ComplyCube: grade B, 63.7/100, rank #299 of 722. Markdown https://www.anchorterminal.com/tools/complycube.md · JSON https://www.anchorterminal.com/api/v1/tools/complycube.json\n- Persona: grade B, 69.5/100, rank #157 of 722. Markdown https://www.anchorterminal.com/tools/persona.md · JSON https://www.anchorterminal.com/api/v1/tools/persona.json\n\n## Which one, for what\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 70\n\nWatch for: One API key per environment with no scopes. The docs say keys carry many privileges\n\n### Persona (B)\n\nGood for: A company that already runs Persona and wants an agent to create inquiries from templates, read verification and report results, screen against watchlists and work review cases with a permission-limited key.\n\nAhead on:\n- Schema \u0026 documentation, 85 against 78\n- Agent ergonomics, 74 against 60\n- Security \u0026 auth, 73 against 52\n- Payments \u0026 pricing, 35 against 27\n- Transparency \u0026 trust, 68 against 63\n\nWatch for: Production access needs Persona's approval and a 12-month plan from $250 a month, and API-only integration is limited to Enterprise plans\n\n\n## Score by category\n\n| Category | Weight | ComplyCube | Persona | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 84 | 70 | ComplyCube +14 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 85 | Persona +7 |\n| Agent ergonomics | 13% (16.2 this run) | 60 | 74 | Persona +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 52 | 73 | Persona +21 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 27 | 35 | Persona +8 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 74 | 75 | Persona +1 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 63 | 68 | Persona +5 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.7 · B** | **69.5 · B** | |\n\n## Facts side by side\n\n| Fact | ComplyCube | Persona |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | ComplyCube (Teemo Technology Ltd) | Persona Identities, Inc. |\n| Hosted endpoint | `https://api.complycube.com` | `https://mcp.withpersona.com` |\n| Transports | HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Pay per use | Paid |\n| x402 | no | no |\n| Licence | 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 | Proprietary service under Persona's terms of service. The `persona` JavaScript client on npm is MIT |\n| Tools exposed | none | 190 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-06 | 2026-09-29 |\n| Terms last updated | no date given | couldn't be read |\n| Privacy policy last updated | no date given | couldn't be read |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | not found in the text | 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 | not found in the text | couldn't be read |\n| Popularity | 6.2k npm/wk, 292 PyPI/wk | 570k npm/wk |\n\n## Verdicts\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**Persona.** The REST API has a public OpenAPI 3.1 file, llms.txt, API keys with per-resource permissions, idempotency keys on every POST and a 60-day sandbox trial with no card. Production needs a business review and a 12-month plan from $250 a month. The status page lists 11 incidents since 10 July 2026, including 70 minutes of timeouts across all products.\n\n## Before you call either\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### Persona\n\n1. Ask for a dedicated key limited to the permissions the task needs. A new key has every standard permission until it's limited\n2. Send `Persona-Version` on every call and an `Idempotency-Key` on every POST. A replayed key returns the first result, including a 500\n3. Treat redact calls as irreversible. They permanently delete personal data and cascade to downstream objects\n4. Stay under 300 requests a minute in production, read `RateLimit-Remaining` and `Quota-Remaining`, and back off on 429 because rejected requests still count\n5. Use `fields` and `include` to cut response size. Through MCP these parameters aren't exposed, and only 14 tools take `filter`\n\n## Questions\n\n### Which is better for AI agents, ComplyCube or Persona?\n\nPersona scores 69.5 (B) on agent readiness against ComplyCube's 63.7 (B), and leads in 6 of 7 scored categories. ComplyCube leads on reliability.\n\n### Do ComplyCube and Persona need an API key?\n\nBoth need an API key.\n\n### Can an agent call ComplyCube and Persona without installing anything?\n\nYes. ComplyCube has a hosted endpoint at https://api.complycube.com and Persona at https://mcp.withpersona.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/complycube-vs-persona.json, and with the fewest tokens: https://www.anchorterminal.com/compare/complycube-vs-persona.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"complycube\", \"b\": \"persona\"}`. From a terminal: `anchor compare complycube persona`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/complycube.json and https://www.anchorterminal.com/api/v1/tools/persona.json\n\n## Other comparisons with ComplyCube or Persona\n\n- [ComplyCube vs Didit](https://www.anchorterminal.com/compare/complycube-vs-didit.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 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- [Didit vs Persona](https://www.anchorterminal.com/compare/didit-vs-persona.md)\n- [Jumio vs Persona](https://www.anchorterminal.com/compare/jumio-vs-persona.md)\n- [Persona vs Sumsub](https://www.anchorterminal.com/compare/persona-vs-sumsub.md)\n- [Persona vs Trulioo](https://www.anchorterminal.com/compare/persona-vs-trulioo.md)\n- [Persona vs Veriff](https://www.anchorterminal.com/compare/persona-vs-veriff.md)\n- [ComplyAdvantage vs ComplyCube](https://www.anchorterminal.com/compare/complyadvantage-vs-complycube.md)\n- [ComplyAdvantage vs Persona](https://www.anchorterminal.com/compare/complyadvantage-vs-persona.md)\n- [Middesk vs Persona](https://www.anchorterminal.com/compare/middesk-vs-persona.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "ComplyCube vs Persona",
        "url": ""
      }
    ],
    "description": "Persona scores 69.5 (B) on agent readiness against ComplyCube's 63.7 (B), and leads in 6 of 7 scored categories. ComplyCube leads on reliability. Both do kyc identity. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "ComplyCube B 63.7",
      "Persona B 69.5",
      "scores"
    ],
    "h1": "ComplyCube vs Persona",
    "image": "https://www.anchorterminal.com/assets/og/compare-complycube-vs-persona.png",
    "path": "/compare/complycube-vs-persona",
    "published": "2026-10-01",
    "section": "tools",
    "title": "ComplyCube vs Persona for AI agents, B 63.7 vs B 69.5",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/complycube-vs-persona"
  },
  "tokens": {
    "markdown": 2150,
    "slim": 780
  },
  "version": 1
}
