Event streams

API domain and namespace differences for Event streams

The Event streams APIs are divided into two categories. Each category uses a different domain and namespace.

Public API

The Event streams public API provides endpoints to publish and consume messages from event topics. This API is separate from the Event streams Developer API, which lets you manage event topics.

The following endpoints use the https://event-streams.workato.com domain:

  • Consume messages POST /api/v1/topics/:topic_id/consume
  • Publish a message POST /api/v1/topics/:topic_id/publish
  • Publish a batch of messages POST /api/v1/batch/topics/:topic_id/publish

Refer to the Event streams public API documentation for more information.

LEGACY ENDPOINTS

The standard Developer API base URL (under the /pubsub/topics/ namespace) still function but are rate-limited to 1,000 requests per minute.

Each message in a topic includes an ID you can use as an offset. You must store either the Message ID or Last message timestamp to use these endpoints.

Refer to the OpenAPI specification for more information.

Base URL

The base URL for the Event streams public API depends on the data center where your Workato account is hosted. These URLs apply only to endpoints for publishing and consuming messages:

  • US Data Center: https://event-streams.workato.com/
  • EU Data Center: https://event-streams.eu.workato.com/
  • JP Data Center: https://event-streams.jp.workato.com/
  • SG Data Center: https://event-streams.sg.workato.com/
  • AU Data Center: https://event-streams.au.workato.com/

Developer API

The following endpoints use the standard Developer API base URL:

  • List topics GET /api/event_streams/topics
  • Create a topic POST /api/event_streams/topics
  • Get a topic by ID GET /api/event_streams/topics/:topic_id
  • Update a topic PUT /api/event_streams/topics/:topic_id
  • Purge a topic PUT /api/event_streams/topics/:topic_id/purge
  • Delete a topic DELETE /api/event_streams/topics/:topic_id

Quick reference

You can use the follwoing endpoints to manage event topics:

TypeResourceDescription
GET/api/event_streams/topicsRetrieve a list of topics.
POST/api/event_streams/topicsCreate a topic.
GET/api/event_streams/topics/:topic_idGet topic by ID.
PUT/api/event_streams/topics/:topic_idUpdate a topic.
PUT/api/event_streams/topics/:topic_id/purgePurge a topic.
DELETE/api/event_streams/topics/:topic_idDelete a topic.
BEST PRACTICE

We recommend that you define parameters in the request body instead of the URL when using the create topic and update topic endpoints.

Event streams public API quick reference

TypeResourceDescription
POST/api/v1/topics/:topic_id/consumeRetrieve messages from the topic.
POST/api/v1/topics/:topic_id/publishPublish a message to a topic. The message must comply with the topic schema.
POST/api/v1/batch/topics/:topic_id/publishPublish a batch of messages to a topic. The messages must comply with the topic schema.