---
# @generated by sylphx-gen 0.1.0 from contracts@04e1ecbfe774a1a19c4948892114a2dfa4a5502a024d780c13f5d41103b96d5d. Do not edit.
title: "sylphx assets assets"
description: "The sylphx assets assets commands of Sylphx Generated Assets: every verb, with its argument, its flags and a run line."
type: reference
product: assets
summary: "Every sylphx assets assets command: its argument, its flags and a run line."
updated: 2026-09-28
nav: false
---

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

## get

Gets an asset.

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

**CLI**

```bash
sylphx assets assets get orgs/acme/projects/shop/envs/production/assets/asset
```

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

## list

Lists assets. The filter is limited to `kind`, `state`, and `review_state`.

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

**CLI**

```bash
sylphx assets assets list orgs/acme/projects/shop/envs/production
```

`GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/assets` · scope `assets:read` · effect `read` · [Request, response and examples](/docs/api/assets/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, limited to `kind`, `state`, and `review_state`; for example `kind = ASSET_KIND_IMAGE AND state = ASSET_STATE_READY`. |

## generate

Records the recipes as assets and generates the variants that are missing. Each call is idempotent and works within a bounded time; call again until `pending` is 0.

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

**CLI**

```bash
sylphx assets assets generate orgs/acme/projects/shop/envs/production
```

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

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--recipes` | `json` | The recipes the code declares; 1 to 1000. Required. Repeat the flag for each value. |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |

## lock

Returns the `assets.lock` entries and canonical text for the keys the call names, and only those. A read with a request body, like a query.

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

**CLI**

```bash
sylphx assets assets lock orgs/acme/projects/shop/envs/production
```

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

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--keys` | `string` | The logical keys the code declares, 1 to 5000, each 16 lowercase hex characters. The lock holds only these, so a removed recipe drops out. Required. Repeat the flag for each value. |

## approve-variant

Approves one variant and records who approved it.

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

**CLI**

```bash
sylphx assets assets approve-variant orgs/acme/projects/shop/envs/production/assets/asset
```

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

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--content-hash` | `string` | The content hash of the variant, 64 lowercase hex characters. Required. |

## reject-variant

Rejects one variant. Its slot is freed and the next `:generate` fills it; the rejected file keeps serving at its URL.

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

**CLI**

```bash
sylphx assets assets reject-variant orgs/acme/projects/shop/envs/production/assets/asset
```

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

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--content-hash` | `string` | The content hash of the variant, 64 lowercase hex characters. Required. |

## retire-variant

Retires one variant. Its URL answers 404 from then on and its slot is freed.

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

**CLI**

```bash
sylphx assets assets retire-variant orgs/acme/projects/shop/envs/production/assets/asset --yes
```

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/assets/asset:retireVariant` · scope `assets:write` · effect `destructive` · [Request, response and examples](/docs/api/assets/retire_variant)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--content-hash` | `string` | The content hash of the variant, 64 lowercase hex characters. Required. |
| `--reason` | `string` | Why the variant is retired, at most 500 characters. |
| `--yes` | `bool` | Do not ask before this destructive call. |
