Skip to content

Platform / Task

Manage projects

Updated · 4 min read

Create, list, rename and delete the projects in your organization, find a project's URN, change the billing account a project is charged to, and delete an organization.

On this page8 sections

Every resource lives in a project, so you create at least one project before you launch anything. Use separate projects to keep applications or environments apart, to grant roles on one of them only, or to charge them to different billing accounts.

Before you begin

You can create and manage projects while the organization is still under review.

Create a project

  1. Create the project:

    terminal
    origin admin create-project --org-id <org-id> --name "Web shop"

    To choose how the project ID starts, add --id-prefix <prefix>, for example --id-prefix shop. The platform appends random digits. A prefix has at least two characters, uses lowercase letters, digits and hyphens, and starts with a letter. Without a prefix, the platform picks a random word. Example output (illustrative):

    JSON
    {
      "admin": {
        "createProject": {
          "id": "...",
          "urn": "urn:origin:cloud:admin::0a1b2c3d4e5f::shop-4829103756",
          "orgId": "0a1b2c3d4e5f",
          "projectId": "shop-4829103756",
          "name": "Web shop",
          "createdAt": "2026-10-03T09:20:01Z",
          "createdBy": "user:..."
        }
      }
    }
  2. Note the urn. Compute, storage and network commands take it as --project-urn. You can also build it from the IDs: urn:origin:cloud:admin::<org-id>::<project-id>.

  3. Verify that the project is listed:

    terminal
    origin admin list-projects --org-id <org-id>

A new project is charged to the organization’s default billing account.

View a project

terminal
origin admin get-project --org-id <org-id> --id <project-id>

Rename a project

Renaming changes the display name only. The project ID and URN stay the same.

terminal
origin admin update-project --org-id <org-id> --id <project-id> \
  --name "Web shop (production)"

To rename the organization, use origin admin update-organisation --org-id <org-id> --name <name>.

Change a project’s billing account

A project is always charged to exactly one billing account of its organization. To charge it to another one, call the linkProjectToBillingAccount mutation in the admin namespace with orgId, projectId and billingAccountId. It replaces the current link; there’s no way to leave a project without a billing account.

This needs the admin.project.attach permission, which the Owner role has. It doesn’t need access to the billing account itself. See Billing access.

Delete a project

Deleting a project is refused while it still owns any of these resources. Nothing is deleted on your behalf.

  • An instance that isn’t terminated.
  • An image or a key pair.
  • A volume or snapshot that isn’t deleted.
  • A NAT gateway or an allocated Floating IP.
  • A VPC, including the default VPC that a launch created.
  1. Delete every resource in the project: terminate its instances, delete its images, key pairs, volumes and snapshots, delete its NAT gateways, release its Floating IPs, and delete its VPCs.

  2. Delete the project:

    terminal
    origin admin delete-project --org-id <org-id> --id <project-id>
  3. Verify that the project is no longer listed by origin admin list-projects --org-id <org-id>.

If a resource remains, the request fails with BAD_REQUEST, naming every kind of resource the project still owns, in the order to remove them:

text
invalid input on field project_id: cannot delete project: it still owns at least one instance, one snapshot and one Floating IP

Deleting a project also removes the quota budgets you set on it, and every role assignment scoped to it, for every member and service account. Org-wide role assignments are unaffected. See Role assignments and scopes.

Delete an organization

An organization can be deleted only when it has no projects left. Delete every project first, then run:

terminal
origin admin delete-organisation --org-id <org-id>

While projects remain, the request fails with BAD_REQUEST and says how many. Billing accounts that no project is linked to don’t block the deletion.