Skip to content

Error Handling


JSON-RPC errors

All JSON-RPC errors are returned with HTTP 200 per the JSON-RPC 2.0 specification.

Scenario Code Message pattern
Invalid JSON body -32700 Parse error
Method not found -32601 Method not found
Invalid params -32602 Invalid params
Internal / account error -32603 Varies
License required -32001 Privitty license required: status is '…'

Example — missing license:

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32001,
    "message": "Privitty license required: status is 'no_license'. Run `privitty-edge license activate <url>` to install or renew."
  },
  "id": 1
}

License status values: active, grace_period, expired, no_license.


HTTP-level errors

Endpoint Status Condition
/auth 403 Device fingerprint mismatch
/stream/:id 401 Missing, expired, or invalid Bearer token
/stream/:id 404 Message or file not found
/stream/:id 500 Decryption failed
/health non-200 Daemon not ready or crashed

Troubleshooting guide

See Troubleshooting for common deployment issues and fixes.