blazeauth
Protocol

SDK generation rules

Deterministic rules for generating Blazeauth clients from the protocol.

This page is optimized for client implementers and SDK generators.

Transport

  • Connect with WebSocket to wss://eu1.blazeauth.net
  • Each JSON message is an envelope: { "type": number, "payload": object }
  • type selects the usecase. payload format depends on type.

Correlation

  • Every request payload contains id (PacketID).
  • Responses for that usecase return the same payload.id.

Authorization state

  • Call initialize within 15 seconds after connecting.
  • After a successful authorization usecase, the connection becomes authorized until you call logout or the server closes the connection.

Status codes

  • Most responses include payload.status (APIStatus).
  • APIStatusOk is 1.
  • Some responses do not include status (example: ping).

64-bit integers

  • payload.id is uint64. JSON parsers that cannot represent uint64 safely should treat it as a decimal string.
  • time_left is an absolute Unix timestamp in seconds.

Levels

  • levels is always a string array.
SDK generator primitives
Minimal building blocks for strongly typed clients.

File transfer (two WebSocket messages)

When you request a file chunk the server uses two messages:

  1. JSON header response for transfer_file with payload.binary_data = true and payload.chunk_size > 0
  2. a binary WebSocket message with exactly chunk_size bytes

If chunk_size = 0, the binary message is not sent.

Forward compatibility

  • Ignore unknown JSON fields.
  • Treat unknown type or status as unsupported and fail safely.

On this page