Skip to main content

Error Codes

Reference for all error codes returned by the relay server and local API.

Relay Errors

Errors returned by the relay server in error messages over WebSocket.

CodeDescriptionWhen It Occurs
peer_not_foundTarget peer is not connected to the relaySending relayOpen, relayData, offer, or answer to a peer that has disconnected
invalid_jsonMessage could not be parsed as JSONSending malformed JSON over the WebSocket
invalid_messageEmpty or malformed message (no recognized message type key)Sending an empty object {} or a message with an unrecognized structure
invalid_registerMissing required fields in register messageOmitting nodeID, publicKey, capabilities, or signature from registration
rate_limitedToo many requests; includes retryAfterSeconds fieldExceeding the discover rate limit (1 per 10 seconds)
unsupported_messageUnknown message typeSending a message with an unrecognized type key

Relay Error Format

{
"error": {
"code": "peer_not_found",
"message": "Peer abc... is not connected"
}
}

Rate-Limited Error Format

Rate-limited errors include a retryAfterSeconds field indicating when the request can be retried.

{
"error": {
"code": "rate_limited",
"message": "Discover rate limited, retry after 8s",
"retryAfterSeconds": 8
}
}

API Errors

Errors returned by the local HTTP API (localhost:11435).

CodeDescriptionHTTP StatusWhen It Occurs
model_not_loadedRequested model is not currently loaded503Sending a chat completion request for a model that is not loaded
invalid_requestRequest body is malformed or missing required fields400Missing messages array, invalid JSON, or unsupported parameters
internal_errorAn internal error occurred during processing500Inference engine crash, memory allocation failure, or unexpected exception
unauthorizedInvalid or missing API key401Request does not include a valid Authorization: Bearer header when API keys are configured

API Error Format

API errors follow the OpenAI error response format:

{
"error": {
"message": "Model mlx-community/Qwen3-8B-4bit is not loaded",
"type": "model_not_loaded",
"code": "model_not_loaded"
}
}

PTN Errors

Errors that occur during Private TealeNet operations.

ErrorDescription
invalidInviteCodeThe invite code could not be decoded (malformed base64url or JSON)
inviteExpiredThe invite token's expiresAt has passed
notPTNAdminOperation requires admin role but the current node is not an admin
caKeyNotFoundCA private key not found on this device (only the PTN creator or key recipient has it)
ptnNotFoundThe specified PTN is not in the node's membership list
certificateVerificationFailedThe certificate's signature does not verify against the PTN's CA public key
joinRequestTimeoutThe inviter did not respond to the join request (likely offline)
joinRejectedThe inviter explicitly rejected the join request

Noise Protocol Errors

Errors during encrypted session establishment or communication.

ErrorDescription
handshakeFailedNoise handshake could not be completed (invalid keys, corrupted message, etc.)
decryptionFailedChaCha20-Poly1305 authentication tag verification failed
invalidMessageEncrypted message is too short or structurally invalid
invalidPublicKeyPublic key could not be parsed (not 32 bytes or invalid point)
replayDetectedMessage nonce was already received (replay attack or duplicate)
sessionExpiredNoise session has exceeded its maximum lifetime (default 24 hours)