Skip to main content

Go SDK developer guide

Go SDK Banner

GO SPECIFIC RESOURCES

Build Temporal Applications with the Go SDK.

Temporal Go Technical Resources:

Get Connected with the Temporal Go Community:

Core Application

Use the essential components of a Temporal Application (Workflows, Activities, and Workers) to build and run a Temporal application.

Temporal Client

Connect to a Temporal Service and start a Workflow Execution.

Multithreading

Safely use multithreading with the Go SDK.

Testing

Set up the testing suite and test Workflows and Activities.

Failure detection feature guide

Explore how your application can detect failures using timeouts and automatically attempt to mitigate them with retries.

Workflow message passing

Send messages to and read the state of Workflow Executions.

Interrupt a Workflow feature guide

Interrupt a Workflow Execution with a Cancel or Terminate action.

Asynchronous Activity completion

Complete Activities asynchronously.

Versioning

Change Workflow Definitions without causing non-deterministic behavior in current long-running Workflows.

Observability

Configure and use the Temporal Observability APIs.

Debugging

Explore various ways to debug your application.

Schedules

Run Workflows on a schedule and delay the start of a Workflow.

Data encryption

Use compression, encryption, and other data handling by implementing custom converters and codecs.

Temporal Nexus

The Temporal Nexus feature guide shows how to use Temporal Nexus to connect durable executions within and across Namespaces using a Nexus Endpoint, a Nexus Service contract, and Nexus Operations.

Durable Timers

Use Timers to make a Workflow Execution pause or "sleep" for seconds, minutes, days, months, or years.

Child Workflows

Explore how to spawn a Child Workflow Execution and handle Child Workflow Events.

Continue-As-New

Continue the Workflow Execution with a new Workflow Execution using the same Workflow ID.

Worker Sessions

Use Worker Session APIs.

Side Effects

Use Side Effects in Workflows.

Manage Namespaces

Create and manage Namespaces.