---
title: StreamingService
description: StreamingService serves server-streaming gRPC APIs for real-time data.
source_url:
  html: https://thru.org/docs/api-ref/grpc/services/streaming-service/
  md: https://thru.org/docs/api-ref/grpc/services/streaming-service.md
---

# StreamingService

StreamingService serves server-streaming gRPC APIs for real-time data.

**Package:** `thru.services.v1`

## RPCs

### `StreamBlocks` *(server-stream)*

- **Request:** [`StreamBlocksRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-blocks-request.md)
- **Response:** [`StreamBlocksResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-blocks-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamBlocks`) with request body:

```json
{
"startSlot": "80220"
}
```

### `StreamAccountUpdates` *(server-stream)*

- **Request:** [`StreamAccountUpdatesRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-account-updates-request.md)
- **Response:** [`StreamAccountUpdatesResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-account-updates-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamAccountUpdates`) with request body:

```json
{}
```

### `StreamTransactions` *(server-stream)*

- **Request:** [`StreamTransactionsRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-transactions-request.md)
- **Response:** [`StreamTransactionsResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-transactions-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamTransactions`) with request body:

```json
{}
```

### `StreamEvents` *(server-stream)*

- **Request:** [`StreamEventsRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-events-request.md)
- **Response:** [`StreamEventsResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-events-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamEvents`) with request body:

```json
{}
```

### `TrackTransaction` *(server-stream)*

- **Request:** [`TrackTransactionRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/track-transaction-request.md)
- **Response:** [`TrackTransactionResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/track-transaction-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/TrackTransaction`) with request body:

```json
{
"signature": { "value": "2Jqjbuct1yuDSIsJJlol3NG1MvvBtsiETcSXopHFOPC7QaD0DnqBbUceMnCxd8ItFrQFOK1iLXDFl0w2GYZlDw==" }
}
```

### `StreamHeight` *(server-stream)*

- **Request:** [`StreamHeightRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-height-request.md)
- **Response:** [`StreamHeightResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-height-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamHeight`) with request body:

```json
{}
```

### `StreamSlotMetrics` *(server-stream)*

Stream per-slot metrics including state counters and collected fees. Metrics are emitted after each block’s execution completes.

- **Request:** [`StreamSlotMetricsRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-slot-metrics-request.md)
- **Response:** [`StreamSlotMetricsResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-slot-metrics-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamSlotMetrics`) with request body:

```json
{}
```

### `StreamNodeRecords` *(server-stream)*

Stream node records from the gossip network. Returns an initial snapshot of all known records, followed by live updates.

- **Request:** [`StreamNodeRecordsRequest`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-node-records-request.md)
- **Response:** [`StreamNodeRecordsResponse`](https://thru.org/docs/api-ref/grpc/messages/thru/services/v1/stream-node-records-response.md)

**Try it live:** gRPC-Web `POST https://grpc-web.alphanet.thruput.org` (`thru.services.v1.StreamingService/StreamNodeRecords`) with request body:

```json
{}
```
