> For the complete documentation index, see [llms.txt](https://docs.triton.one/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.triton.one/project-yellowstone/riptide.md).

# Riptide

Riptide is a dedicated endpoint for the existing [Dragon's Mouth gRPC service](/project-yellowstone/dragons-mouth-grpc-subscriptions.md). It provides the same streams, unary methods, protocol, and SDK support through a lower-latency network path.

If you use Dragon's Mouth through a shared subscription, point your client at `https://riptide.rpcpool.com:443`. Your shared-subscription token, SDK, Protobuf version, subscription requests, and filters continue to work.

| Setting        | Value                                                           |
| -------------- | --------------------------------------------------------------- |
| Endpoint       | `https://riptide.rpcpool.com:443`                               |
| Availability   | Shared subscriptions — see [Availability](#availability)        |
| Authentication | Your shared-subscription token in the `x-token` metadata header |
| Protocol       | Dragon's Mouth / Yellowstone gRPC                               |
| Network        | Mainnet only                                                    |
| Routing        | Automatic to the nearest location; no region-specific endpoints |

Riptide serves Dragon's Mouth gRPC only. Continue to use your standard RPC endpoint for JSON-RPC and WebSocket requests. For client setup, subscription filters, and request examples, see the [Dragon's Mouth documentation](/project-yellowstone/dragons-mouth-grpc-subscriptions.md).

## Availability

Riptide is available on shared Dragon's Mouth subscriptions, and usage is billed as part of the shared service. Dedicated-node tokens do not work on `riptide.rpcpool.com`.

If your account only has dedicated nodes, you have two options:

* Add a shared gRPC subscription to your account for immediate access. Shared-service billing applies.
* Contact our support team — over your dedicated support channel, or at <support@triton.one> — to arrange a dedicated Riptide setup for your own nodes.

{% hint style="info" %}
A `403 Access forbidden` response with empty `x-ratelimit-*` headers means the token you are sending is not enabled for this endpoint — it is not an invalid token. Use your shared-subscription token, or contact our support team to enable access.
{% endhint %}

## Connection resets and reconnection

Riptide's failover operates at the connection level: it directs new connections to healthy backends but cannot move an existing gRPC stream between them. Because the network path can change during normal operation, a dropped connection may arrive as a TCP reset (`RST`) rather than a graceful close. Your client should:

1. Detect stream errors, end-of-stream events, and TCP resets.
2. Reconnect automatically, using exponential backoff with jitter for repeated failures.
3. Create a new stream and send the complete subscription request again after reconnecting.
4. Track the last fully processed slot and use [`from_slot`](/project-yellowstone/dragons-mouth-grpc-subscriptions.md#replaying-from-a-slot) to recover buffered updates after a short interruption. Deduplicate updates from the replayed slot.

The Dragon's Mouth Rust client supports [automatic reconnection](/project-yellowstone/dragons-mouth-grpc-subscriptions.md#auto-reconnect-rust-client), replay, and deduplication. Auto-reconnect is disabled by default and must be enabled in the client configuration.

Riptide does not replace or deprecate your existing Dragon's Mouth endpoint. It provides the same features over a faster path, and the reconnection handling above applies to both endpoints, so we recommend moving your gRPC traffic to Riptide.


---

# 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, and the optional `goal` query parameter:

```
GET https://docs.triton.one/project-yellowstone/riptide.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
