Artifacts API Reference
Use Artifacts through the Workers binding, the REST control plane, and Git-compatible remotes.
Prefer retrieval for exact request and response details. Verify current behavior at https://developers.cloudflare.com/artifacts/ before relying on specific auth flows, route details, or generated binding types.
Workers Binding
Artifacts exposes a Worker binding on env.ARTIFACTS.
Namespace Methods
| Method | Use For |
|---|---|
create(name, opts?) | Create a repo and receive its initial remote and token |
get(name) | Resolve a repo handle for repo-scoped operations |
list(opts?) | List repos in a namespace |
delete(name) | Delete a repo |
const created = await env.ARTIFACTS.create("starter-repo", {
description: "Repository for automation experiments",
setDefaultBranch: "main"
});
const repo = await env.ARTIFACTS.get("starter-repo");
const page = await env.ARTIFACTS.list({ limit: 10 });Use the REST API when you need to import a repo from another HTTPS remote.
Repo Handle Methods
Use a repo handle returned by get() or create().
| Method | Use For |
|---|---|
info() | Read repo metadata, including the remote URL |
createToken(scope?, ttl?) | Mint a repo-scoped read or write token |
listTokens() | Inspect active tokens |
validateToken(token) | Check whether a token is still valid |
revokeToken(tokenOrId) | Revoke a token by ID or value |
fork(name, opts?) | Fork one repo into another |
const repo = await env.ARTIFACTS.get("starter-repo");
if (!repo) throw new Error("Repo not found");
const info = await repo.info();
const token = await repo.createToken("read", 3600);
const forked = await repo.fork("starter-repo-copy", {
defaultBranchOnly: true
});Binding Notes
- Current docs describe the runtime binding surface as
create,get,list,delete, and repo-handle methods likeinfo,createToken, andfork. - Use
npx wrangler typesin the target project and treat the generatedworker-configuration.d.tsas the source of truth for that environment. - If generated types appear to expose
import()or a differentget()shape, verify the live docs before depending on those methods.
Verify current runtime behavior in the live docs before depending on methods that are not shown in the Workers binding reference.
REST API
Artifacts currently documents a namespace-scoped control plane:
https://artifacts.cloudflare.net/v1/api/namespaces/$ARTIFACTS_NAMESPACESome deployments also expose an /edge/v1/api/... base path. Verify the correct base URL for your environment in the live docs.
Requests to the standard /v1/api/... routes use a gateway JWT with Bearer authentication.
Returned repo tokens authenticate Git operations against the repo remote. They do not authenticate REST control-plane requests.
Current docs show the standard Cloudflare v4 response envelope around REST results.
Repo Routes
| Route | Use For |
|---|---|
POST /repos | Create a repo |
GET /repos | List repos |
GET /repos/:name | Read repo metadata and remote |
DELETE /repos/:name | Delete a repo |
POST /repos/:name/fork | Fork a repo |
POST /repos/:name/import | Import a public HTTPS remote |
curl --request POST "$ARTIFACTS_BASE_URL/repos" \
--header "Authorization: Bearer $ARTIFACTS_JWT" \
--header "Content-Type: application/json" \
--data '{"name":"starter-repo"}'Important current details from the docs draft:
POST /repos/:name/importaccepts a full HTTPS remote URL such as GitHub or GitLab.- Import supports options such as
branch,depth, andread_only. - Repo metadata includes fields such as description, default branch, timestamps, and the Git
remote.
Token Routes
| Route | Use For |
|---|---|
GET /repos/:name/tokens | List repo tokens |
POST /tokens | Create a token for a repo |
DELETE /tokens/:id | Revoke a token by ID |
Current docs show list-token filtering and pagination by token state. Retrieve the exact query shape from the live docs when you need token audit or cleanup workflows.
Use read tokens for clone, fetch, pull, and indexing workflows. Use write tokens only when a workflow must push or otherwise mutate a repo.
Git-Compatible Access
Artifacts returns repo remote URLs that work with standard git-over-HTTPS tooling.
Recommended current auth pattern for local workflows:
git -c http.extraHeader="Authorization: Bearer $ARTIFACTS_TOKEN" clone "$ARTIFACTS_REMOTE" artifacts-cloneUse a self-contained Basic-auth remote only for short-lived commands that need credentials embedded in the URL.
read tokens support clone, fetch, and pull. git push requires a write token.
For large repos where startup time matters more than a full clone, Artifacts also documents ArtifactFS. Retrieve current details from https://developers.cloudflare.com/artifacts/ when you need mount-style access.