Skip to content
DocsAll docs
Console

Regions

List the regions and move a team to a different region.

Last updated

On this page

Overview

A region is a place where the platform runs your workspaces and environments. It has an id, a name, and a status, and you can use it only while the status is active. Each owner has exactly one region, which the platform records when it makes the team. Create calls have no field for a region.

Only an administrator of the platform decides the request. See Quota and requests.

The platform cannot move workspace data between regions. It refuses a move while the owner holds a workspace, capsule, environment, volume, snapshot, or desk. After an approved move, create new items in the new region.

To do these tasks with an AI agent, see Agentic workflows.

Limits

ItemLimit
Regions of an ownerOne
Pending region requestsOne for each owner

Tasks

List the regions

Reason for the task

Find the regions that you can use.

Job set-up

Procedure

  1. Create the SDK client.

    Python
    from kloudlite import Kodekl = Kloudlite()
    TypeScript
    import { Kode } from "./index.ts";const kl = new Kloudlite();
    Go
    kl := kloudlite.New(kloudlite.Options{})
    Ruby
    require_relative "kloudlite"kl = Kloudlite::Client.new
    Java
    var kl = new Kloudlite();
  2. List the regions.

    Python
    for r in kl.request("GET", "/v1/regions"):    print(r["id"], r["name"], r["status"])
    TypeScript
    const regions = (await kl.request("GET", "/v1/regions")) as { id: string; name: string; status: string }[];for (const r of regions) {  console.log(r.id, r.name, r.status);}
    Go
    var regions []map[string]anyif err := kl.Request("GET", "/v1/regions", kloudlite.RequestOptions{Out: &regions}); err != nil {    log.Fatal(err)}for _, r := range regions {    fmt.Println(r["id"], r["name"], r["status"])}
    Ruby
    kl.request("GET", "/v1/regions").each do |r|  puts "#{r["id"]} #{r["name"]} #{r["status"]}"end
    Java
    // The answer is a JSON list; each entry has "id", "name", and "status".System.out.println(kl.request("GET", "/v1/regions"));
    CLI
    kode request GET /v1/regions

Close-out

  1. Use the id of a region with the status active.

Move a team to a different region

Reason for the task

Run the workspaces of an owner in a different region.

Job set-up

  • Access: you. For a team, a team admin or a team owner.
  • Conditions: the owner holds no workspace, environment, volume, or desk and has no pending request of the kind region. You know the id of an active region.
  • References: POST /v1/requests, List the regions.
WARNING

Delete every workspace, environment, volume, and desk of the owner first. This deletes the data in them. Copy what you need to a repository first.

NOTE

The console form requests for your own account. A request for a team goes to the same route with owner set to the team handle.

Procedure

  1. Delete the workspaces, the environments, the volumes, and the desks of the owner.

  2. Open your avatar menu, select My requests, and select New request.

  3. Select Move to a region in the field What do you need?.

  4. Select the region in the field Region, and type the reason in the field Reason.

  5. Select Send request.

Close-out

  1. Make sure that the request shows approved. See Show the status of a request.

Troubleshooting

SymptomPossible causeCorrective action
422 with unknown regionThe region does not exist or is not active.Select a region from List the regions.
409 with a request is already pendingThe owner has a pending region request.Wait for the decision.
The request stays pendingThe owner still holds a workspace, an environment, a volume, or a desk.Delete them. Ask the administrator to decide again.
The request shows deniedAn administrator refused the move.Read the note below the reason. Send a new request if needed.