Skip to main content
Strait provides official SDKs for TypeScript, Python, Go, Ruby, and Rust — all with full feature parity. This guide covers how to use the SDKs to interact with the Strait API and integrate SDK endpoints into your job code.
For detailed per-language documentation, see the SDK Reference.

Installing an SDK

Ruby and Rust SDKs are available in their dedicated repositories:

Configuration

The recommended approach is a strait.json file at your project root plus the STRAIT_API_KEY environment variable:
Then create a client from the config file:
See SDK Configuration for full details on strait.json, environment variable overrides, and alternative configuration methods.

SDK Run Endpoints

Strait provides specialized endpoints under /sdk/v1/runs/{runID}/ for job executors to communicate progress, logs, and state back to the system.

Authentication

SDK run endpoints require a JWT Run Token:
  • Header: Authorization: Bearer <run_token>
  • Token Source: Provided in the response when a job is triggered

Available Endpoints

Using SDK Run Endpoints

Wait for External Events

Pause a run and wait for an external event (approvals, webhooks, third-party callbacks):
Use the heartbeat endpoint regularly (every 30 seconds) in long-running jobs to prevent timeout.

What’s Next?

SDK Reference

Full SDK documentation — feature parity table, architecture, and per-language guides.

Configuration

strait.json schema reference, environment variable overrides, and migration guide.