Networking in Catalyst

In Catalyst, processes can communicate in multiple ways. In-cluster communication is facilitated by Kubernetes internal DNS names. Certain services or endpoints are also exposed through ingress routes.

Participants

For every participant running on Catalyst, following (internal) endpoints are available:

  • Ledger API: <canton-participant-name>.<namespace>.svc.cluster.local:5011

  • Admin API: <canton-participant-name>.<namespace>.svc.cluster.local:5019

  • HTTP JSON API:

    • jsonapi-<canton-participant-name>.<namespace>.svc.cluster.local:7011

    • http(s)://<canton-participant-name>.<your-domain>

(Default ports are used. If you set custom ports when creating a participant, values are different)

Domains

For every domain running on Catalyst, following (internal) endpoints are available:

  • Public API: <canton-domain-name>.<namespace>.svc.cluster.local:5018

  • Admin API: <canton-domain-name>.<namespace>.svc.cluster.local:5019

  • If ingress is enabled on a domain, a route is created to the public API: http(s)://<canton-domain-name>.<your-domain>

(Default ports are used. If you set custom ports when creating a domain, values are different)

Applications

For every application running on Catalyst, following (internal) endpoints are available:

  • <application-name>.<namespace>.svc.cluster.local:80

  • Backend app: http(s)://<subdomain>.<your-domain>/<application-name>/api

  • Frontend app: http(s)://<subdomain>.<your-domain>/<application-name>

(Default port is used. If you set a custom port when creating an application, values are different)