Enhanced Streams topic

Raydium CPMM Swaps

Raydium constant product swap events.

Topic

prod.mat.solana.program.swaps.raydium_cpmm

Family

DEX swaps

Payload type

Swap

Endpoint

stream-1

Subscribe

Request JSON output first. The response payload holds UTF-8 JSON bytes. Keep the partition and offset with each stored event.

grpcurlbash
grpcurl \  -H "x-api-key: YOUR_API_KEY" \  -d '{"topic":"prod.mat.solana.program.swaps.raydium_cpmm","format":"JSON"}' \  stream-1.nln.clr3.org:443 \  nln.stream.v1.StreamService/Subscribe
consumer.pypython
import grpcimport jsonimport enhanced_streams_pb2 as pbimport enhanced_streams_pb2_grpc as rpc channel = grpc.secure_channel(    "stream-1.nln.clr3.org:443",    grpc.ssl_channel_credentials(),)client = rpc.StreamServiceStub(channel)request = pb.SubscribeRequest(    topic="prod.mat.solana.program.swaps.raydium_cpmm",    format=pb.JSON,) for message in client.Subscribe(    request,    metadata=[("x-api-key", "YOUR_API_KEY")],):    event = json.loads(message.payload)    print(message.partition, message.offset, event)

Response envelope

{  "topic": "prod.mat.solana.program.swaps.raydium_cpmm",  "partition": "0",  "offset": "184231",  "timestampMs": "1785206400000",  "payload": "UTF-8 JSON bytes"}

Treat every offset as partition-scoped. Do not compare offsets across two partitions. Store the raw payload before any business logic runs.