Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions src/content/changelog/artifacts/2026-05-15-wrangler-support.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Wrangler support for Artifacts
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is wrangler

description: Manage Artifacts namespaces, repositories, and repo-scoped tokens from the command line using Wrangler.
products:
- artifacts
date: 2026-05-15
---

You can now manage [Artifacts](/artifacts/) namespaces, repositories, and repo-scoped tokens directly from Wrangler.

Available commands:

- `wrangler artifacts namespaces list` — List Artifacts namespaces in your account.
- `wrangler artifacts namespaces get` — Get metadata for a namespace.
- `wrangler artifacts repos create` — Create a repo in a namespace.
- `wrangler artifacts repos list` — List repos in a namespace.
- `wrangler artifacts repos get` — Get metadata for a repo.
- `wrangler artifacts repos delete` — Delete a repo.
- `wrangler artifacts repos issue-token` — Issue a repo-scoped token for Git access.

To get started, refer to the [Wrangler Artifacts commands documentation](/workers/wrangler/commands/artifacts/).
15 changes: 15 additions & 0 deletions src/content/docs/artifacts/api/wrangler.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
pcx_content_type: reference
title: Wrangler commands
sidebar:
order: 3
description: Manage Artifacts namespaces, repositories, and repo tokens from the command line using Wrangler.
products:
- artifacts
---

import { Render } from "~/components";

Use `wrangler artifacts` commands to manage Artifacts namespaces, repositories, and repo-scoped tokens from the command line.
Comment thread
dinasaur404 marked this conversation as resolved.

<Render file="wrangler-commands/artifacts" product="workers" />
19 changes: 19 additions & 0 deletions src/content/docs/workers/wrangler/commands/artifacts.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
pcx_content_type: reference
title: Artifacts
description: Manage Artifacts namespaces, repositories, and repo-scoped tokens using Wrangler.
products:
- workers
---

import { Render, InlineBadge } from "~/components";

Manage [Artifacts](/artifacts/) namespaces, repositories, and repo-scoped tokens using Wrangler. <InlineBadge text="Private beta" variant="caution" />

:::note
Requires Wrangler version `4.91.0` or later.
:::

All `artifacts` commands support `--json` for machine-readable output. Commands that return tokens use a secret-safe output path so credentials are not persisted to Wrangler debug logs.

<Render file="wrangler-commands/artifacts" product="workers" />
170 changes: 170 additions & 0 deletions src/content/partials/workers/wrangler-commands/artifacts.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
---
{}
---

import { AnchorHeading, Type, MetaInfo } from "~/components";

## `artifacts namespaces`

Manage Artifacts namespaces.

<AnchorHeading title="`namespaces list`" slug="artifacts-namespaces-list" depth={3} />

List Artifacts namespaces in your account.

```txt
wrangler artifacts namespaces list [OPTIONS]
```

- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

<AnchorHeading title="`namespaces get`" slug="artifacts-namespaces-get" depth={3} />

Get details for an Artifacts namespace.

```txt
wrangler artifacts namespaces get <NAME> [OPTIONS]
```

- `NAME` <Type text="string" /> <MetaInfo text="required" />
- The name of the Artifacts namespace.
- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

## `artifacts repos`

Manage Artifacts repositories within a namespace.

<AnchorHeading title="`repos create`" slug="artifacts-repos-create" depth={3} />

Create a new Artifacts repository. Returns the repo details and an initial repo-scoped token.

```txt
wrangler artifacts repos create <NAME> --namespace <NAMESPACE> [OPTIONS]
```

- `NAME` <Type text="string" /> <MetaInfo text="required" />
- The name of the repository to create.
- `--namespace` <Type text="string" /> <MetaInfo text="required" />
- The Artifacts namespace to create the repository in.
- `--description` <Type text="string" /> <MetaInfo text="optional" />
- An optional description for the repository.
- `--default-branch` <Type text="string" /> <MetaInfo text="optional" />
- The default branch for the repository.
- `--read-only` <Type text="boolean" /> <MetaInfo text="optional" />
- Create the repository as read-only.
- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

For example, to create a new repository:

```sh
npx wrangler artifacts repos create starter-repo --namespace sandbox
```

```sh output
✨ Created Artifacts repo "starter-repo" in namespace "sandbox"

id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
name: starter-repo
default_branch: main
read_only: false
remote: https://0123456789abcdef.artifacts.cloudflare.net/sandbox/starter-repo
token: artifacts:v1:repo:...
```

:::note
The returned `token` is a secret. Wrangler uses a secret-safe output path for this value so it is not persisted to debug logs. Store it securely.
:::

<AnchorHeading title="`repos list`" slug="artifacts-repos-list" depth={3} />

List Artifacts repositories in a namespace.

```txt
wrangler artifacts repos list --namespace <NAMESPACE> [OPTIONS]
```

- `--namespace` <Type text="string" /> <MetaInfo text="required" />
- The Artifacts namespace to list repositories from.
- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

<AnchorHeading title="`repos get`" slug="artifacts-repos-get" depth={3} />

Get details for an Artifacts repository.

```txt
wrangler artifacts repos get <NAME> --namespace <NAMESPACE> [OPTIONS]
```

- `NAME` <Type text="string" /> <MetaInfo text="required" />
- The name of the repository.
- `--namespace` <Type text="string" /> <MetaInfo text="required" />
- The Artifacts namespace.
- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

<AnchorHeading title="`repos delete`" slug="artifacts-repos-delete" depth={3} />

Delete an Artifacts repository. Prompts for confirmation unless `--force` is passed.

```txt
wrangler artifacts repos delete <NAME> --namespace <NAMESPACE> [OPTIONS]
```

- `NAME` <Type text="string" /> <MetaInfo text="required" />
- The name of the repository to delete.
- `--namespace` <Type text="string" /> <MetaInfo text="required" />
- The Artifacts namespace.
- `--force, -y` <Type text="boolean" /> <MetaInfo text="optional" />
- Skip the interactive deletion confirmation prompt.
- Default: false
- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

<AnchorHeading title="`repos issue-token`" slug="artifacts-repos-issue-token" depth={3} />

Issue a repo-scoped token for authenticating Git operations against an Artifacts repository.

```txt
wrangler artifacts repos issue-token <REPO> --namespace <NAMESPACE> [OPTIONS]
```

- `REPO` <Type text="string" /> <MetaInfo text="required" />
- The name of the repository to issue a token for.
- `--namespace` <Type text="string" /> <MetaInfo text="required" />
- The Artifacts namespace.
- `--scope` <Type text="string" /> <MetaInfo text="optional" />
- The token scope. Accepted values: `read`, `write`.
- `--ttl` <Type text="number" /> <MetaInfo text="optional" />
- The token time-to-live in seconds. Must be greater than 0.
- `--json` <Type text="boolean" /> <MetaInfo text="optional" />
- Return output as JSON.
- Default: false

For example, to issue a read-scoped token:

```sh
npx wrangler artifacts repos issue-token starter-repo --namespace sandbox --scope read
```

```sh output
✨ Issued Artifacts repo token for "starter-repo" in namespace "sandbox"

id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
scope: read
expires_at: 2026-05-15T12:00:00Z
plaintext: artifacts:v1:repo:...
```

:::note
The returned `plaintext` token is a secret. Use it as the password when authenticating Git operations against the repo `remote`. For more information, refer to [Authentication](/artifacts/guides/authentication/).
:::