Catalyst Managed Services
Catalyst includes first-party managed infrastructure that you can enable per project without provisioning anything yourself. These managed services are ideal for development, testing, and production workloads that fit within the per-project limits.
Every operation on this page — enabling managed services on a project, browsing topics and keys, inspecting workflow executions — can also be done from the Catalyst Web UI at catalyst.diagrid.io. The console additionally provides visual data explorers for each managed service: a Pub/Sub topics explorer, a Key/Value store visualizer, and a dedicated Workflows view (see Observability).
📣Managed Pub/Sub
Catalyst-hosted message broker. Use it as a pubsub component in your project.
🗂️Managed Key/Value
Catalyst-hosted key-value store. Use it as a state-store component.
🔁Managed Workflow Store
Catalyst-hosted state store for durable workflow execution.
Managed services let you build end-to-end on Catalyst in minutes — no external Redis, Postgres, or Kafka required. The managed broker's component name is always pubsub. The managed KV store's component name is kvstore. Reference these names directly from your subscriptions, state calls, and application code.
When to use managed services
Managed services are a good fit when:
- You want to build and validate Catalyst workloads without standing up your own pub/sub, database, or workflow store.
- You are running small-to-medium workloads that fit within the project-level size and throughput limits.
- You want a single point of operation — Catalyst upgrades, patches, scales, and monitors the infrastructure on your behalf.
For production workloads beyond the limits of the managed services, or when you need to bring existing infrastructure under Catalyst management, use a component backed by your own state store, broker, or database.
Enable managed services on a project
Managed services are opt-in per project. You can enable them at creation time or update an existing project:
# Create a project with managed Pub/Sub and KV
diagrid project create my-project \
--deploy-managed-pubsub \
--deploy-managed-kv \
--wait
# Enable the managed workflow store on an existing project
diagrid project update my-project \
--deploy-managed-workflow \
--wait
See diagrid project create and diagrid project update.
Once enabled, the managed service appears as a normal component in your project and can be referenced by App IDs.
Managed Pub/Sub
The managed Pub/Sub broker supports standard Dapr pub/sub semantics — publish, subscribe, topic routing, and declarative subscriptions. Each project gets one broker with its own topic namespace.
# List topics on the managed broker
diagrid pubsub list
# Get broker details (capacity, usage, retention)
diagrid pubsub get
# Create a topic
diagrid pubsub create my-topic --wait
See diagrid pubsub for the full CLI reference.
Use the managed broker as the pubsubname in your subscriptions:
apiVersion: cra.diagrid.io/v1beta1
kind: Subscription
metadata:
name: orders-subscription
spec:
pubsubname: pubsub
topic: orders
routes:
default: /orders
scopes:
- my-app
Publishing and subscribing
Your applications use the standard Dapr Pub/Sub API — no code changes are needed when migrating from a self-managed broker. For a quick smoke test:
diagrid call publish post \
--pubsub pubsub \
--topic my-topic \
--data '{"message": "hello"}'
See diagrid call publish.
Topics explorer
The Catalyst console at catalyst.diagrid.io includes a Pub/Sub topics explorer for the managed broker. Use it to browse topics, inspect current subscribers, and see recent traffic without leaving the UI.
Managed Key/Value
The managed KV store is a Catalyst-hosted state store suitable for small-to-medium key-value workloads. It supports the full Dapr State API, including get, set, delete, transactions, and queries.
# List managed KV stores in the project
diagrid kv list
# Runtime get/set/delete via the Dapr State API
diagrid call state set --state-store kvstore --key order-123 --value '{"status":"paid"}'
diagrid call state get --state-store kvstore --key order-123
diagrid call state delete --state-store kvstore --key order-123
# Execute a multi-item transaction
diagrid call state transaction --state-store kvstore --file tx.json
See diagrid kv for store management and diagrid call state for runtime get/set/delete/transaction.
The managed KV exposes query filters on key, creation date, and expiry, which you can use both from the CLI and from the Catalyst console.
Key/Value visualizer
The Catalyst console includes a Key/Value store visualizer that lists every key in the managed KV store, with inline viewing of values, metadata, and expiry. Filter by key prefix, creation date, or TTL to inspect and debug state without writing CLI queries.
Managed Workflow Store
Durable workflows require a state store to persist execution state, history, and timers. The managed workflow store is a first-party state store tuned for workflow workloads — it's the simplest way to run durable workflows on Catalyst without provisioning your own PostgreSQL, Redis, or other backing database.
# Start a workflow instance against an App ID using the managed store
diagrid workflow start \
--app-id my-workflow-app \
--workflow-name order-processing \
--input '{"orderId": "123"}'
# List recent executions
diagrid workflow list --app-id my-workflow-app
See diagrid workflow start and diagrid workflow list.
Once the managed workflow store is enabled, it is automatically wired up to your project's workflow App IDs. You can also pair it with a self-managed state store by creating a standard state component and scoping it to specific workflow App IDs instead.
For complete workflow operation commands — pause, resume, terminate, rerun, purge, raise events — see the workflow CLI reference.
Workflows view
The Catalyst console includes a dedicated Workflows view for browsing every execution persisted in the managed workflow store — with execution graph, history, inputs/outputs, and one-click rerun/resume/purge. See Workflow execution insights in the Observability guide for the full tour.
Limits
The managed services are sized to comfortably handle development and small-to-medium production workloads. On Catalyst Cloud the free-tier limits apply per project:
| Resource | Cloud free-tier limit |
|---|---|
| Diagrid Pub/Sub broker max data size | 512 MB |
| Diagrid Key/Value store max data size | 512 MB |
| Diagrid Workflow store max data size | 512 MB |
On Catalyst Enterprise, the limits depend on the capacity of the region's underlying storage.
See Plans & Support for the full quota table and higher-tier options.
Migrating to your own infrastructure
When a workload outgrows the managed services, migrate it to your own infrastructure without application code changes:
- Create a component backed by your chosen state store, broker, or database.
- Update scopes to include the workload's App ID.
- Update your application's
pubsubnameorstatestorerefto point at the new component.
The Dapr programming model hides the component choice from your app, so the migration is a configuration change rather than a code change.
What's next
- Components — wire backing infrastructure to App IDs.
- Develop Workflows — build durable workflows on top of the workflow store.
- Develop Dapr APIs — language-specific guides for state and pub/sub.