# Anchor Client

The **Anchor Client** is the developer-facing library for interacting with Anchor services. It abstracts the complexity of service discovery, authentication, request signing, and communication with anchors.

### **Purpose**

The Anchor Client provides:

* **Automatic service discovery** via the Anchor Resolver
* **Request authentication** using Keeta account signatures
* **Type-safe APIs** for each anchor service type
* **Error handling** with user-friendly error messages
* **Multi-provider support** to query multiple anchors simultaneously

### **Who Uses It**

Anchor Clients are used by:

* **Wallet developers** building user-facing applications
* **DApp developers** integrating fiat on/off ramps
* **Exchange developers** connecting to liquidity providers
* **Payment processors** routing transactions through optimal providers
* **Trading platforms** accessing FX services

The Anchor Client is analogous to the `keetanet-client` library – while `keetanet-client` lets you interact with Keeta, the Anchor Client lets you interact with anchor services that connect to traditional finance and other blockchain networks.

### **Key Features**

**Service-Specific Clients**: Each anchor service has its own specialized client:

* `KeetaAnchor.FX.Client` - Foreign exchange operations
* `KeetaAnchor.AssetMovement.Client` - Cross-chain and fiat transfers
* `KeetaAnchor.KYC.Client` - Identity verification services

**Standardized Server Interaction**: The client abstracts the complexity of working with anchor servers:

* Handles HTTP communication and request formatting
* Automatically signs requests with your Keeta account
* Validates and verifies signed responses from providers
* Converts between on-chain and off-chain data formats
* Provides consistent error handling across all anchor types
* Makes it easy to query and compare multiple providers

### **Example: Using the FX Client**

{% @github-files/github-code-block url="<https://github.com/KeetaNetwork/keetanet-examples/blob/main/src/anchor/fx-client.ts>" %}


---

# Agent Instructions: 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://docs.keeta.com/anchors/overview/anchor-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.
