Solace Upstream

Enterprise only Premium Partner
Related Documentation
Made by
Kong Inc.
Supported Gateway Topologies
hybrid db-less traditional
Supported Konnect Deployments
hybrid cloud-gateways serverless
Compatible Protocols
grpc grpcs http https
Priority
755
Minimum Version
Kong Gateway - 3.11

This plugin converts requests (or custom data) into Solace messages and publishes them to specified Solace queues or topics. For more details, see Solace event messaging overview.

Implementation details

This plugin uses the official Solace C API as the client when communicating with the Solace server.

When encoding request bodies, several things happen:

  • For requests with a content-type header of application/x-www-form-urlencoded, multipart/form-data, or application/json, this plugin passes the raw request body in the body attribute, and tries to return a parsed version of those arguments in body_args. If this parsing fails, an error message is returned and the message is not sent.
  • If the content-type is not text/plain, text/html, application/xml, text/xml, or application/soap+xml, then the body will be base64-encoded to ensure that the message can be sent as JSON. In such a case, the message has an extra attribute called body_base64 set to true.

Authentication

The Solace Upstream plugin supports the following authentication schemes for Solace broker connections through session.authentication.scheme:

Scheme

Description

Example

NONE No authentication.
BASIC Authenticates using a username and password.

Provide session.authentication.username and session.authentication.password, or supply credentials via session.authentication.basic_auth_header.
Send message to Solace queues with persistent delivery
OAUTH2 Authenticates using a static OAuth 2.0 access token.

Provide session.authentication.access_token directly, or supply it via session.authentication.access_token_header. The token must be rotated manually when it expires.
CLIENT_CREDENTIALS v3.15+ Authenticates using short-lived OAuth 2.0 access tokens fetched and renewed automatically by Kong Gateway.

Kong Gateway uses the client_credentials grant to retrieve tokens from session.authentication.client_credentials.token_endpoint, caches them until expiry, and retries with a fresh token if Solace returns an unauthenticated response.

Requires the session.authentication.client_credentials block.
OAuth 2.0 client credentials authentication

Help us make these docs great!

Kong Developer docs are open source. If you find these useful and want to make them better, contribute today!