Documentation Index
Fetch the complete documentation index at: https://developer.bron.org/llms.txt
Use this file to discover all available pages before exploring further.
Most users should not implement signing manually. Use the CLI, TypeScript SDK, Go SDK, or Python SDK — all of them handle JWT signing, key rotation, retries, and the error envelope for you.Read on only if you’re writing a custom client in a language without a Bron SDK, or if you need direct control over the JWT lifecycle.
What is JWT?
What is JWT?
JSON Web Tokens (JWT) is an open standard for securely transmitting information between parties as a JSON object.A JWT consists of three parts separated by dots:
Example of the JWT:
| Part | Contents | Encoding |
|---|---|---|
Header | Metadata about the key id, signing algorithm and etc. | base64-encoded JSON |
Payload | Claims (data) you want to transmit | base64-encoded JSON |
Signature | Signature of base64url(header) + "." + base64url(payload) using private key | binary → base64url |
Header | eyJraWQiOiJCdWp0RjQwZlUyNXBGdlNabEdrQyIsImFsZyI6IkVTMjU2In0 |
Payload | eyJpYXQiOjE3NDkyMTI4NDQsIm1lc3NhZ2UiOiJhcnRlbS13YXMtaGVyZSJ9 |
Signature | NtTsKix0Fj6gXA9sSInfW9PRqO82RlLHyvY_ZKRkpofBeUHU8gsDnHP7_OjUeoB4nYHhsps1RLWFjzkyaJCkwQ |
Bron JWT Structure
- Header
- Payload
| Field | Description |
|---|---|
alg | Signing algorithm |
kid | Your API key identity ID from the Bron App |
Step-by-Step Implementation
Prepare Your Credentials
- Generate or upload your API Key in the Bron App and obtain your API Key ID
- Save your private key securely
- Use your API Key ID (
kid) in the JWT header.
Create the Message String
Concatenate these values separated by newline (Components:
Example:
\n) characters:iat | Current timestamp in seconds (same value used in JWT payload) |
HTTP_METHOD | HTTP method in uppercase (GET, POST, PUT, DELETE) |
REQUEST_PATH | Full request path including query parameters (e.g. /api/v1/users?limit=10) |
REQUEST_BODY | JSON string exactly as sent (empty string if none) |
Generate SHA256 Hash
Compute SHA256 over the message string. In Node.js:Store that hex string in the JWT payload under
"message".Examples
- GET
- POST
Request:JWT Header:
JWT PayloadSigned JWT:Authorization Header:
Time | 1749219350 |
Message | 1749219350\nGET\n/workspaces/bron\n |
SHA256 Hash | 998371af53740a6cb4f13a7111f8e1b9f12063f8451d2a5b270be8f073b03505 |
