Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Synse gRPC

PyPI Build FOSSA Status

The internal gRPC API for the Synse platform.

This API enables bi-directional communication between Synse Server and its registered data-providing plugins. This API is kept in its own repository since it is used by multiple components written in different languages. This repo contains:

  • The Synse gRPC spec (synse.proto)
  • The auto-generated gRPC code for Go (go/)
  • The auto-generated gRPC code for Python with a simple client wrapper (python/)



go get


pip install synse_grpc


Generating Language Sources

If changes need to be made to the gRPC API, it is important to ensure backwards compatibility with the existing API spec. See the gRPC documentation for details on this. Additionally, the files within the go/ directory and the and files in the python/ directory are auto-generated and should not be modified manually. Instead, the protobuf spec (synse.proto) should be modified and new source files should be generated. Makefile targets are provided to make this simple:

make all

Source files for a single supported language may be built with the language-specific target, e.g.

# auto-generate the Python source files
make python

# auto-generate the Go source files
make go


A new release is triggered by GitHub tag. The version of the release is defined in python/synse_grpc/ The version should follow the SemVer spec. Once a corresponding tag is pushed (e.g. via make github-tag), CI will package, release, and publish any artifacts.

Releasing and artifact publishing should not be done manually.


To see a list of available make targets and a brief description, use

make help

If there is a bug or other issue you would like to report, please open a GitHub issue and provide as much context around the bug/issue as possible.


FOSSA Status