Herald

HTTP API

Herald exposes HTTP endpoints for managing streams, members, events, and presence. Authenticate with your API key and secret using HTTP Basic auth.

Base URL

https://herald.skeptik.io/v1

Streams

MethodEndpointDescription
POST/v1/streamsCreate a stream
GET/v1/streamsList streams
GET/v1/streams/:idGet stream details
PATCH/v1/streams/:idUpdate stream metadata
DELETE/v1/streams/:idDelete a stream

Members

MethodEndpointDescription
POST/v1/streams/:id/membersAdd a member
GET/v1/streams/:id/membersList members
PATCH/v1/streams/:id/members/:user_idUpdate member role
DELETE/v1/streams/:id/members/:user_idRemove a member

Events

MethodEndpointDescription
POST/v1/streams/:id/eventsInject an event (server-side publish)
GET/v1/streams/:id/eventsQuery events (before, after, limit)
PATCH/v1/events/:idEdit event body
DELETE/v1/events/:idDelete an event

Reactions

MethodEndpointDescription
POST/v1/events/:id/reactionsAdd a reaction (32-byte max, 10 per event)
DELETE/v1/events/:id/reactions/:keyRemove a reaction

Presence

MethodEndpointDescription
GET/v1/presenceBatch query (?user_ids=a,b,c)
GET/v1/presence/:user_idSingle user presence
GET/v1/streams/:id/presenceAll member presence in a stream
GET/v1/streams/:id/cursorsAll cursors in a stream

Other endpoints

MethodEndpointDescription
POST/v1/streams/:id/triggersServer-side ephemeral event
POST/v1/blocksBlock a user (directional)
DELETE/v1/blocks/:user_idUnblock a user
GET/v1/statsAccount statistics

Self-service endpoints

These endpoints let you manage your own credentials and inspect usage without admin access.

MethodEndpointDescription
GET/self/connectionsList active connections
GET/self/eventsEvent log
GET/self/errorsError log
POST/self/rotate-secretRotate API secret
POST/self/tokensGenerate a connection token

Pagination

List endpoints support limit and offset query parameters. Default limit is 50, maximum is 100. Event queries also support before and after for sequence-based pagination.