Select spec version:

Manage Destinations using Rudder CLI Beta

Define and manage destinations as YAML configurations using the Rudder CLI tool.
Available Plans
  • free
  • growth
  • enterprise

This feature is in Public Beta as part of RudderStack’s Early Access Program, where we work with early users and customers to test new features and get feedback before making them generally available.

Contact the Product team if you have any questions.

Rudder CLI lets you manage destinations as code. You define each destination in YAML, validate the spec locally, and apply it to your workspace with the same Git-based workflow you use for sources and other CLI resources.

A destination spec is the endpoint a connection points at. You declare the destination in the same project as the source, then declare the connection that links them.

Destination support requires Rudder CLI v0.25.0 or later.

Upgrade if you are using an earlier version.

Key features

Declarative YAML configuration

  • Define destinations in YAML with a type, definition version, and per-type config block. See the Destination YAML Reference.
  • Keep credentials out of Git by referencing secrets as {{ .VAR }} and supplying them at apply time with --var-file. See How to Use Variable Substitution in Rudder CLI.
  • Optionally link a transformation with a #transformation: reference. Connection mode per source type stays in the destination config block — not on the connection spec.

Git integration and CI/CD support

  • Import destinations that already exist in your workspace, then manage them through Git.
  • Validate and apply destination specs with the same rudder-cli validate and rudder-cli apply commands you use for other resources.
  • Use GitHub Actions to run those commands in CI.

Who can use this feature?

CLI-based destination management is useful when you need to:

  • Version destination configuration next to the sources and connections that use it.
  • Review destination changes in pull requests before they reach a workspace.
  • Reproduce the same destination setup across development and production workspaces.

Supported destinations

Rudder CLI supports 24 destination types, spanning warehouses, object storage, and streaming destinations. The dashboard catalog is larger than what you can define in CLI YAML.

See Destination Type Reference for Rudder CLI for the type value you use in YAML and the config keys each type accepts.

Important considerations

  • Rudder CLI rejects any type outside this table. You can define more destinations in the RudderStack dashboard than what you can define in Rudder CLI.
  • To start from a destination you already configured in the dashboard, run rudder-cli import workspace — the imported YAML uses the same keys these pages document. See How to Import Workspace Resources for more information.

Get started

Questions? Let's figure it out together.

Join the RudderStack Slack community to connect with other users, customers, and the RudderStack team — or reach out for direct support.