Region

Regions: where a resource runs and keeps its data, in NoClick's own names (us-east, us-west, eu, ap), never a cloud's.

A resource takes its region when it's created and keeps it: the region= you pass, else (for a child agent) its parent's, else your account's default region, else none, which means wherever NoClick has capacity. Pass region=other.region to put two resources together.

for region in noclick.regions():
    print(region.name, region.label, region.default)
with noclick.Sandbox.create(region="eu") as sb:
    print(sb.region)   # eu
interface Region

A place NoClick runs resources and keeps their data; region= takes its name.

Attributes
nameRegionName

What region takes.

labelstring

For people: US East, US West, Europe, Asia-Pacific.

locationstring

Where it is, in words.

kindsRegionKind[]

The kinds of resource it places today: sandbox, agent, bucket, database, project (an app) and machine everywhere, browser everywhere but us-west, dict and queue in us-east.

defaultboolean

Whether it's your account's default region, which a resource takes when you name none.

rawJsonObject

The response JSON exactly as the API sent it.

regions

function regions(
  options?: { kind?: RegionKind; client?: NoClick },
): Promise<Region[]>

Every region, or those that place kind (another kind throws InvalidRequest naming those that are). Dicts and queues are kept in us-east only for now, and browsers run everywhere but us-west. Your account's default is set in the console. Needs the scope of any kind it places: sandboxes, agents, storage, databases, apps, machines, browsers, dicts, queues or volumes.

const where = await regions({ kind: "agent" });
Parameters
options.clientNoClick

The client to send with; defaults to the module client built from NOCLICK_API_KEY.

options.kindRegionKind
Returns

Each region's name (what region= takes), its label and location, the kinds it places, and whether it's your account's default.