> ## Documentation Index
> Fetch the complete documentation index at: https://docs.suprsend.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CLI Overview

> Overview of the SuprSend CLI for managing workflows, templates, schemas, and events, syncing assets across workspaces, and building notification CI/CD.

The **SuprSend CLI** is a powerful command-line interface that enables developers to setup CI/CD pipeline for notification changes and manage, automate, and sync SuprSend assets across multiple workspaces. With a few commands, you can handle workflows, templates, schemas, events, and even integrate directly with AI agents.

***

## Benefits of using SuprSend CLI

Developers often prefer CLI as it offers **speed, automation, and flexibility**. Instead of writing boilerplate code or clicking through multiple screens on UI, you can run a single command or script to perform repeatable actions-ideal for modern DevOps and automation.

By using the CLI, you can:

* **Automate with CI/CD Deployment** – Release notification changes through feature or bugfix branches, just like any other piece of code: version it, test it, and deploy it.
* **Work with assets locally** – Create, edit, and commit workflows, templates, schemas, and translation files locally.
* **Version Control Changes** – Pull all assets locally and track them in Git for maintaining release history.
* **Enforce Approval gates for production releases** - Setup strict checks that all changes on production go through approval process so that nothing goes live without check.

***

## What You Can Do with SuprSend CLI

* **Manage Assets** – List, pull, push, and commit notification workflows, templates, schemas, preference categories, and events.
* **Sync Across Workspaces** – Transfer assets between workspaces for staging-to-production promotion.
* **AI Agent Integration** – Start an MCP server from the CLI and connect SuprSend with AI agents or developer copilots.

***

## Available Commands

### Workflow

Manage [workflows](/docs/workflows): create, update, enable, disable, and promote across workspaces. Also, see <Link href="/reference/create-update-workflow">Workflow Management APIs</Link>.

| Command                                               | Description                                 |
| ----------------------------------------------------- | ------------------------------------------- |
| [`workflow list`](/reference/cli-workflow-list)       | List workflows in a workspace               |
| [`workflow push`](/reference/cli-workflow-push)       | Push local workflows to SuprSend            |
| [`workflow pull`](/reference/cli-workflow-pull)       | Pull workflows from SuprSend to local files |
| [`workflow enable`](/reference/cli-workflow-enable)   | Enable a workflow                           |
| [`workflow disable`](/reference/cli-workflow-disable) | Disable a workflow                          |

### Template

Manage [templates](/docs/templates): list, pull, push, get details, and commit across workspaces. Also, see <Link href="/reference/get-template-list">Template Management APIs</Link>.

| Command                                             | Description                                                        |
| --------------------------------------------------- | ------------------------------------------------------------------ |
| [`template list`](/reference/cli-template-list)     | List templates for a workspace                                     |
| [`template get`](/reference/cli-template-get)       | Get template details including all variants                        |
| [`template pull`](/reference/cli-template-pull)     | Pull templates and their variants from SuprSend workspace to local |
| [`template push`](/reference/cli-template-push)     | Push templates and their variants from local to SuprSend workspace |
| [`template commit`](/reference/cli-template-commit) | Commit a template from draft to live                               |

### Schema

Manage [schemas](/docs/validate-workflow-payload): create, update, commit, reset, and promote across workspaces. Also, see <Link href="/reference/upsert-schema">Schema Management APIs</Link>.

| Command                                                  | Description                                 |
| -------------------------------------------------------- | ------------------------------------------- |
| [`schema list`](/reference/cli-schema-list)              | List schemas in a workspace                 |
| [`schema push`](/reference/cli-schema-push)              | Push local schemas to SuprSend              |
| [`schema pull`](/reference/cli-schema-pull)              | Pull schemas from SuprSend to local files   |
| [`schema commit`](/reference/cli-schema-commit)          | Commit a schema to make it live             |
| [`generate-types`](/reference/cli-schema-generate-types) | Generate type definitions from JSON schemas |

### Event

Manage [events](/docs/events): create, update, list, and promote across workspaces. Also, see <Link href="/reference/create-update-event">Event Management APIs</Link>.

| Command                                   | Description                              |
| ----------------------------------------- | ---------------------------------------- |
| [`event list`](/reference/cli-event-list) | List events in a workspace               |
| [`event push`](/reference/cli-event-push) | Push local events to SuprSend            |
| [`event pull`](/reference/cli-event-pull) | Pull events from SuprSend to local files |

### Category

Manage [categories](/docs/notification-category): create, update, list, and promote across workspaces. Also, see <Link href="/reference/create-update-category">Category Management APIs</Link>.

| Command                                                                 | Description                                                                                |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [`category list`](/reference/cli-category-list)                         | List categories in a workspace                                                             |
| [`category pull`](/reference/cli-category-pull)                         | Pull categories from SuprSend to local files                                               |
| [`category push`](/reference/cli-category-push)                         | Push local categories to SuprSend                                                          |
| [`category commit`](/reference/cli-category-commit)                     | Commit categories to make them live                                                        |
| [`category translation list`](/reference/cli-category-translation-list) | List translations in a category                                                            |
| [`category translation pull`](/reference/cli-category-translation-pull) | Pull translations from SuprSend to local files                                             |
| [`category translation push`](/reference/cli-category-translation-push) | Push local translations to SuprSend (translations go live immediately, no commit required) |

### Translation

Manage [translations](/docs/translations): create, update, list, and promote across workspaces. Also, see <Link href="/reference/create-update-translation">Translation Management APIs</Link>.

| Command                                                   | Description                                    |
| --------------------------------------------------------- | ---------------------------------------------- |
| [`translation list`](/reference/cli-translation-list)     | List translations in a workspace               |
| [`translation pull`](/reference/cli-translation-pull)     | Pull translations from SuprSend to local files |
| [`translation push`](/reference/cli-translation-push)     | Push local translations to SuprSend            |
| [`translation commit`](/reference/cli-translation-commit) | Commit translations to make them live          |

### Sync

Manage [sync](/reference/cli-sync): sync assets between workspaces.

| Command                       | Description                    |
| ----------------------------- | ------------------------------ |
| [`sync`](/reference/cli-sync) | Sync assets between workspaces |

## Next

<CardGroup cols={2}>
  <Card title="Quickstart" icon="download" iconType="solid" href="/reference/cli-quickstart">
    Get up and running with SuprSend CLI in minutes
  </Card>

  <Card title="Changelog" icon="key" iconType="solid" href="/reference/cli-changelog">
    View all CLI releases and updates
  </Card>
</CardGroup>
