Medplum · Authentication Profile

Medplum Authentication

Authentication

Medplum secures its APIs with http, openIdConnect, and oauth2 (SMART App Launch 2.0.0, not declared in OpenAPI securitySchemes) across 4 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode and clientCredentials flow(s).

HealthcareFHIROpen-SourceDeveloper PlatformHIPAASMART on FHIRClinicalInteroperability
Methods: http, openIdConnect, oauth2 (SMART App Launch 2.0.0, not declared in OpenAPI securitySchemes) Schemes: 4 OAuth flows: authorizationCode, clientCredentials API key in:

Security Schemes

BasicAuth http
scheme: basic
BearerAuth http
scheme: bearer
OpenID openIdConnect
Medplum OAuth2 (SMART App Launch 2.0.0) oauth2

Source

Authentication Profile

Raw ↑
generated: '2026-08-14'
method: searched
source: openapi/medplum-fhir-api-openapi.yml
docs: https://www.medplum.com/docs/auth
summary:
  types:
  - http
  - openIdConnect
  - oauth2 (SMART App Launch 2.0.0, not declared in OpenAPI securitySchemes)
  api_key_in: []
  oauth2_flows:
  - authorizationCode
  - clientCredentials
schemes:
- name: BasicAuth
  type: http
  scheme: basic
  sources:
  - openapi/medplum-fhir-api-openapi.yml
- name: BearerAuth
  type: http
  scheme: bearer
  bearerFormat: JWT
  sources:
  - openapi/medplum-fhir-api-openapi.yml
- name: OpenID
  type: openIdConnect
  openIdConnectUrl: https://api.medplum.com/.well-known/openid-configuration
  sources:
  - openapi/medplum-fhir-api-openapi.yml
- name: Medplum OAuth2 (SMART App Launch 2.0.0)
  type: oauth2
  note: >-
    Not declared as an oauth2 securityScheme in the OpenAPI (only http basic/bearer +
    openIdConnect are declared there), but confirmed live at the RFC 8414 authorization-server
    metadata endpoint and documented at docs/auth and docs/access/smart-scopes. Full detail in
    scopes/medplum-scopes.yml.
  authorizationUrl: https://api.medplum.com/oauth2/authorize
  tokenUrl: https://api.medplum.com/oauth2/token
  userinfoUrl: https://api.medplum.com/oauth2/userinfo
  sources:
  - probed https://api.medplum.com/.well-known/oauth-authorization-server
  - https://www.medplum.com/docs/access/smart-scopes
x-evidence:
  well_known:
  - path: /.well-known/openid-configuration
    host: api.medplum.com
    status: 200
    file: well-known/medplum-openid-configuration.json
  - path: /.well-known/oauth-authorization-server
    host: api.medplum.com
    status: 200
    file: well-known/medplum-oauth-authorization-server.json
  - path: /.well-known/oauth-protected-resource
    host: api.medplum.com
    status: 200
    file: well-known/medplum-oauth-protected-resource.json
  fetched: '2026-08-14'

Work with this as data

Every security artifact here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/medplum-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.