---
# @generated by sylphx-gen. Do not edit.
title: "sylphx events topics"
description: "The sylphx events topics commands of Sylphx Events: every verb, with its argument, its flags and a run line."
type: reference
product: queues
summary: "Every sylphx events topics command: its argument, its flags and a run line."
updated: 2026-09-28
nav: false
---

> **This method is not served on the public API.** `api.sylphx.com` does not route this call: its backend is not deployed behind the public API, or does not implement the call. This page documents the contract. It is kept out of the sidebar and of search engines.

The `topics` commands of Sylphx Events, as the CLI spells them: the same
calls as [the `topics` API page](/docs/api/topics), typed for the
shell. [Install, sign in and the grammar](/docs/cli) are on the CLI index.

## get

Gets a topic.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx events topics get orgs/acme/projects/shop/envs/production/topics/topic
```

`GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/topics/topic` · scope `events:read` · effect `read` · [Request, response and examples](/docs/api/topics/get)

## list

Lists topics.

**`PARENT`** — optional: the CLI fills it from the linked project or the
key's scope when it is left out.

**CLI**

```bash
sylphx events topics list orgs/acme/projects/shop/envs/production
```

`GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/topics` · scope `events:read` · effect `read` · [Request, response and examples](/docs/api/topics/list)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--page-size` | `int` | At most this many; default 50, clamped to 1000. |
| `--page-token` | `string` | `next_page_token` of the previous page. |
| `--filter` | `string` | AIP-160 filter over labels and filterable fields. |
| `--order-by` | `string` | AIP-132 ordering over filterable fields. |

## create

Creates a topic.

**`ID`** — The id segment of the new Resource's name; the server assigns one when omitted.

**CLI**

```bash
sylphx events topics create --parent orgs/acme/projects/shop/envs/production
```

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/topics` · scope `events:write` · effect `write` · [Request, response and examples](/docs/api/topics/create)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--parent` | `string` | The parent to create in; defaults to the linked project or the key's scope. |
| `--meta.labels` | `key=value` | Caller-writable, indexed labels (AIP-122 label rules). Repeat the flag for each value. |
| `--meta.annotations` | `key=value` | Caller-writable, unindexed annotations. Repeat the flag for each value. |
| `--meta.display-name` | `string` | Caller-writable human-readable name. |
| `--spec.retention` | `duration` | How long published events stay readable and replayable; default 7d, at most 30d. |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |

## update

Updates a topic.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx events topics update orgs/acme/projects/shop/envs/production/topics/topic
```

`PATCH https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/topics/topic` · scope `events:write` · effect `write` · [Request, response and examples](/docs/api/topics/update)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--meta.labels` | `key=value` | Caller-writable, indexed labels (AIP-122 label rules). Repeat the flag for each value. |
| `--meta.annotations` | `key=value` | Caller-writable, unindexed annotations. Repeat the flag for each value. |
| `--meta.display-name` | `string` | Caller-writable human-readable name. |
| `--spec.retention` | `duration` | How long published events stay readable and replayable; default 7d, at most 30d. |
| `--allow-missing` | `bool` | Create the topic when it does not exist (declarative upsert). |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |

## delete

Deletes a topic.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx events topics delete orgs/acme/projects/shop/envs/production/topics/topic --yes
```

`DELETE https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/topics/topic` · scope `events:write` · effect `destructive` · [Request, response and examples](/docs/api/topics/delete)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--etag` | `string` | Delete only if the current etag matches. |
| `--allow-missing` | `bool` | Succeed when the topic does not exist. |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |
| `--force` | `bool` | Also delete the Topic's Subscriptions; without it a Topic with Subscriptions fails with INVALID_STATE. |
| `--yes` | `bool` | Do not ask before this destructive call. |

## publish

Publishes CloudEvents into a Topic, atomically. Replaying the same `source` + `id` with the same payload returns the stored event; a different payload fails with RESOURCE_ALREADY_EXISTS.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx events topics publish orgs/acme/projects/shop/envs/production/topics/topic
```

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/topics/topic:publish` · scope `events:publish` · effect `write` · [Request, response and examples](/docs/api/topics/publish)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--events` | `json` | The events, at most 100. Required. Repeat the flag for each value. |
