{
  "data": {
    "a": {
      "slug": "1uphealth",
      "name": "1upHealth",
      "vendor": "1upHealth, Inc.",
      "vendorUrl": "https://1up.health",
      "kind": "http-api",
      "category": "health-data",
      "summary": "1upHealth runs FHIR APIs for US health plans, including the CMS Patient Access, Provider Access and Payer-to-Payer APIs, which let member-authorised third-party apps read claims, coverage and clinical data.",
      "url": "https://www.anchorterminal.com/tools/1uphealth",
      "markdownUrl": "https://www.anchorterminal.com/tools/1uphealth.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/1uphealth.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/1uphealth.json",
      "license": "Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024)",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "oauth",
      "authNotes": "Developers register in the 1up Dev Portal, verify an email and create sandbox client credentials. Patient Access uses the authorisation code grant, with the member signing in to the health plan's auth app, and access tokens last 15 minutes. Provider Access and Payer-to-Payer use client credentials with scopes such as `bulk-data|user/*.rs`. Client secrets can be regenerated in the Dev Portal. Production access follows 1upHealth's vetting of the app.",
      "pricing": "paid",
      "pricingNotes": "No public prices. The terms set fees in Order Forms, with one price increase a year on 90 days' notice. The Dev Portal sandbox clients need only a verified email, and no card was mentioned (checked 2026-10-14).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, llms.txt or the terms (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://docs.1up.health",
      "llmsTxt": "https://docs.1up.health/llms.txt",
      "capabilities": [
        "health.records",
        "health.fhir",
        "health.consent"
      ],
      "tags": [
        "hosted",
        "health-records",
        "claims",
        "fhir",
        "bulk-data",
        "oauth",
        "llms-txt",
        "status-page",
        "sla",
        "free-tier",
        "hitrust",
        "soc2"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 46.8,
        "grade": "D",
        "agentReady": false,
        "rank": 903,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 12,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 32,
          "maintenance": 37,
          "payments": 20,
          "reliability": 52,
          "schema": 50,
          "security": 63,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "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.",
        "bestFor": "Consumer and care apps that read a member's health plan claims and clinical data under the CMS rules, and payers meeting those rules.",
        "strengths": [
          "Sandbox client credentials from the Dev Portal with only an email verification",
          "Patient Access client IDs work across every payer production environment 1upHealth runs, once vetted",
          "Privacy policy with stated retention periods and US-only processing",
          "HITRUST, SOC 2 Type 2 and CSA STAR on a public trust centre"
        ],
        "weaknesses": [
          "No rate limits, 429 handling or error formats documented",
          "Release notes are undated",
          "The status page lists no components",
          "Patient Connect, the patient-mediated exchange across health systems, was sunset on 30 September 2026"
        ],
        "agentNotes": [
          "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"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 46.8
          }
        ],
        "editorialScores": {
          "ergonomics": 32,
          "maintenance": 37,
          "payments": 20,
          "reliability": 52,
          "schema": 50,
          "security": 63,
          "transparency": 61
        },
        "provenanceScore": 82
      },
      "connect": {
        "http": "GET https://api.1uphealthdemo.com/r4/ExplanationOfBenefit\nAuthorization: Bearer \u003caccess-token\u003e"
      },
      "letme": {
        "capability": "https://letme.dev/health.records",
        "tool": "https://letme.dev/1uphealth"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "1upHealth, Inc.",
        "domain": "1up.health",
        "domainRegistered": "2017-07-20",
        "endpointOnVendorDomain": true,
        "terms": "https://1up.health/terms-of-service/",
        "privacy": "https://1up.health/privacy-policy/",
        "statusPage": "https://status.1up.health",
        "changelog": "https://docs.1up.health/docs/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The Terms of Service (effective 1 August 2024) name 1upHealth, Inc., 280 Summer Street, Boston, MA 02210, and include the SLA as Exhibit A.",
          "The privacy policy (last updated 25 June 2026) covers the website, keeps logs up to 24 months, clears production data within 30 days and backups within 90 days of a deletion request, keeps data in the US, and leaves PHI to customer BAAs.",
          "The demo API answers on 1uphealthdemo.com, a separate domain.",
          "1up.health/.well-known/security.txt returns 404. The trust centre sends vulnerability reports to security@1up.health.",
          "Release notes carry version numbers such as 26.09.2 but no dates.",
          "RDAP gives 1up.health a registration date of 2017-07-20."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/1uphealth.json",
      "live": {
        "slug": "1uphealth",
        "vendorStatus": {
          "page": "https://status.1up.health",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:38:50.511902685Z"
        },
        "updatedAt": "2026-10-14T09:38:50.511902685Z"
      }
    },
    "answer": "Metriport Medical API scores 50.1 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 3 of 7 scored categories. 1upHealth leads on reliability, security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust.",
    "b": {
      "slug": "metriport",
      "name": "Metriport Medical API",
      "vendor": "Metriport Inc.",
      "vendorUrl": "https://www.metriport.com",
      "kind": "http-api",
      "category": "health-data",
      "summary": "Metriport's Medical API retrieves a patient's records from US health information exchanges, pharmacies and labs, converts them to deduplicated FHIR, and returns them through a REST API with webhooks. Production use requires a covered entity with an NPI.",
      "url": "https://www.anchorterminal.com/tools/metriport",
      "markdownUrl": "https://www.anchorterminal.com/tools/metriport.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/metriport.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/metriport.json",
      "repo": "https://github.com/metriport/metriport",
      "license": "Proprietary hosted service under Metriport's terms of use. The source in metriport/metriport is AGPLv3, with an enterprise directory under its own licence, and the @metriport/api-sdk package on npm is MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@metriport/api-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "Every request sends a key in the `x-api-key` header to https://api.metriport.com, or https://api.sandbox.metriport.com in sandbox mode. Keys are generated in the developer dashboard after Metriport approves the account, up to two at once for rotation, each revocable at once and each with full access including destructive operations. No scopes or read-only key were found. Production access needs a covered entity with an NPI and a treatment purpose of use, agreed on an intro call.",
      "pricing": "paid",
      "pricingNotes": "No public prices. metriport.com has no pricing page, the terms say some services carry a fee paid by card, wire or Stripe, and production access starts with an intro call booked from the dashboard. A sandbox with example patients opens once Metriport approves the access request, and its cost is not stated (checked 2026-10-14).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the documentation, llms.txt, the repository README or the terms (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 793,
        "npmWeekly": 28168,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://docs.metriport.com/medical-api/getting-started/quickstart",
      "llmsTxt": "https://docs.metriport.com/llms.txt",
      "capabilities": [
        "health.records",
        "health.fhir",
        "health.consent",
        "health.ehr"
      ],
      "tags": [
        "hosted",
        "health-records",
        "fhir",
        "open-source",
        "agpl",
        "typescript",
        "llms-txt",
        "webhooks",
        "status-page",
        "sales-led",
        "hitrust",
        "soc2"
      ],
      "lastRelease": "2026-09-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.1,
        "grade": "D",
        "agentReady": false,
        "rank": 833,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 70,
          "maintenance": 74,
          "payments": 5,
          "reliability": 45,
          "schema": 65,
          "security": 41,
          "transparency": 56
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "One network query pulls a patient's records from HIEs, pharmacies and labs and returns deduplicated FHIR, with per-operation rate limits, RFC 7807 errors and AGPLv3 source. Each API key has full access with no scopes, there are no public prices, and the sandbox opens only after Metriport approves the account.",
        "bestFor": "US care providers and digital health companies that need a patient's network records as FHIR with webhooks.",
        "strengths": [
          "One asynchronous network query covers HIEs, pharmacies and labs, with a webhook as each source is merged",
          "Consolidated FHIR output is deduplicated and coded, with PDF or HTML record summaries",
          "Rate limits published per operation, and `count` up to 500 per page",
          "AGPLv3 source on GitHub and an MIT TypeScript SDK released on 28 September 2026"
        ],
        "weaknesses": [
          "Every API key has full access, including destructive operations, with no scopes",
          "No public prices, and the sandbox needs Metriport's approval first",
          "The Fern definition covers only part of the API and no public changelog was found",
          "The status page renders only with JavaScript, so its history could not be read"
        ],
        "agentNotes": [
          "Check the `errors` array after Start Network Query. It returns 2XX even when some sources fail",
          "Wait for `network-query.*` webhooks or poll Get Network Query Status before reading consolidated data, which is cached from the last query",
          "Send the resource's `eTag` in `If-Match` on updates to avoid overwriting newer data",
          "Keep patient creates under 15 a minute and network queries under 20 a minute per source",
          "In sandbox, create patients whose first name matches a pre-defined persona to get example records"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.1
          }
        ],
        "editorialScores": {
          "ergonomics": 70,
          "maintenance": 74,
          "payments": 5,
          "reliability": 45,
          "schema": 65,
          "security": 41,
          "transparency": 43
        },
        "provenanceScore": 69
      },
      "connect": {
        "install": "npm install --save @metriport/api-sdk",
        "http": "POST https://api.sandbox.metriport.com/medical/v1/patient?facilityId=\u003cfacility-id\u003e\nx-api-key: \u003capi-key\u003e\nContent-Type: application/json"
      },
      "letme": {
        "capability": "https://letme.dev/health.records",
        "tool": "https://letme.dev/metriport"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Metriport Inc.",
        "domain": "metriport.com",
        "domainRegistered": "2021-02-09",
        "endpointOnVendorDomain": true,
        "terms": "https://www.metriport.com/terms",
        "privacy": "https://www.metriport.com/privacy-policy",
        "statusPage": "https://status.metriport.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The terms of use (last updated January 2024) give a registered office at 2261 Market Street #4818, San Francisco, CA 94114, forbid access 'through automated or non-human means' and the use of 'data mining, robots, or similar data gathering and extraction tools', and say the site is not built for HIPAA-regulated use. We read them as a fact and fetched only what robots.txt allows.",
          "The privacy policy (last updated 21 February 2023) covers website visitors and customer contacts, says data is stored in the US, and does not mention API data or PHI.",
          "www.metriport.com/.well-known/security.txt returns 404. SECURITY.md in the repository sends reports to GitHub's vulnerability reporting or support@metriport.com.",
          "No public changelog was found in the documentation or on the website.",
          "RDAP gives metriport.com a registration date of 2021-02-09."
        ],
        "score": 69
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/metriport.json",
      "live": {
        "slug": "metriport",
        "vendorStatus": {
          "page": "https://status.metriport.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-14T08:53:23.949542071Z"
        },
        "updatedAt": "2026-10-14T08:53:23.949542071Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "1upHealth, Inc.",
        "b": "Metriport Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024)",
        "b": "Proprietary hosted service under Metriport's terms of use. The source in metriport/metriport is AGPLv3, with an enterprise directory under its own licence, and the @metriport/api-sdk package on npm is MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-09-28",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2024-01-01",
        "name": "Terms last updated"
      },
      {
        "a": "2026-06-25",
        "b": "2023-02-21",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "793 stars, 28k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Metriport Medical API scores 50.1 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 3 of 7 scored categories. 1upHealth leads on reliability, security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust.",
        "question": "Which is better for AI agents, 1upHealth or Metriport Medical API?"
      },
      {
        "answer": "1upHealth uses an OAuth sign-in. Metriport Medical API needs an API key.",
        "question": "Do 1upHealth and Metriport Medical API need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for 1upHealth. No hosted endpoint is listed for Metriport Medical API.",
        "question": "Can an agent call 1upHealth and Metriport Medical API without installing anything?"
      },
      {
        "answer": "No open-source release is listed for 1upHealth. Metriport Medical API is open source (Proprietary hosted service under Metriport's terms of use. The source in metriport/metriport is AGPLv3, with an enterprise directory under its own licence, and the @metriport/api-sdk package on npm is MIT).",
        "question": "Are 1upHealth and Metriport Medical API open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 52 against 45",
          "Security \u0026 auth, 63 against 41",
          "Payments \u0026 pricing, 20 against 5",
          "Transparency \u0026 trust, 72 against 56"
        ],
        "also": null,
        "goodFor": "Consumer and care apps that read a member's health plan claims and clinical data under the CMS rules, and payers meeting those rules.",
        "slug": "1uphealth",
        "watchFor": "No rate limits, 429 handling or error formats documented"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 65 against 50",
          "Agent ergonomics, 70 against 32",
          "Maintenance \u0026 community, 74 against 37"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "US care providers and digital health companies that need a patient's network records as FHIR with webhooks.",
        "slug": "metriport",
        "watchFor": "Every API key has full access, including destructive operations, with no scopes"
      }
    ],
    "job": {
      "capability": "health.records",
      "name": "Patient record retrieval"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-rook.json",
        "title": "1upHealth vs ROOK",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-rook"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-terra.json",
        "title": "1upHealth vs Terra API",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-terra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aidbox-vs-metriport.json",
        "title": "Aidbox vs Metriport Medical API",
        "url": "https://www.anchorterminal.com/compare/aidbox-vs-metriport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medplum-vs-metriport.json",
        "title": "Medplum vs Metriport Medical API",
        "url": "https://www.anchorterminal.com/compare/medplum-vs-metriport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metriport-vs-rook.json",
        "title": "Metriport Medical API vs ROOK",
        "url": "https://www.anchorterminal.com/compare/metriport-vs-rook"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metriport-vs-terra.json",
        "title": "Metriport Medical API vs Terra API",
        "url": "https://www.anchorterminal.com/compare/metriport-vs-terra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-aidbox.json",
        "title": "1upHealth vs Aidbox",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-aidbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla.json",
        "title": "1upHealth vs Health Gorilla",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.json",
        "title": "1upHealth vs Medblocks",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-medplum.json",
        "title": "1upHealth vs Medplum",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-medplum"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-particle-health.json",
        "title": "1upHealth vs Particle Health",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-particle-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-redox.json",
        "title": "1upHealth vs Redox",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-redox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-zus-health.json",
        "title": "1upHealth vs Zus Health",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-zus-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/health-gorilla-vs-metriport.json",
        "title": "Health Gorilla vs Metriport Medical API",
        "url": "https://www.anchorterminal.com/compare/health-gorilla-vs-metriport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-metriport.json",
        "title": "Medblocks vs Metriport Medical API",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-metriport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metriport-vs-particle-health.json",
        "title": "Metriport Medical API vs Particle Health",
        "url": "https://www.anchorterminal.com/compare/metriport-vs-particle-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metriport-vs-redox.json",
        "title": "Metriport Medical API vs Redox",
        "url": "https://www.anchorterminal.com/compare/metriport-vs-redox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metriport-vs-zus-health.json",
        "title": "Metriport Medical API vs Zus Health",
        "url": "https://www.anchorterminal.com/compare/metriport-vs-zus-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-validic.json",
        "title": "1upHealth vs Validic Inform",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-validic"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metriport-vs-validic.json",
        "title": "Metriport Medical API vs Validic Inform",
        "url": "https://www.anchorterminal.com/compare/metriport-vs-validic"
      }
    ],
    "scores": [
      {
        "1uphealth": 52,
        "by": 7,
        "edge": "1uphealth",
        "key": "reliability",
        "metriport": 45,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "1uphealth": 50,
        "by": 15,
        "edge": "metriport",
        "key": "schema",
        "metriport": 65,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "1uphealth": 32,
        "by": 38,
        "edge": "metriport",
        "key": "ergonomics",
        "metriport": 70,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "1uphealth": 63,
        "by": 22,
        "edge": "1uphealth",
        "key": "security",
        "metriport": 41,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "1uphealth": 20,
        "by": 15,
        "edge": "1uphealth",
        "key": "payments",
        "metriport": 5,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "1uphealth": 37,
        "by": 37,
        "edge": "metriport",
        "key": "maintenance",
        "metriport": 74,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "1uphealth": 72,
        "by": 16,
        "edge": "1uphealth",
        "key": "transparency",
        "metriport": 56,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Metriport Medical API scores 50.1 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 3 of 7 scored categories. 1upHealth leads on reliability, security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust. Both do patient record retrieval.",
    "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.",
      "metriport": "One network query pulls a patient's records from HIEs, pharmacies and labs and returns deduplicated FHIR, with per-operation rate limits, RFC 7807 errors and AGPLv3 source. Each API key has full access with no scopes, there are no public prices, and the sandbox opens only after Metriport approves the account."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport",
    "json": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport.md",
    "slim": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport.min.md"
  },
  "markdown": "Metriport Medical API scores 50.1 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 3 of 7 scored categories. 1upHealth leads on reliability, security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust. Both do patient record retrieval.\n\n- 1upHealth: grade D, 46.8/100, rank #903 of 1076. Markdown https://www.anchorterminal.com/tools/1uphealth.md · JSON https://www.anchorterminal.com/api/v1/tools/1uphealth.json\n- Metriport Medical API: grade D, 50.1/100, rank #833 of 1076. Markdown https://www.anchorterminal.com/tools/metriport.md · JSON https://www.anchorterminal.com/api/v1/tools/metriport.json\n- Best health record and wellness data APIs for AI agents: https://www.anchorterminal.com/best/health-data/index.md\n- All 63 health comparisons: https://www.anchorterminal.com/compare/health-data/index.md\n\n## Which one, for what\n\n### 1upHealth (D)\n\nGood 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.\n\nAhead on:\n- Reliability, 52 against 45\n- Security \u0026 auth, 63 against 41\n- Payments \u0026 pricing, 20 against 5\n- Transparency \u0026 trust, 72 against 56\n\nWatch for: No rate limits, 429 handling or error formats documented\n\n### Metriport Medical API (D)\n\nGood for: US care providers and digital health companies that need a patient's network records as FHIR with webhooks.\n\nAhead on:\n- Schema \u0026 documentation, 65 against 50\n- Agent ergonomics, 70 against 32\n- Maintenance \u0026 community, 74 against 37\n\nAlso in its favour:\n- Open source\n\nWatch for: Every API key has full access, including destructive operations, with no scopes\n\n\n## Score by category\n\n| Category | Weight | 1upHealth | Metriport Medical API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 52 | 45 | 1upHealth +7 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 50 | 65 | Metriport Medical API +15 |\n| Agent ergonomics | 13% (16.2 this run) | 32 | 70 | Metriport Medical API +38 |\n| Security \u0026 auth | 14% (17.5 this run) | 63 | 41 | 1upHealth +22 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 5 | 1upHealth +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 37 | 74 | Metriport Medical API +37 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 56 | 1upHealth +16 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **46.8 · D** | **50.1 · D** | |\n\n## Facts side by side\n\n| Fact | 1upHealth | Metriport Medical API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | 1upHealth, Inc. | Metriport Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | API key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024) | Proprietary hosted service under Metriport's terms of use. The source in metriport/metriport is AGPLv3, with an enterprise directory under its own licence, and the @metriport/api-sdk package on npm is MIT |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | none | 2026-09-28 |\n| Terms last updated | no date given | 2024-01-01 |\n| Privacy policy last updated | 2026-06-25 | 2023-02-21 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | none | 793 stars, 28k npm/wk |\n\n## Verdicts\n\n**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.\n\n**Metriport Medical API.** One network query pulls a patient's records from HIEs, pharmacies and labs and returns deduplicated FHIR, with per-operation rate limits, RFC 7807 errors and AGPLv3 source. Each API key has full access with no scopes, there are no public prices, and the sandbox opens only after Metriport approves the account.\n\n## Before you call either\n\n### 1upHealth\n\n1. Hand the Patient Access sign-in to the member, who must authorise in the health plan's auth app\n2. Exchange the authorisation code within five minutes, and refresh before the 15-minute token expires\n3. Email payer-patient-access@1up.health with the client ID to get the app synced to the demo environment\n4. Expect only claims and coverage resources from some payers, and read /r4/metadata first\n\n### Metriport Medical API\n\n1. Check the `errors` array after Start Network Query. It returns 2XX even when some sources fail\n2. Wait for `network-query.*` webhooks or poll Get Network Query Status before reading consolidated data, which is cached from the last query\n3. Send the resource's `eTag` in `If-Match` on updates to avoid overwriting newer data\n4. Keep patient creates under 15 a minute and network queries under 20 a minute per source\n5. In sandbox, create patients whose first name matches a pre-defined persona to get example records\n\n## Questions\n\n### Which is better for AI agents, 1upHealth or Metriport Medical API?\n\nMetriport Medical API scores 50.1 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 3 of 7 scored categories. 1upHealth leads on reliability, security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust.\n\n### Do 1upHealth and Metriport Medical API need an API key?\n\n1upHealth uses an OAuth sign-in. Metriport Medical API needs an API key.\n\n### Can an agent call 1upHealth and Metriport Medical API without installing anything?\n\nNo hosted endpoint is listed for 1upHealth. No hosted endpoint is listed for Metriport Medical API.\n\n### Are 1upHealth and Metriport Medical API open source?\n\nNo open-source release is listed for 1upHealth. Metriport Medical API is open source (Proprietary hosted service under Metriport's terms of use. The source in metriport/metriport is AGPLv3, with an enterprise directory under its own licence, and the @metriport/api-sdk package on npm is MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/1uphealth-vs-metriport.json, and with the fewest tokens: https://www.anchorterminal.com/compare/1uphealth-vs-metriport.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"1uphealth\", \"b\": \"metriport\"}`. From a terminal: `anchor compare 1uphealth metriport`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/1uphealth.json and https://www.anchorterminal.com/api/v1/tools/metriport.json\n\n## Other comparisons with 1upHealth or Metriport Medical API\n\n- [1upHealth vs ROOK](https://www.anchorterminal.com/compare/1uphealth-vs-rook.md)\n- [1upHealth vs Terra API](https://www.anchorterminal.com/compare/1uphealth-vs-terra.md)\n- [Aidbox vs Metriport Medical API](https://www.anchorterminal.com/compare/aidbox-vs-metriport.md)\n- [Medplum vs Metriport Medical API](https://www.anchorterminal.com/compare/medplum-vs-metriport.md)\n- [Metriport Medical API vs ROOK](https://www.anchorterminal.com/compare/metriport-vs-rook.md)\n- [Metriport Medical API vs Terra API](https://www.anchorterminal.com/compare/metriport-vs-terra.md)\n- [1upHealth vs Aidbox](https://www.anchorterminal.com/compare/1uphealth-vs-aidbox.md)\n- [1upHealth vs Health Gorilla](https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla.md)\n- [1upHealth vs Medblocks](https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.md)\n- [1upHealth vs Medplum](https://www.anchorterminal.com/compare/1uphealth-vs-medplum.md)\n- [1upHealth vs Particle Health](https://www.anchorterminal.com/compare/1uphealth-vs-particle-health.md)\n- [1upHealth vs Redox](https://www.anchorterminal.com/compare/1uphealth-vs-redox.md)\n- [1upHealth vs Zus Health](https://www.anchorterminal.com/compare/1uphealth-vs-zus-health.md)\n- [Health Gorilla vs Metriport Medical API](https://www.anchorterminal.com/compare/health-gorilla-vs-metriport.md)\n- [Medblocks vs Metriport Medical API](https://www.anchorterminal.com/compare/medblocks-vs-metriport.md)\n- [Metriport Medical API vs Particle Health](https://www.anchorterminal.com/compare/metriport-vs-particle-health.md)\n- [Metriport Medical API vs Redox](https://www.anchorterminal.com/compare/metriport-vs-redox.md)\n- [Metriport Medical API vs Zus Health](https://www.anchorterminal.com/compare/metriport-vs-zus-health.md)\n- [1upHealth vs Validic Inform](https://www.anchorterminal.com/compare/1uphealth-vs-validic.md)\n- [Metriport Medical API vs Validic Inform](https://www.anchorterminal.com/compare/metriport-vs-validic.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "1upHealth vs Metriport Medical API",
        "url": ""
      }
    ],
    "description": "Metriport Medical scores 50.1 (D) to 1upHealth's 46.8 (D) for patient record retrieval. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "1upHealth D 46.8",
      "Metriport Medical API D 50.1",
      "scores"
    ],
    "h1": "1upHealth vs Metriport Medical API",
    "image": "https://www.anchorterminal.com/assets/og/compare-1uphealth-vs-metriport.png",
    "path": "/compare/1uphealth-vs-metriport",
    "published": "2026-10-01",
    "section": "tools",
    "title": "1upHealth vs Metriport Medical for AI agents (2026) | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport"
  },
  "tokens": {
    "markdown": 2400,
    "slim": 680
  },
  "version": 1
}
