Work with Symbl.ai APIs using applications written in Go.

The Symbl.ai Go SDK provides a convenient method to work with our APIs, from applications written in Go. A prescribed or opinionated set of interfaces, classes, and functions help you quickly bootstrap to using the Symbl.ai platform and unlock conversation intelligence.

The Symbl.ai Go SDK source code is available at [https://github.com/dvonthenen/symbl-go-sdk/](https://github.com/symblai/symbl-go-sdk).

The Go SDK currently supports the following Symbl.ai APIs:

  • Streaming API:
    • WebSocket enabled.
    • Easy to implement real-time language understanding.
    • For local voice capture, provides an easy-to-use library to enable microphone audio as an input source.
  • Async API:
    • Transcription/Messages
    • Dynamic Topics
    • Questions
    • Follow-Ups
    • Entities
    • Action Items
    • Summary
    • Analytics
    • Trackers
    • Call Score
    • Insights UI
  • Management API:
    • Entities – Get, Create, Delete
    • Bookmarks – Get, Create, Delete
    • Trackers – Get, Create, Delete


The minimum required version of Go is 1.18. Older versions may work, but have not been tested. For more information, see All releases - The Go Programming Language.


To install Go, visit the installation guide for Linux, Mac, and Windows.

Make sure that Go is installed on your system using the following command in Mac / Linux console or Windows command prompt:

$ go version
go version go1.18.4 darwin/arm64


The SDK needs to be initialized with your account's credentials APP_ID and APP_SECRET which are available on your Symbl.ai Platform home page . If you don't have a Symbl.ai account, you can sign up for a free at Symbl.ai Platform Sign Up.

You must add the APP_ID and APP_SECRET to your list of environment variables. We use environment variables because they are easy to configure, support PaaS-style deployments, and work well in containerized environments like Docker and Kubernetes.


Example code

For a list of simple main-style examples to consume this SDK, see https://github.com/dvonthenen/symbl-go-sdk/blob/main/examples.

You can find a list of very simple main-style examples to consume this SDK in the examples folder. To run these examples, you need to change directory into an example you wish to run and then execute the go file in that directory. For example:

$ cd examples/async-file
go run async-file.go

For the Streaming API (Real-Time) Example

The Streaming API (Real-Time) example makes use of a microphone package contained within the repository. The package uses the PortAudio library, which is a cross-platform open source audio library. If you are on Linux, you can install this library using any package manager is available (yum, apt, etc.) on your operating system. If you are on macOS, you can install this library using brew.


If you have any questions, send an email to [email protected] or message us on Symbldotai Community Slack.