Prism IO™ Developer Portal

API documentation

1. Get an authenticated session

Prism IO™ users authenticate via WordPress at prismio.ai/my-account/. Once authenticated, the Prism IO Auth Bridge mu-plugin mints an HMAC-signed handoff token and redirects to app.prismio.ai/auth/handoff?token=...&user_id=.... The app exchanges the handoff token for a long-lived access JWT via POST /api/auth/handoff.

For developer access (no browser flow), use a Prism IO API key minted at app.prismio.ai/dashboard/settings/api-keys. Pro Core tier and above support API key access.

2. Make your first authenticated call

Once you have a JWT, every authenticated endpoint expects an Authorization: Bearer <JWT> header.

curl https://api.prismio.ai/api/v1/capabilities \
  -H "Authorization: Bearer $PRISMIO_JWT"

Response (Pro Core tier example):

{
  "tier": "Pro Core",
  "tier_slug": "pro_core",
  "tier_limits": {
    "governance_calls_per_day": 100000,
    "bim_max_models": 5,
    "personas_max": 999,
    "team_seats_max": 25,
    "api_keys_max": 5
  },
  "features": {
    "mcp_server_access": true,
    "multi_brand_bim": false,
    "closed_loop_reinforcement": true,
    "custom_mcp_deployment": false,
    "drift_detection": true,
    "compliance_drill_down": true,
    "audit_log_export": true,
    "rest_api_access": true,
    "ai_safety_filters": false,
    "sso_saml": false
  }
}

3. Handle errors

Every error response (4xx / 5xx) returns the canonical envelope:

{
  "error": {
    "code":    "tier_limit_exceeded",
    "message": "Your tier allows up to 5 BIMs.",
    "param":   "brand_model_id",
    "type":    "invalid_request_error"
  }
}

See Error codes for the full taxonomy.