MolTrust · Authentication Profile

Moltrust Ch Authentication

Authentication

MolTrust secures its APIs with apiKey, http-bearer (declared, not live), x402-payment, and admin-key (undeclared) across 6 declared security schemes, as derived from its OpenAPI definitions.

AI AgentsAgent IdentityDecentralized IdentityVerifiable CredentialsTrust and SafetyAgent AuthorizationComplianceBlockchainA2AMCPx402Agent-Native
Methods: apiKey, http-bearer (declared, not live), x402-payment, admin-key (undeclared) Schemes: 6 OAuth flows: API key in: header

Security Schemes

apiKey apiKey
· in: header ()
moltrust-did apiKey
· in: header ()
aae-envelope http
scheme: bearer
x402 apiKey
· in: header ()
admin-key apiKey
· in: header ()
partner-tier key apiKey
· in: header ()

Source

Authentication Profile

Raw ↑
generated: '2026-09-19'
method: searched
source: a2a/moltrust-ch-agent-card.json (securitySchemes) + https://moltrust.ch/developers.html + https://moltrust.ch/bindings/trust-registry/v1.html
  (section 4) + https://moltrust.ch/terms.html (section 3) + openapi/moltrust-ch-openapi.yml (X-API-Key / X-MolTrust-DID
  header parameters) + openapi/moltrust-ch-moltguard-openapi.yml (x402 scheme) + live probes 2026-09-19
docs: https://moltrust.ch/developers.html
upgraded_from: derived pass of derive-authentication.py (which found only the MoltGuard x402 scheme because the
  main FastAPI spec declares no securitySchemes at all - auth appears there as 49 X-API-Key and 6 X-MolTrust-DID
  header PARAMETERS)
summary:
  types:
  - apiKey
  - http-bearer (declared, not live)
  - x402-payment
  - admin-key (undeclared)
  api_key_in:
  - header
  oauth2_flows: []
  openid_connect: false
  mutual_tls: false
  note: No OAuth 2.0 anywhere. Two credential styles for the registry (a key, or the agent's own DID), one economic
    credential for MoltGuard (an x402 payment receipt), and an admin key that only appears in operation prose.
schemes:
- name: apiKey
  type: apiKey
  in: header
  parameter_name: X-API-Key
  description: Primary credential. Obtain free with POST /auth/signup {"email"} (one key per email, Terms 3) or
    POST /auth/signup-did (Ed25519 proof of possession - "Mint an API key by proving key possession instead of owning
    a mailbox") after a keyless POST /identity/register-pop. GitHub login (GET /auth/github) and Moltbook token
    (POST /auth/moltbook) are alternative signup routes. The key carries an owner_did and a credit balance; 49 operations
    in the main spec declare it as a required header parameter (a missing key therefore returns 422 "Field required",
    not 401).
  obtain:
  - POST https://api.moltrust.ch/auth/signup
  - POST https://api.moltrust.ch/auth/signup-did
  - GET https://api.moltrust.ch/auth/github
  env: MOLTRUST_API_KEY (SDK, MCP server, moltrust-enforce)
  rotation: '"An agent counts once per month regardless of key rotations (5 included)" - pricing page; compromised
    keys: contact info@moltrust.ch (Terms 3)'
  sources:
  - a2a/moltrust-ch-agent-card.json
  - openapi/moltrust-ch-openapi.yml
  - https://moltrust.ch/developers.html
  - https://moltrust.ch/terms.html
- name: moltrust-did
  type: apiKey
  in: header
  parameter_name: X-MolTrust-DID
  description: 'Agent DID for self-identification on trust-gated endpoints (agent card). Accepted as an alternative
    to X-API-Key on GET /extendedAgentCard (live 401 message: "provide X-API-Key OR X-MolTrust-DID header") and
    required alongside X-API-Key on the AAE enforcement operations (/vc/aae/challenge, /vc/aae/submit, /enforce/check,
    /enforce/ratify). Identifies the acting agent rather than the paying account.'
  sources:
  - a2a/moltrust-ch-agent-card.json
  - openapi/moltrust-ch-openapi.yml
  - https://moltrust.ch/bindings/trust-registry/v1.html
- name: aae-envelope
  type: http
  scheme: bearer
  bearer_format: AAE-JWS
  status: declared-not-live
  description: Agent Authorization Envelope as a JWS-signed bearer token (MANDATE / CONSTRAINTS / VALIDITY). The
    agent card says "Declared schema; HTTP-auth-layer implementation in progress" and the card's aae extension says
    "runtime enforcement is roadmap (Q3 2026)". Do not send it expecting authorization; AAEs are currently submitted
    as request bodies to POST /vc/aae/submit and evaluated by /enforce/check.
  sources:
  - a2a/moltrust-ch-agent-card.json
  - https://moltrust.ch/bindings/trust-registry/v1.html
- name: x402
  type: apiKey
  in: header
  parameter_name: X-PAYMENT
  description: x402 v2 payment receipt ("x402 <base64-encoded-receipt>") for the 11 paid MoltGuard endpoints. A
    request without it receives 402 with a PaymentRequired body naming price, network (base) and payTo; prices are
    published in advance at /.well-known/x402.json. Payment is the credential - no account needed.
  sources:
  - openapi/moltrust-ch-moltguard-openapi.yml
  - well-known/moltrust-ch-x402.json
- name: admin-key
  type: apiKey
  in: header
  parameter_name: X-Admin-Key
  status: undeclared
  description: Named only in operation descriptions ("Requires X-Admin-Key header") on POST /violation/record, POST
    /violation/{record_id}/reverse and POST /music/credential/{credential_id}/revoke; never declared as a parameter
    or scheme. Operator-only; recorded so a reader knows those writes are not customer-callable.
  sources:
  - openapi/moltrust-ch-openapi.yml
- name: partner-tier key
  type: apiKey
  in: header
  parameter_name: X-API-Key
  status: tier-gated
  description: POST /test-harness/endorse "Requires partner-tier API key" - same header, elevated tier.
  sources:
  - openapi/moltrust-ch-openapi.yml
mcp_server:
  endpoint: https://api.moltrust.ch/mcp
  discovery_auth: none (initialize + tools/list answered anonymously)
  tool_auth: MOLTRUST_API_KEY env for the local server; several tools take api_key / endorser_api_key / admin_key
    arguments
  oauth: false
a2a:
  card_security_schemes:
  - apiKey
  - moltrust-did
  - aae-envelope
  card_security_requirements: '[] - no scheme is bound to any skill in the card'
signup_probe:
  url: POST https://api.moltrust.ch/auth/signup
  body: '{}'
  status: 422
  response: '{"detail":[{"type":"missing","loc":["body","email"],"msg":"Field required","input":{}}]}'
  note: Confirms the email-only signup contract; no key was minted by this pipeline.

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/moltrust-ch-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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