Firehose
Some clients may require a real-time stream of all IP address activity in the Synthient database. The firehose can be accessed via a WebSocket connection or a Google Pub/Sub channel, providing a continuous stream of IP address data as it is added or updated.
Connection Methods
The firehose provides two methods for receiving real-time events: WebSocket and Google Pub/Sub.
WebSocket
The WebSocket endpoint streams real-time updates of IP address activity. Each message is a JSON object containing information about an IP address.
Event Payload
- Name
ip- Type
- string
- Description
The IP address that was observed.
- Name
provider- Type
- string
- Description
The name of the provider associated with the IP.
- Name
timestamp- Type
- string
- Description
The UNIX timestamp when the IP was seen as active.
Request
wscat -c wss://v3api.synthient.com/v3/stream \
-H "Authorization: $API_KEY"
Events
{"ip":"38.238.45.9","provider":"DATAIMPULSE","timestamp":"1762605697"}
{"ip":"113.173.255.217","provider":"DATAIMPULSE","timestamp":"1762605697"}
{"ip":"103.10.28.141","provider":"IPIDEA","timestamp":"1762605697"}
...
Redis Pub/Sub
For high-throughput applications, you can consume events from our Redis Pub/Sub channel. The event payload is identical to the WebSocket message format.
- Channel Name:
proxy_feed
Please contact support to get access to the Pub/Sub feed.
Event Data Models
Here are some examples of how you can model the event data in different programming languages.
Event Model
from typing import TypedDict
class ProxyEvent(TypedDict):
ip: str
provider: str
timestamp: str