# Pump Fun

> Real-time gRPC stream for Pump Fun trades and token creation events on Solana.

Canonical: https://nolimitnodes.com/api-reference/data-streams/pump-fun

The current service exposes four Pumpfun topics.

| Event | Topic |
|---|---|
| Token creation | `prod.rpc.solana.pumpfun.create` |
| Trade | `prod.rpc.solana.pumpfun.trade` |
| Graduation | `prod.rpc.solana.pumpfun.graduate` |
| Transaction metadata | `prod.rpc.solana.pumpfun.transaction` |

## Subscribe to trades

```bash
grpcurl \
  -H "x-api-key: YOUR_API_KEY" \
  -import-path . \
  -proto enhanced-streams.proto \
  -d '{"topic":"prod.rpc.solana.pumpfun.trade","format":"JSON"}' \
  stream-1.nln.clr3.org:443 \
  nln.stream.v1.StreamService/Subscribe
```

## Python

```python

channel = grpc.secure_channel(
    "stream-1.nln.clr3.org:443",
    grpc.ssl_channel_credentials(),
)
client = rpc.StreamServiceStub(channel)

request = pb.SubscribeRequest(
    topic="prod.rpc.solana.pumpfun.trade",
    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)
```

Do not use the old `pumpFunTrades` topic. The service returns `NOT_FOUND`.

  ### [Pumpfun topics](/docs/api-reference/enhanced-streams/topics)

Review all current Enhanced Stream topic names.

  ### [Decoded Pumpfun topics](https://nolimitnodes.com/products/program-streams/pump_fun)

Browse Enhanced Stream instructions and events.
