Qala Publishing API (v1.0)
Download OpenAPI specification:Download
Publish Topic Events
Publishes Events to a Topic.
Authorizations:
path Parameters
topicName required | string The name of the Topic to publish Events to. |
header Parameters
x-environment-id required | string <guid> The Id of the Environment the Events are being published in. |
Request Body schema: application/jsonrequired
The Events to publish.
type required | string non-empty ^(?:[A-Za-z0-9.,_\-&()\[\]<>]{1,100})$ The type of the Event. |
id | string or null The Id of the Event. |
audiences | Array of strings or null Route the Events to the specified scoped audience. |
data required | string non-empty The data of the Event. |
Responses
Request samples
- Payload
[- {
- "type": "transaction.updated",
- "id": "Example2",
- "audiences": null,
- "data": {
- "customerId": "123456",
- "name": "John Doe",
- "email": "johndoe@letsQala.com",
- "createdAt": "2024-04-30T08:45:00",
- "address": {
- "street": "123 Main St",
- "city": "Los Angeles",
- "state": "California",
- "zipCode": "90210",
- "country": "United States"
}
}
}
]
Response samples
- 400
{- "title": "Bad Request",
- "status": 400,
- "instance": "/v1/topics/transactions/events/publish",
- "traceId": "0HN5I8TBVM6OO:00000001",
- "detail": "One or more validation errors occurred.",
- "errors": [
- {
- "name": "events",
- "reason": "The Events field is required.",
- "code": "INVALID_MANDATORY_PROPERTY",
- "severity": null
}
]
}
Publish Events
A single endpoint that enables Publishers to send events without specifying a Topic. Events are dynamically routed to the correct Topics and Subscriptions based on the Event Types and Subscription Scope filter—simplifying integration, reducing misrouting, and ensuring secure, tenant-aware delivery.
Authorizations:
header Parameters
x-environment-id required | string <guid> The Id of the Environment the Events are being published in. |
Request Body schema: application/jsonrequired
The Events to publish.
type required | string non-empty ^(?:[A-Za-z0-9.,_\-&()\[\]<>]{1,100})$ The type of the Event. |
id | string or null The Id of the Event. |
audiences | Array of strings or null Route the Events to the specified scoped audience. |
data required | string non-empty The data of the Event. |
Responses
Request samples
- Payload
[- {
- "type": "transaction.updated",
- "id": "Example2",
- "audiences": null,
- "data": {
- "customerId": "123456",
- "name": "John Doe",
- "email": "johndoe@letsQala.com",
- "createdAt": "2024-04-30T08:45:00",
- "address": {
- "street": "123 Main St",
- "city": "Los Angeles",
- "state": "California",
- "zipCode": "90210",
- "country": "United States"
}
}
}
]
Response samples
- 400
{- "title": "Bad Request",
- "status": 400,
- "instance": "/v1/events/publish",
- "traceId": "0HN5I8TBVM6OO:00000001",
- "detail": "One or more validation errors occurred.",
- "errors": [
- {
- "name": "events",
- "reason": "The Events field is required.",
- "code": "INVALID_MANDATORY_PROPERTY",
- "severity": null
}
]
}
Create Subscriber Group Session Token
Creates a new Session Token for a Subscriber Group.
Authorizations:
path Parameters
subscriberGroupId required | string <guid> The Id of the Subscriber Group to create a Session Token for. |
Responses
Response samples
- 200
- 400
{- "sessionToken": "ABC-G-kbI6ZQ1nr4qbs-U81Nt_p93GpxeT_m43grreIEnVZjG53Sa5skfeN7YmSGGGSs-vIemIw7U_EXAMPLE-w"
}