Skip to end of metadata
Go to start of metadata

Primitive types

The following types may be used in these documents:

  • int: a 32-bit integer.
  • long: a 64-bit integer.
  • float: 32-bit IEEE single precision floating point number
  • double: 64-bit IEEE double precision floating point number
  • boolean: a value that is either true or false
  • string: A valid UTF-8 encoded string.
  • bytes: an array of arbitrary bytes (with length).


The version will be represented using Semantic Versioning, with the modification that we have no patch number. The version number shall be represented as a pair of ints representing the major and minor version numbers. Adding new request types or fields (that do not break existing

Correlation Id

The purpose of correlation id to match the request and its corresponding response. The request format will contain an int representing the CorrelationID. The client should send a correlation ID with each message, which will be present in the corresponding response. The messages are ordered in the current protocol, but we expect to support async/out-of-order messages at some point in the future, which will depend on the proper use of this number. 

Error Codes

The Error codes indicate an issue with server-side processing of a message. The error message will include both an int identifier and a human-readable string description. 

Serialization Types

In addition to each of the primitive types described above, other serialization mechanisms are supported. Currently this includes JSON, which gets deserialized to PDX Objects using the same mechanism as the REST API.

  • No labels