MedTrainer · Authentication Profile

Medtrainer Authentication

Authentication

MedTrainer secures its APIs with apiKey and http across 2 declared security schemes, as derived from its OpenAPI definitions.

CompanyHealthcareComplianceCredentialingLearning ManagementProvider DirectoryFHIRHL7TrainingRisk ManagementSoftware-as-a-Service
Methods: apiKey, http Schemes: 2 OAuth flows: API key in: header

Security Schemes

ApiKeyHeader apiKey
· in: header (X-API-Key)
BearerAuth http
scheme: bearer

Source

Authentication Profile

Raw ↑
generated: '2026-08-25'
method: searched
source: >-
  openapi/medtrainer-public-api-openapi.json;
  https://api.medtrainer.com/docs#section/Getting-started;
  https://auth.medtrainer.com/.well-known/openid-configuration
docs: https://api.medtrainer.com/docs#section/Getting-started
summary:
  types:
  - apiKey
  - http
  api_key_in:
  - header
  primary: X-API-Key header
  oauth2: false
schemes:
- name: ApiKeyHeader
  type: apiKey
  in: header
  parameter: X-API-Key
  description: Preferred authentication header for protected endpoints.
  sources:
  - openapi/medtrainer-public-api-openapi.json
- name: BearerAuth
  type: http
  scheme: bearer
  bearerFormat: API key
  description: 'Alternative authentication scheme using `Authorization: Bearer <token>`. The bearer value is the same API key, not a separately issued OAuth access token.'
  sources:
  - openapi/medtrainer-public-api-openapi.json
key_issuance:
  self_service: true
  requires_existing_account: true
  flow:
  - Sign in to the MedTrainer platform with an account holding Super Admin or Admin permissions.
  - Open Organization from the left-hand menu.
  - Expand "Organization Management" and open "API keys manager".
  - Create an API key group, supplying a name and description.
  - The group is created with a "Default" key in Inactive status; change the status to Active before use.
  source: 'https://api.medtrainer.com/docs#section/Step-by-step (also carried verbatim in info.description of the OpenAPI)'
  note: >-
    Keys cannot be obtained without a paying MedTrainer tenant and an admin role. There is no
    developer sandbox, no free tier and no anonymous key issuance, so the API is customer-gated
    even though the reference documentation is fully public.
unauthenticated_behavior:
  status: 401
  media_type: application/fhir+json
  body: '{"resourceType":"OperationOutcome","issue":[{"severity":"error","code":"login","details":{"text":"Missing or invalid authentication credentials. Provide an API key using the X-API-Key header or Authorization: Bearer <token>."}}]}'
  observed: 'Probed 2026-08-25 against https://api.medtrainer.com/api/v1/locations — the host returns this for every path, including /.well-known/*.'
related_surfaces:
- surface: MedTrainer platform sign-in
  protocol: OpenID Connect / OAuth 2.0
  issuer: https://auth.medtrainer.com/
  discovery: well-known/medtrainer-auth-openid-configuration.json
  note: 'Auth0 on a MedTrainer custom domain. Supports authorization_code with PKCE (S256), refresh tokens, device code, private_key_jwt, and MFA challenge. Governs the LMS/web app, not the Public API.'
- surface: MedTrainer MCP server
  protocol: OAuth 2.0 (RFC 8414 + RFC 9728)
  issuer: https://medtrainer.com
  scope: mcp
  note: See mcp/medtrainer-mcp.yml.
gaps:
- 'No token rotation, expiry or revocation policy is published for API keys.'
- 'No key prefix convention is documented, so a leaked key is not self-identifying.'
- 'No mTLS, no signed requests, and no IP allow-listing are documented for a directory API that carries practitioner PII (names, home addresses, phone, email, NPI, birth place).'

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/medtrainer-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.