{
  "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"
  },
  "tool": {
    "slug": "terra",
    "name": "Terra API",
    "vendor": "Terra Enabling Developers Inc.",
    "vendorUrl": "https://tryterra.co",
    "kind": "http-api",
    "category": "health-data",
    "summary": "Terra's Unified API collects activity, sleep, body and nutrition data from 500+ wearables and health apps, normalises it into one schema and sends it by webhook or REST. An MCP server, Terra AI, lets agents read a connected user's data.",
    "url": "https://www.anchorterminal.com/tools/terra",
    "markdownUrl": "https://www.anchorterminal.com/tools/terra.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/terra.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/terra.json",
    "repo": "https://github.com/tryterra/openapi",
    "license": "Proprietary service under Terra's terms of service. The OpenAPI specs repository is Apache 2.0",
    "transports": [
      "http",
      "streamable-http"
    ],
    "remoteUrl": "https://access.tryterra.co/api/v2/mcp/\u003cuser_id\u003e",
    "packages": [
      {
        "registry": "pypi",
        "name": "terra-python"
      },
      {
        "registry": "npm",
        "name": "terra-api"
      },
      {
        "registry": "npm",
        "name": "@tryterra/cli"
      }
    ],
    "auth": "mixed",
    "authNotes": "A self-serve dashboard account gives a dev-id and one x-api-key per environment, sent as headers to the Unified API and to Terra AI. The key has no scopes and can be rotated. The admin API and admin MCP server take personal access tokens with 26 scopes, lifetimes of 7 to 90 days and optional environment limits. The admin MCP server signs in by OAuth, and risky changes need approval in the dashboard. End users connect each wearable through Terra's widget, and Terra holds the provider tokens.",
    "pricing": "usage",
    "pricingNotes": "Quick Start from $499 a month includes 100,000 credits, then $0.005 a credit to 1,000,000 and $0.003 above. Sign-up asks for a plan and billing details, with a 30-day money-back guarantee and no free tier found. Testing and staging environments allow 50 users each. Enterprise is custom (checked 2026-10-14).",
    "priceSummary": "$499 / mo",
    "where": "hosted",
    "x402": {
      "level": "no",
      "evidence": "No x402, MPP or L402 in the docs, the OpenAPI specs or the pricing page (checked 2026-10-14).",
      "endpoints": []
    },
    "toolCount": 6,
    "popularity": {
      "githubStars": null,
      "npmWeekly": 13061,
      "pypiWeekly": 10636,
      "asOf": "2026-10-14"
    },
    "docsUrl": "https://docs.tryterra.co",
    "llmsTxt": "https://docs.tryterra.co/llms.txt",
    "openapi": "https://raw.githubusercontent.com/tryterra/openapi/master/dist/core/v2-bundled.yaml",
    "capabilities": [
      "health.wearables",
      "health.consent",
      "health.fhir"
    ],
    "tags": [
      "hosted",
      "wearables",
      "health-data",
      "mcp",
      "api-key",
      "openapi",
      "llms-txt",
      "webhooks",
      "status-page",
      "python",
      "typescript",
      "soc2",
      "hipaa"
    ],
    "lastRelease": "2026-10-13",
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 65.9,
      "grade": "B",
      "agentReady": false,
      "rank": 327,
      "ranked": true,
      "rankOf": 1076,
      "categoryRank": 2,
      "methodology": "0.4",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 78,
        "maintenance": 75,
        "payments": 20,
        "reliability": 67,
        "schema": 89,
        "security": 65,
        "transparency": 56
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 67,
          "points": 13.4,
          "reason": "Read with the hosted lines and scored on the Unified API and Terra AI. status.tryterra.co on Instatus has components and incident history (20). In the 90 days to 14 October 2026 Terra's own REST endpoints failed with authorisation errors for 2 hours 38 minutes on 7 August, and a large share of data requests errored for 16 minutes on 29 September. Provider-side incidents (Garmin since 1 September, Fitbit, TrainerRoad) are outside Terra's API. One major outage (10). Per-user limits published with numbers (15). 429 carries Retry-After and a rule header with backoff code. No idempotency keys for writes, though dedupe guidance is published (12 of 15). No SLA outside Enterprise contracts (0). The Unified API carries no beta label (10)."
        },
        {
          "key": "performance",
          "name": "Performance",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
        },
        {
          "key": "schema",
          "name": "Schema \u0026 documentation",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 89,
          "points": 14.46,
          "reason": "OpenAPI 3.1 specs in tryterra/openapi for the Unified, admin, Teams, Vantage and widget APIs, plus AsyncAPI for streaming (25). llms.txt, llms-full.txt and a Markdown copy of every page (10). Operation descriptions state purpose, and some say when to use another path, such as the deprecated token route (16 of 20). The Unified spec has 173 required lists but only 18 enums (10 of 15). 573 examples and problem+json error responses, plus a guaranteed error list for Terra AI (13 of 15). Dated spec versions, monthly changelog pages and date-based versioning on Vantage (15)."
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 78,
          "points": 12.68,
          "reason": "Terra AI has six tools, each taking an explicit fields or select list, which keeps responses small. The admin server has about 40 tools, filtered by access level (22 of 25). Date ranges, with_samples and to_webhook size the REST reads, with no cursor paging since bulk data goes to webhooks (14 of 20). problem+json errors carry a code, 403 names scope_missing, and 429 names the rule (17 of 20). No idempotency keys. The admin server has dry runs and dashboard approval for risky changes (12 of 20). user_id is the main required parameter, with Python and npm SDKs and a CLI, though both SDKs date from October 2025 (13 of 15)."
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 65,
          "points": 11.38,
          "reason": "The data API key is one x-api-key per environment with no scopes, rotatable through the admin API. Admin tokens have 26 scopes, 7 to 90 day lifetimes, environment limits and revocation, and the admin MCP server uses OAuth. No secret in a query string (22 of 30). Read only access for the admin server, dashboard approval for paying invoices, rotating keys or removing members, and Terra AI is read-only (18 of 20). Health data is mostly numeric, and the MCP page warns that text in payloads can mislead an assistant (8 of 15). Token list with creation source and an event log, no API call audit log found (7 of 15). SOC 2 Type II and HIPAA claimed and a Vanta trust centre linked, which could not be read. No security.txt or bug bounty found (10 of 20)."
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 20,
          "points": 2.5,
          "reason": "Read with the hosted rubric. No x402, MPP or L402 (0). Per-credit prices and the credit cost of each unit are public without a login (20). No free tier. Sign-up asks for a plan and billing details, with a 30-day money-back guarantee (0). A person signs up in a browser, and the CLI and MCP sign in through the dashboard (0)."
        },
        {
          "key": "tasks",
          "name": "Task success",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
        },
        {
          "key": "maintenance",
          "name": "Maintenance \u0026 community",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 75,
          "points": 6.56,
          "reason": "The OpenAPI repository was republished on 13 October 2026 and @tryterra/cli 0.20.0 shipped on 9 October (30). 120 spec publishes since 16 July and CLI releases 0.18 to 0.20 in October (20). Closed service with monthly changelog pages and a support form. 24/7 engineering support is Enterprise only (11 of 15). terra-python 1.1.0 and terra-api 2.1.0 date from 2 October 2025, the legacy JavaScript package is no longer updated, and the official MCP registry has no Terra entry (8 of 15). We could not read CI results (6 of 10)."
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 56,
          "points": 4.9,
          "note": "editorial 42, provenance 69",
          "reason": "Closed service with public terms dated 1 May 2026 and Apache 2.0 specs (17 of 30). The privacy policy, effective 20 April 2023, excludes end-user wearable data and gives no fixed retention periods. A GDPR assessment sits in the trust centre, which could not be read, and no public DPA was found (10 of 30). A deprecated token route is kept indefinitely and Vantage changes ship under dated versions, with no written notice period for the Unified API (10 of 20). Processing is stated as mainly in the UK, with no sub-processor list found (5 of 20)."
        }
      ],
      "assessment": {
        "date": "2026-10-14",
        "basis": "public evidence",
        "confidence": "medium",
        "notes": {
          "ergonomics": "Terra AI has six tools, each taking an explicit fields or select list, which keeps responses small. The admin server has about 40 tools, filtered by access level (22 of 25). Date ranges, with_samples and to_webhook size the REST reads, with no cursor paging since bulk data goes to webhooks (14 of 20). problem+json errors carry a code, 403 names scope_missing, and 429 names the rule (17 of 20). No idempotency keys. The admin server has dry runs and dashboard approval for risky changes (12 of 20). user_id is the main required parameter, with Python and npm SDKs and a CLI, though both SDKs date from October 2025 (13 of 15).",
          "maintenance": "The OpenAPI repository was republished on 13 October 2026 and @tryterra/cli 0.20.0 shipped on 9 October (30). 120 spec publishes since 16 July and CLI releases 0.18 to 0.20 in October (20). Closed service with monthly changelog pages and a support form. 24/7 engineering support is Enterprise only (11 of 15). terra-python 1.1.0 and terra-api 2.1.0 date from 2 October 2025, the legacy JavaScript package is no longer updated, and the official MCP registry has no Terra entry (8 of 15). We could not read CI results (6 of 10).",
          "payments": "Read with the hosted rubric. No x402, MPP or L402 (0). Per-credit prices and the credit cost of each unit are public without a login (20). No free tier. Sign-up asks for a plan and billing details, with a 30-day money-back guarantee (0). A person signs up in a browser, and the CLI and MCP sign in through the dashboard (0).",
          "reliability": "Read with the hosted lines and scored on the Unified API and Terra AI. status.tryterra.co on Instatus has components and incident history (20). In the 90 days to 14 October 2026 Terra's own REST endpoints failed with authorisation errors for 2 hours 38 minutes on 7 August, and a large share of data requests errored for 16 minutes on 29 September. Provider-side incidents (Garmin since 1 September, Fitbit, TrainerRoad) are outside Terra's API. One major outage (10). Per-user limits published with numbers (15). 429 carries Retry-After and a rule header with backoff code. No idempotency keys for writes, though dedupe guidance is published (12 of 15). No SLA outside Enterprise contracts (0). The Unified API carries no beta label (10).",
          "schema": "OpenAPI 3.1 specs in tryterra/openapi for the Unified, admin, Teams, Vantage and widget APIs, plus AsyncAPI for streaming (25). llms.txt, llms-full.txt and a Markdown copy of every page (10). Operation descriptions state purpose, and some say when to use another path, such as the deprecated token route (16 of 20). The Unified spec has 173 required lists but only 18 enums (10 of 15). 573 examples and problem+json error responses, plus a guaranteed error list for Terra AI (13 of 15). Dated spec versions, monthly changelog pages and date-based versioning on Vantage (15).",
          "security": "The data API key is one x-api-key per environment with no scopes, rotatable through the admin API. Admin tokens have 26 scopes, 7 to 90 day lifetimes, environment limits and revocation, and the admin MCP server uses OAuth. No secret in a query string (22 of 30). Read only access for the admin server, dashboard approval for paying invoices, rotating keys or removing members, and Terra AI is read-only (18 of 20). Health data is mostly numeric, and the MCP page warns that text in payloads can mislead an assistant (8 of 15). Token list with creation source and an event log, no API call audit log found (7 of 15). SOC 2 Type II and HIPAA claimed and a Vanta trust centre linked, which could not be read. No security.txt or bug bounty found (10 of 20).",
          "transparency": "Closed service with public terms dated 1 May 2026 and Apache 2.0 specs (17 of 30). The privacy policy, effective 20 April 2023, excludes end-user wearable data and gives no fixed retention periods. A GDPR assessment sits in the trust centre, which could not be read, and no public DPA was found (10 of 30). A deprecated token route is kept indefinitely and Vantage changes ship under dated versions, with no written notice period for the Unified API (10 of 20). Processing is stated as mainly in the UK, with no sub-processor list found (5 of 20)."
        },
        "sources": [
          {
            "what": "documentation index for agents",
            "url": "https://docs.tryterra.co/llms.txt",
            "seen": "2026-10-14"
          },
          {
            "what": "account set-up and API keys",
            "url": "https://docs.tryterra.co/introduction/account-setup-and-api-keys.md",
            "seen": "2026-10-14"
          },
          {
            "what": "Terra AI MCP server",
            "url": "https://docs.tryterra.co/ai-interface/ai-interface.md",
            "seen": "2026-10-14"
          },
          {
            "what": "Terra AI error states",
            "url": "https://docs.tryterra.co/ai-interface/error-states.md",
            "seen": "2026-10-14"
          },
          {
            "what": "admin MCP server",
            "url": "https://docs.tryterra.co/developer-tools/mcp-server.md",
            "seen": "2026-10-14"
          },
          {
            "what": "personal access tokens",
            "url": "https://docs.tryterra.co/reference/admin-api/personal-access-tokens.md",
            "seen": "2026-10-14"
          },
          {
            "what": "token scopes",
            "url": "https://docs.tryterra.co/reference/admin-api/scopes.md",
            "seen": "2026-10-14"
          },
          {
            "what": "rate limits",
            "url": "https://docs.tryterra.co/reference/health-and-fitness-api/rate-limits.md",
            "seen": "2026-10-14"
          },
          {
            "what": "environments",
            "url": "https://docs.tryterra.co/unified-api/integration-setup/understanding-terra-environments.md",
            "seen": "2026-10-14"
          },
          {
            "what": "credit pricing",
            "url": "https://docs.tryterra.co/unified-api/pricing.md",
            "seen": "2026-10-14"
          },
          {
            "what": "pricing page",
            "url": "https://tryterra.co/pricing",
            "seen": "2026-10-14"
          },
          {
            "what": "OpenAPI specs",
            "url": "https://github.com/tryterra/openapi",
            "seen": "2026-10-14"
          },
          {
            "what": "September 2026 changelog",
            "url": "https://docs.tryterra.co/changelog/2026/readme.md",
            "seen": "2026-10-14"
          },
          {
            "what": "Vantage versioning",
            "url": "https://docs.tryterra.co/vantage-api/versioning.md",
            "seen": "2026-10-14"
          },
          {
            "what": "status history feed",
            "url": "https://status.tryterra.co/history.rss",
            "seen": "2026-10-14"
          },
          {
            "what": "terms of service",
            "url": "https://tryterra.co/terms-of-service",
            "seen": "2026-10-14"
          },
          {
            "what": "privacy policy",
            "url": "https://tryterra.co/privacy",
            "seen": "2026-10-14"
          },
          {
            "what": "GDPR page",
            "url": "https://tryterra.co/gdpr",
            "seen": "2026-10-14"
          },
          {
            "what": "enterprise page (certifications)",
            "url": "https://tryterra.co/enterprise",
            "seen": "2026-10-14"
          },
          {
            "what": "npm terra-api",
            "url": "https://registry.npmjs.org/terra-api",
            "seen": "2026-10-14"
          },
          {
            "what": "npm @tryterra/cli",
            "url": "https://registry.npmjs.org/@tryterra%2fcli",
            "seen": "2026-10-14"
          },
          {
            "what": "PyPI terra-python",
            "url": "https://pypi.org/pypi/terra-python/json",
            "seen": "2026-10-14"
          },
          {
            "what": "unauthenticated API request",
            "url": "https://access.tryterra.co/api/v2/activity",
            "seen": "2026-10-14"
          },
          {
            "what": "official MCP registry search",
            "url": "https://registry.modelcontextprotocol.io/v0/servers?search=tryterra",
            "seen": "2026-10-14"
          }
        ],
        "openQuestions": [
          "unchecked: the Vanta trust centre at app.vanta.com/tryterra.co/trust. It is drawn by script and our reader saw only the title, so the SOC 2 report and any sub-processor list were not read",
          "unchecked: live API behaviour beyond two unauthenticated requests, which returned 401 problem+json. We had no credentials",
          "unchecked: GitHub stars and CI for the tryterra repositories. The GitHub API refused us for rate limits",
          "unchecked: the registration date of tryterra.co. RDAP returned no events",
          "No idempotency key was found for the write endpoints (nutrition, body, planned workouts)",
          "The founder's lead named the product Terra API at tryterra.co, which matches. Terra also runs Vantage, Lab Reports and Models APIs, graded here only as part of the platform"
        ]
      },
      "negative": 0,
      "verdict": "Graded on the Unified API and the Terra AI MCP server. A public OpenAPI 3.1 spec, llms.txt, per-user rate limits with Retry-After, and scoped admin tokens with approvals. Access starts at $499 a month with billing details at sign-up, the data API key has no scopes, and API key requests failed for 2 hours 38 minutes on 7 August 2026.",
      "bestFor": "A fitness, wellness, insurance or research product whose users connect consumer wearables and apps, and an agent that needs to read one user's sleep, activity or body data through MCP.",
      "strengths": [
        "Public OpenAPI 3.1 specs on GitHub under Apache 2.0, republished almost daily (spec version 2026.10.08.1 for the Unified API)",
        "Rate limits documented per user, with a Retry-After header and an X-Terra-RateLimit-Rule header naming the rule that fired",
        "Terra AI MCP server has six read tools that take explicit fields or select lists, so an agent fetches only the columns it needs",
        "Admin tokens carry 26 scopes, expire within 90 days, can be limited to environments, and risky changes need approval in the dashboard",
        "Credit prices are public, $0.005 a credit from 100,001 to 1,000,000 and $0.003 above, with 200 credits per active user a month"
      ],
      "weaknesses": [
        "No free tier. Sign-up asks for a plan and billing details, and Quick Start starts at $499 a month with a 30-day money-back guarantee",
        "The Unified API key is one environment-wide x-api-key with no scopes, and Terra AI takes the same key",
        "status.tryterra.co shows REST requests failing with authorisation errors for 2 hours 38 minutes on 7 August 2026",
        "No SLA is published outside Enterprise contracts, and no idempotency keys were found for write endpoints",
        "The privacy policy, effective 20 April 2023, excludes end-user wearable data, and no public sub-processor list was found"
      ],
      "agentNotes": [
        "Send dev-id and x-api-key headers on every Unified API and Terra AI call. A missing header returns 401 problem+json",
        "Keep each request window to 1,825 days or less and under 6,000 requested days per user an hour. On 429 with rule r2, wait Retry-After seconds",
        "Pass either fields or select to Terra AI tools, never both and never neither, or the call fails with a validation error",
        "Expect data by webhook after a user connects through the widget session. REST reads are for backfills and on-demand queries",
        "Use the Read only access level for the admin MCP server unless a change is needed. The MCP level can read API keys"
      ],
      "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": 65.9
        }
      ],
      "editorialScores": {
        "ergonomics": 78,
        "maintenance": 75,
        "payments": 20,
        "reliability": 67,
        "schema": 89,
        "security": 65,
        "transparency": 42
      },
      "provenanceScore": 69
    },
    "connect": {
      "claudeCode": "claude mcp add --transport http terra-ai https://access.tryterra.co/api/v2/mcp/\u003cuser_id\u003e --header \"dev-id: \u003cYOUR_DEV_ID\u003e\" --header \"x-api-key: \u003cYOUR_API_KEY\u003e\"",
      "config": {
        "mcpServers": {
          "terra-ai": {
            "headers": {
              "dev-id": "YOUR_DEV_ID",
              "x-api-key": "YOUR_API_KEY"
            },
            "url": "https://access.tryterra.co/api/v2/mcp/\u003cuser_id\u003e"
          }
        }
      }
    },
    "letme": {
      "capability": "https://letme.dev/health.wearables",
      "tool": "https://letme.dev/terra"
    },
    "notable": [
      "The Unified API answers at https://access.tryterra.co/api/v2 with dev-id and x-api-key headers, per the OpenAPI spec in tryterra/openapi (https://github.com/tryterra/openapi)",
      "Terra AI is a remote MCP server at https://access.tryterra.co/api/v2/mcp/\u003cuser_id\u003e with six tools, get_sleep_data, get_activity_data, get_daily_data, get_body_data, get_nutrition_data and get_menstruation_data (https://docs.tryterra.co/ai-interface/ai-interface)",
      "A separate admin MCP server at https://access.tryterra.co/api/v3/admin/mcp manages the account over OAuth, with Read only and MCP access levels, dry runs and dashboard approval for risky changes (https://docs.tryterra.co/developer-tools/mcp-server)",
      "Rate limits apply per user, 1,825 days per request and 6,000 requested days per rolling hour bucket, with Retry-After on 429 (https://docs.tryterra.co/reference/health-and-fitness-api/rate-limits)",
      "status.tryterra.co lists a 2 hour 38 minute window on 7 August 2026 when API key requests failed with authorisation errors, and 16 minutes of errors on 29 September 2026 (https://status.tryterra.co/history.rss)",
      "The website terms say Terra is SOC 2 Type II certified and HIPAA and GDPR compliant, with a Vanta trust centre linked from the GDPR page (https://tryterra.co/gdpr)"
    ],
    "area": "domain-data",
    "details": [
      {
        "label": "APIs",
        "value": "Unified API v2 (OpenAPI 3.1, 55 operations, version 2026.10.08.1), Streaming API (AsyncAPI), Teams API, Vantage API, admin API (101 operations), all in github.com/tryterra/openapi"
      },
      {
        "label": "MCP servers",
        "value": "Terra AI at https://access.tryterra.co/api/v2/mcp/\u003cuser_id\u003e, six read tools, dev-id and x-api-key headers. Admin server at https://access.tryterra.co/api/v3/admin/mcp, OAuth with client ID metadata documents, no dynamic client registration"
      },
      {
        "label": "Credentials",
        "value": "Unified API and Terra AI take dev-id plus one x-api-key per environment (testing, staging, production). Admin API and admin MCP take personal access tokens with 26 scopes, 7 to 90 day lifetimes and optional environment limits"
      },
      {
        "label": "Rate limits",
        "value": "Per user, 1,825 days per request window and 6,000 requested days per UTC hour bucket on data-read endpoints. 429 carries X-Terra-RateLimit-Rule and Retry-After for the hourly rule"
      },
      {
        "label": "Errors",
        "value": "application/problem+json with code and detail, for example 401 `unauthorized` and 403 `scope_missing`. Terra AI documents guaranteed error strings for transport and tool failures"
      },
      {
        "label": "Environments",
        "value": "Testing and staging capped at 50 users each, production unlimited"
      },
      {
        "label": "Pricing",
        "value": "Quick Start from $499 a month with 100,000 credits. Extra credits $0.005 to 1,000,000 and $0.003 above. 200 credits per active authentication a month, first 400 events per authentication free then 0.5 credits each. Model runs 1 credit ($0.01). Enterprise custom with BAA and SLAs"
      },
      {
        "label": "SDKs",
        "value": "terra-python 1.1.0 and terra-api 2.1.0 on npm (2 October 2025), Terra CLI @tryterra/cli 0.20.0 (9 October 2026), mobile SDKs for iOS, Android, React Native and Flutter. The legacy JavaScript package no longer receives updates"
      },
      {
        "label": "Status",
        "value": "status.tryterra.co on Instatus, groups for 78 data providers and Terra infrastructure, with incident history and RSS"
      },
      {
        "label": "Certifications",
        "value": "SOC 2 Type II, HIPAA and GDPR claimed on tryterra.co. The Vanta trust centre is drawn by script and was not read"
      }
    ],
    "unitPrices": [
      {
        "item": "Quick Start plan, 100,000 credits included",
        "unit": "month",
        "usd": 499,
        "note": "From price on tryterra.co/pricing, 2026-10-14"
      },
      {
        "item": "Credit beyond the monthly allowance (100,001 to 1,000,000)",
        "unit": "credit",
        "usd": 0.005,
        "note": "$0.003 above 1,000,000 credits. An active user costs 200 credits a month"
      }
    ],
    "provenance": {
      "legalEntity": "Terra Enabling Developers Inc.",
      "domain": "tryterra.co",
      "domainRegistered": "",
      "endpointOnVendorDomain": true,
      "terms": "https://tryterra.co/terms-of-service",
      "privacy": "https://tryterra.co/privacy",
      "statusPage": "https://status.tryterra.co",
      "changelog": "https://docs.tryterra.co/changelog/2026/readme",
      "securityTxt": "none",
      "checked": "2026-10-14",
      "notes": [
        "The terms of service, last updated 1 May 2026, are between the customer and Terra Enabling Developers Inc., a Delaware corporation. The privacy policy names a UK subsidiary, Terra Enabling Developers Ltd.",
        "The privacy policy (effective 20 April 2023) says it doesn't cover data collected from wearables about end users, and that processing takes place mainly in the United Kingdom.",
        "tryterra.co/.well-known/security.txt returns 404.",
        "RDAP for tryterra.co returned no registration date.",
        "API and MCP endpoints answer at access.tryterra.co, a tryterra.co subdomain."
      ],
      "score": 69,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "Terra Enabling Developers Inc.",
          "points": 20,
          "max": 20,
          "state": "ok"
        },
        {
          "check": "Domain age",
          "value": "tryterra.co, no registry record we could read",
          "points": 0,
          "max": 15,
          "state": "no"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "access.tryterra.co",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "read, states 6 of the 7 things a reader expects, and has 2 clauses that cost points",
          "points": 5.1,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Privacy policy",
          "value": "read, states 7 of the 8 things a reader expects",
          "points": 9.3,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Status page",
          "value": "status.tryterra.co",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "Changelog",
          "value": "published",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "security.txt",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        }
      ],
      "policies": [
        {
          "kind": "terms",
          "url": "https://tryterra.co/terms-of-service",
          "state": "read",
          "readAt": "2026-10-14",
          "statedDate": "2026-05-01",
          "words": 4359,
          "points": 5.1,
          "max": 10,
          "expected": [
            {
              "key": "terms.date",
              "label": "Gives the date it was last updated",
              "found": true,
              "quote": "Last updated: May 1st, 2026",
              "says": "Last updated 2026-05-01"
            },
            {
              "key": "terms.law",
              "label": "Names the governing law or courts",
              "found": true,
              "quote": "This Agreement will be governed by the laws of the State of Delaware, United States, without regard to the conflict of law provisions thereof.",
              "says": "The law of the State of Delaware"
            },
            {
              "key": "terms.liability",
              "label": "States a limit on its liability",
              "found": true,
              "quote": "…each Order (including all liability under this agreement that arises as a result of such Order) will not exceed the amount paid or payable by customer to Terra during the six (6) month period prior to the event giving rise to liability (provided that, if no fees are paid or payable, such amounts will be limited to one…",
              "says": "Capped at the fees paid in the 6 months before the claim or one hundred dollars"
            },
            {
              "key": "terms.termination",
              "label": "Says how the agreement or account can be ended",
              "found": true,
              "quote": "…Customer has passed a previous Compliance Review or received provisional access to the Services), Terra may suspend, revoke, or terminate Customer's access to the Services, without notice or liability to Customer.1.8 Responsible Use.Customer agrees to use the Services and the API Package responsibly."
            },
            {
              "key": "terms.changes",
              "label": "Says how changes to the terms are announced",
              "found": true,
              "quote": "Terra may modify the terms of this Agreement at any time by posting the revised version on its website or notifying Customer by email, and such changes will become effective upon posting or on the date specified in the notice.",
              "says": "Says it gives notice of a change"
            },
            {
              "key": "terms.use",
              "label": "Lists what users may not do",
              "found": true,
              "quote": "…as described in the applicable Order or otherwise approved by Terra in writing.1.2 Restrictions.Customer will not, and will not enable or assist any third-party to: (i) attempt to reverse engineer, decompile, disassemble, or otherwise attempt to discover the source code, object code, or underlying structure, ideas, kn…"
            },
            {
              "key": "terms.sla",
              "label": "Refers to a service level or uptime commitment",
              "found": false
            }
          ],
          "toKnow": [
            {
              "key": "terms.benchmark",
              "label": "Restricts benchmarking or competitive use",
              "found": true,
              "quote": "publicly disseminate information from any source regarding the performance of the Services or Output; or (vi) attempt to create a competitive, substitute or similar service through use of, or access to, the Services or Output",
              "costsPoints": true
            },
            {
              "key": "terms.nonotice",
              "label": "Says the terms or the service can change without notice",
              "found": true,
              "quote": "Terra may modify the terms of this Agreement at any time by posting the revised version on its website or notifying Customer by email, and such changes will become effective upon posting or on the date specified in the notice.",
              "costsPoints": true
            },
            {
              "key": "terms.cutoff",
              "label": "Says access can be ended without notice or for any reason",
              "found": true,
              "quote": "…has passed a previous Compliance Review or received provisional access to the Services), Terra may suspend, revoke, or terminate Customer's access to the Services, without notice or liability to Customer.1.8 Responsible Use.Customer agrees to use the Services and the API Package responsibly."
            },
            {
              "key": "terms.arbitration",
              "label": "Requires arbitration or waives class actions",
              "found": true,
              "quote": "This Agreement contains mandatory arbitration provisions that require the use of arbitration to resolve disputes."
            }
          ],
          "notes": [
            {
              "date": "2026-10-14",
              "text": "Terra may revise its rates or pricing structure at any time.",
              "quote": "Terra may revise its rates or pricing structure for the Services at any time"
            },
            {
              "date": "2026-10-14",
              "text": "The customer agrees to take part in case studies and other marketing Terra reasonably requests, and Terra may disclose it as a customer.",
              "quote": "During the term of this Agreement, (a) Customer agrees to participate in case studies and other similar marketing efforts reasonably requested by Terra; (b) Terra may disclose that Customer is a Terra customer to third parties"
            }
          ]
        },
        {
          "kind": "privacy",
          "url": "https://tryterra.co/privacy",
          "state": "read",
          "readAt": "2026-10-14",
          "statedDate": "2023-04-20",
          "words": 3602,
          "points": 9.3,
          "max": 10,
          "expected": [
            {
              "key": "privacy.date",
              "label": "Gives the date it was last updated",
              "found": true,
              "quote": "Effective Date: 20th April 2023",
              "says": "Last updated 2023-04-20"
            },
            {
              "key": "privacy.collected",
              "label": "Says what personal data is collected",
              "found": true,
              "quote": "This Policy does not cover data we collect from wearables about end users."
            },
            {
              "key": "privacy.retention",
              "label": "Says how long data is kept",
              "found": true,
              "quote": "…obligated to retain this data for longer periods.The Company will retain Your Personal Data only for as long as is necessary for the purposes set out in this Privacy Policy.",
              "says": "For as long as needed, with no period named"
            },
            {
              "key": "privacy.processors",
              "label": "Says who else receives the data",
              "found": true,
              "quote": "…individual.\"Service\"refers to the use of the Website, Terra’s APIs, Terra’s software\"Service Provider\"means any natural or legal person who processes the data on behalf of the Company."
            },
            {
              "key": "privacy.sale",
              "label": "Says whether personal data is sold or shared for advertising",
              "found": false
            },
            {
              "key": "privacy.rights",
              "label": "Says what rights people have over their data",
              "found": true,
              "quote": "Where we rely on your consent you have the right to withdraw it at any time in the manner indicated when you consent or in the Services."
            },
            {
              "key": "privacy.contact",
              "label": "Gives a privacy contact",
              "found": true,
              "quote": "Otherwise, Terra is the processor.We have appointed a Data Protection Officer, who can be contacted at privacy@tryterra.coLegal Bases for ProcessingWe use your personal information only as permitted by law.",
              "says": "privacy@tryterra.coLegal"
            },
            {
              "key": "privacy.transfers",
              "label": "Says where data is transferred or stored",
              "found": true,
              "quote": "International Data TransfersPlease note that our data processing takes place mainly in the United Kingdom."
            }
          ],
          "toKnow": [
            {
              "key": "old",
              "label": "Has not been updated for three years or more",
              "found": true,
              "quote": "Effective Date: 20th April 2023"
            }
          ],
          "notes": [
            {
              "date": "2026-10-14",
              "text": "The policy does not cover data Terra collects from wearables about end users.",
              "quote": "This Policy does not cover data we collect from wearables about end users."
            }
          ]
        }
      ]
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/terra.json",
    "live": {
      "slug": "terra",
      "probe": {
        "target": "https://access.tryterra.co/api/v2/mcp/\u003cuser_id\u003e",
        "method": "get",
        "lastAt": "2026-10-14T09:42:10.210334836Z",
        "lastOk": true,
        "lastStatus": 401,
        "lastMs": 45,
        "lastNote": "asks for credentials",
        "authRequired": true,
        "uptime24h": 100,
        "uptime30d": 100,
        "p50ms24h": 47,
        "p95ms24h": 126,
        "samples24h": 17,
        "samples30d": 17,
        "days": [
          {
            "date": "2026-10-14",
            "probes": 17,
            "ok": 17
          }
        ]
      },
      "vendorStatus": {
        "page": "https://status.tryterra.co",
        "indicator": "unknown",
        "summary": "no machine-readable status found",
        "checkedAt": "2026-10-14T08:54:00.980823971Z"
      },
      "updatedAt": "2026-10-14T09:42:10.210334836Z"
    }
  }
}
