> For the complete documentation index, see [llms.txt](https://docs.zkbob.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zkbob.com/implementation/relayer-node/relayer-operations.md).

# Relayer Operations

The relayer is a mediator between clients and the zkBob contracts subsystem. Following are typical use cases when interacting with the relayer.&#x20;

### Fetching state

The user must keep and synchronize the current pool state to build proper transaction proofs. The pool state is held in the client as an ordered set of encrypted transactions ([memo blocks](/implementation/transaction-overview/untitled-1.md)) and the user should decrypt each of these to obtain account and note information.  To receive this info, the client uses the `eth_getLogs` RPC endpoint method, and during periods of heavy volume RPC endpoints can become overloaded.&#x20;

The relayer keeps the actual pool transaction set, synchronizes it continuously, and returns a desired set of transactions to the users. It significantly decreases overhead for mainnet nodes.

### Sending transactions

When sending a transaction, a user must create the tx body (memo block), calculate the corresponding tx proof, and send it to the relayer. In this case there is no need to worry about the Merkle tree root, only the actual state (balance and notes) is needed as all tree-related work is performed by the relayer.


---

# 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://docs.zkbob.com/implementation/relayer-node/relayer-operations.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.
