---
title: "SDK: releases"
description: "The releases methods of the Overlane TypeScript SDK, with their signatures. Generated from the SDK types."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.overlane.app/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK: releases

{/* Generated by apps/docs/scripts/generate.mjs (SDK pages from the TypeScript types in packages/sdk). Do not edit; run `pnpm --filter @overlane/docs gen`. */}

The `releases` area has 7 methods on the client. Each takes one object of path, query and body arguments and an optional `CallOptions`, and returns a promise of the response body. A refused call rejects with `OverlaneApiError` (see the [SDK index](/sdk/)).

## releasesGet

Read a release

- Request: `GET` on `/v1/tenants/{tenantId}/releases/{releaseId}`

```ts
releasesGet(args: { tenantId: string; releaseId: string }, options?: CallOptions): Promise<Record<string, unknown>>
```

## releasesList

List releases

- Request: `GET` on `/v1/tenants/{tenantId}/releases`

```ts
releasesList(args: { tenantId: string }, options?: CallOptions): Promise<Record<string, unknown>>
```

## releasesPromote

Promote a release to a channel (release class)

- Request: `POST` on `/v1/tenants/{tenantId}/releases/{releaseId}/promote`
- Needs an approval for agents: class `release_promotion`

```ts
releasesPromote(args: { tenantId: string; releaseId: string; body?: Record<string, unknown> }, options?: CallOptions): Promise<Record<string, unknown>>
```

## releasesPromotionGet

Read how internal releases reach stable (automatic after a soak, or by hand)

- Request: `GET` on `/v1/tenants/{tenantId}/release-promotion`

```ts
releasesPromotionGet(args: { tenantId: string }, options?: CallOptions): Promise<Record<string, unknown>>
```

## releasesPromotionPut

Change how internal releases reach stable (release class)

- Request: `PUT` on `/v1/tenants/{tenantId}/release-promotion`
- Needs an approval for agents: class `release_promotion`

```ts
releasesPromotionPut(args: { tenantId: string; body: PutReleasePromotionRequest }, options?: CallOptions): Promise<Record<string, unknown>>
```

## releasesPublish

Publish a signed release (release class)

- Request: `POST` on `/v1/tenants/{tenantId}/releases`
- Needs an approval for agents: class `release_promotion`

```ts
releasesPublish(args: { tenantId: string; body: PublishReleaseRequest }, options?: CallOptions): Promise<Record<string, unknown>>
```

## releasesWithdraw

Withdraw a release (release class)

- Request: `POST` on `/v1/tenants/{tenantId}/releases/{releaseId}/withdraw`
- Needs an approval for agents: class `release_promotion`

```ts
releasesWithdraw(args: { tenantId: string; releaseId: string; body?: Record<string, unknown> }, options?: CallOptions): Promise<Record<string, unknown>>
```

Source: https://docs.overlane.app/sdk/releases/index.mdx
