> For the complete documentation index, see [llms.txt](https://shinkalabs.gitbook.io/hub/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://shinkalabs.gitbook.io/hub/andromeda/sdks-and-tooling/ts-client.md).

# Typed TypeScript client

When you deploy a [policy](/hub/andromeda/guides/deploy-policy.md), Andromeda can hand you a typed TypeScript client tailored to that specific policy: the right calls, the right types, for the configuration you deployed.

{% hint style="info" %}
Exact request and response bodies are in the [OpenAPI spec](https://api.andromedainfra.pro/openapi.json).
{% endhint %}

## Get it

After a policy is deployed, call the policy's SDK metadata endpoint with its address. Andromeda returns:

* a **tarball URL** for the generated client package, and
* an **install command** you can run as-is.

The artifact is published by a build step, so the URL points at a real package once that step has run for your policy.

## Use it

Install with the returned command, then import the client and call its methods. Because it is generated from the policy's actual on-chain shape, the calls and types match what that policy expects; you do not hand-roll request bodies.

## When to use it

* You deployed a policy and want a typed surface for it in a TypeScript codebase.
* You want compile-time checks that you are calling the policy correctly.

## When the OpenAPI spec is enough

For the rest of the API (signing, recovery, the Encrypt surface, webhooks, audit), the [OpenAPI 3.1 spec](https://api.andromedainfra.pro/openapi.json) plus a generator (see [OpenAPI codegen](/hub/andromeda/sdks-and-tooling/codegen.md)) gives you a typed client in any language. The per-policy TypeScript client is the specialised tool for the policy surface specifically.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://shinkalabs.gitbook.io/hub/andromeda/sdks-and-tooling/ts-client.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
