Early Adopters: First 20 receive 20% off with 1 year technical support.

RogueDB logo

RogueDB

DEVELOPERSENTERPRISEDOCSPRICING

Global Protocol

Status Codes

RogueDB adheres strictly to the industry-standard gRPC Status Code specification. Additional context are provided in the error message.

Every rejection follows a binary structure: a Code for programmatic logic and a Details string for human-led correction.

1. The Response Contract

Regardless of the protocol used (gRPC or REST), the database returns a standardized response consisting of two parts:

Status Code

The Code represents the functional category of the contract violation. RogueDB maps its internal logic directly to common gRPC status codes.

In gRPC: Returned as the standard integer status code.

In REST: Mapped to the closest equivalent HTTP status code.

Error Details

The Details string is the "living documentation" of the database. It is generated in real-time to provide the exact context of a violation. This string is your definitive source for debugging and contains:

The Violation: Example: API key does not exist.

Insights: Create a User with the API key.

Batch Index: Zero-based request index where processing terminated.

2. Deterministic Termination

RogueDB operates on a Fail-Fast principle. If the database encounters a violation during a batch or stream:

Processing terminates immediately at the failing request.

The Details string will explicitly identify the failing index.

All messages prior to that request are processed; all requests at or after that index are ignored.

This eliminates the need for complex application-side reconciliation—you know exactly where the data stream stopped and why.

3. Handling Errors

Because RogueDB utilizes standard codes, you should implement your error-handling logic based on the official gRPC status definitions.

Programmatic Routing

Use the status code to determine if the failure is an identity issue, a permission issue, or a malformed request.

Human-Led Correction

Always log the Details string. It contains the specific schema names and field indices required to fix implementation errors.

On This Page