---
title: "Client"
description: "This page lists the Go SDK names for the Client."
canonical_url: "https://docs.superdurable.io/reference/go/client/"
source: "docs/reference/go/client.mdx"
locale: "en"
---

# Client

This page lists the Go SDK names for the [Client](https://docs.superdurable.io/concepts/client.md).
The doc comment of each API gives its parameters, defaults, and errors. Read
them in the [Go SDK API reference](https://docs.superdurable.io/reference/go.md#api-reference).

<a id="api-names"></a>

## API names

| Task                                  | Go API                                                           | Dex behavior                                                                                                               |
| ------------------------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| Create a Client                       | **NewClient**, with **ClientOptions**. It returns a **Client**.  | [Client requests](https://docs.superdurable.io/reference/server/runtime-client.md)                                         |
| Start a Flow                          | **StartFlow**, with **StartFlowOptions**                         | [Start a Flow](https://docs.superdurable.io/reference/server/runtime-client.md#start-a-flow)                               |
| Invoke an RPC                         | **InvokeRPC**                                                    | [Invoke an RPC](https://docs.superdurable.io/reference/server/runtime-client.md#invoke-an-rpc)                             |
| Read Attributes                       | **GetAttributes**                                                | [Read Attributes](https://docs.superdurable.io/reference/server/runtime-client.md#read-attributes)                         |
| Wait for a Flow to close              | **WaitForFlow**, with **WaitForFlowOptions**                     | [Wait for a Flow](https://docs.superdurable.io/reference/server/runtime-client.md#wait-for-a-flow)                         |
| Wait for a Step execution to complete | **WaitForStepCompletion**, with **WaitForStepCompletionOptions** | [Wait for a Step](https://docs.superdurable.io/reference/server/runtime-client.md#wait-for-a-step)                         |
| Wait until an Attribute matches       | **WaitForAttributeMatch**, with **WaitForAttributeOptions**      | [Wait for an Attribute match](https://docs.superdurable.io/reference/server/runtime-client.md#wait-for-an-attribute-match) |
| Describe a Flow                       | **DescribeFlow**                                                 | [Describe a Flow](https://docs.superdurable.io/reference/server/runtime-client.md#describe-a-flow)                         |
| Search Flows                          | **SearchFlows**                                                  | [Search Flows](https://docs.superdurable.io/reference/server/runtime-client.md#search-flows)                               |
| Stop a Flow                           | **StopFlow**, with **StopOptions**                               | [Stop a Flow](https://docs.superdurable.io/reference/server/runtime-client.md#stop-a-flow)                                 |
| Skip a Timer                          | **SkipTimer**                                                    | [Skip a Timer](https://docs.superdurable.io/reference/server/runtime-client.md#skip-a-timer)                               |
| Update FlowConfig                     | **UpdateFlowConfig**                                             | [Update FlowConfig](https://docs.superdurable.io/reference/go/flow.md#update-flow-config-with-a-client)                    |
| Write and read a Stream               | **WriteStream**, **ReadStream**, and **ListStreamMessages**      | [Stream](https://docs.superdurable.io/reference/go/stream.md)                                                              |
| Time travel a Flow                    | **TimeTravel**, with **TimeTravelOptions**                       | [Time travel](https://docs.superdurable.io/reference/server/runtime-client.md#time-travel)                                 |
| Handle a failed request               | **ServiceError**, with **ErrorSubStatus**                        | [Client requests](https://docs.superdurable.io/reference/server/runtime-client.md)                                         |

Every **Client** method that calls Dex Server takes a **context.Context** as
its first argument. Canceling a wait ends the call. It does not stop the Flow.

<a id="example"></a>

## Example

Example: [examples/go/primitives/client-apis/controller.go](https://github.com/superdurable/dex/tree/main/examples/go/primitives/client-apis/controller.go)
