Head to head · FHIR servers · October 2026 research run
1upHealth vs Terra API
Terra API scores 65.9 (B) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on transparency & trust. Both do fhir servers.
Best health record and wellness data APIs for AI agents · All 63 health comparisons
Which one, for what
Best for Consumer and care apps that read a member's health plan claims and clinical data under the CMS rules, and payers meeting those rules.
Ahead on
- Transparency & trust, 72 against 56
Watch for
No rate limits, 429 handling or error formats documented
Best for 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.
Ahead on
- Reliability, 67 against 52
- Schema & documentation, 89 against 50
- Agent ergonomics, 78 against 32
- Maintenance & community, 75 against 37
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
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
Score by category
| Category | Weight this run | 1upHealth | Terra API | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 52 | 67 | Terra API +15 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 50 | 89 | Terra API +39 |
| Agent ergonomics | 13%16.2 | 32 | 78 | Terra API +46 |
| Security & auth | 14%17.5 | 63 | 65 | Terra API +2 |
| Payments & pricing | 10%12.5 | 20 | 20 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 37 | 75 | Terra API +38 |
| Transparency & trust | 7%8.8 | 72 | 56 | 1upHealth +16 |
| Negative events | ≤15 | 0 | 0 | |
| Total | D 46.8/100 | B 65.9/100 |
Facts side by side
| Fact | 1upHealth | Terra API |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | 1upHealth, Inc. | Terra Enabling Developers Inc. |
| Hosted endpoint | no (local only) | https://access.tryterra.co/api/v2/mcp/<user_id> |
| Transports | HTTP | HTTP, Streamable HTTP |
| Auth | OAuth | OAuth or key |
| Pricing | Paid | Pay per use |
| x402 | no | no |
| Licence | Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024) | Proprietary service under Terra's terms of service. The OpenAPI specs repository is Apache 2.0 |
| Tools exposed | none | 6 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | none | 2026-10-13 |
| Terms last updated | no date given | 2026-05-01 |
| Privacy policy last updated | 2026-06-25 | 2023-04-20 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | yes | yes |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | not found in the text | yes |
| Popularity | none | 13k npm/wk, 11k PyPI/wk |
Verdicts
1upHealth
Self-serve Dev Portal sandbox clients and a demo health plan let an app test the CMS Patient Access, Provider Access and Payer-to-Payer FHIR APIs, backed by HITRUST and SOC 2 Type 2. No rate limits, error formats or dated releases are documented, and the Patient Access OAuth step needs the member in a browser.
Terra API
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.
Before you call either
1upHealth
- Hand the Patient Access sign-in to the member, who must authorise in the health plan's auth app
- Exchange the authorisation code within five minutes, and refresh before the 15-minute token expires
- Email payer-patient-access@1up.health with the client ID to get the app synced to the demo environment
- Expect only claims and coverage resources from some payers, and read /r4/metadata first
Terra API
- 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
Questions
Which is better for AI agents, 1upHealth or Terra API?
Terra API scores 65.9 (B) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on transparency & trust.
Do 1upHealth and Terra API need an API key?
1upHealth uses an OAuth sign-in. Terra API takes an API key or an OAuth sign-in.
Can an agent call 1upHealth and Terra API without installing anything?
No hosted endpoint is listed for 1upHealth. Terra API has a hosted endpoint at https://access.tryterra.co/api/v2/mcp/<user_id>.
Other comparisons with 1upHealth or Terra API
- 1upHealth vs ROOK
- Aidbox vs Terra API
- Health Gorilla vs Terra API
- Medplum vs Terra API
- Metriport Medical API vs Terra API
- Particle Health vs Terra API
- Redox vs Terra API
- 1upHealth vs Aidbox
- 1upHealth vs Health Gorilla
- 1upHealth vs Medblocks
- 1upHealth vs Medplum
- 1upHealth vs Metriport Medical API
- 1upHealth vs Particle Health
- 1upHealth vs Redox
- 1upHealth vs Zus Health
- 1upHealth vs Validic Inform
- Medblocks vs Terra API
- Terra API vs Zus Health
- ROOK vs Terra API
- Terra API vs Validic Inform
Machine-readable
- This page as Markdown
/compare/1uphealth-vs-terra.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/1uphealth.json·/api/v1/tools/terra.json - From a terminal
anchor compare 1uphealth terra(the CLI) - Over MCP
compare_tools {"a": "1uphealth", "b": "terra"}at/mcp, no key