Projects operations
Organize work into projects.
Each operation below is reachable at POST /v1/op/{operation_id} or the resource path POST /v1/{resource}/{action}, with a Bearer token (a gpra_ API key or a session token). Back to the Operations Reference index.
projects.add_member
Add a member to a workspace (project admin/owner).
| Scope | projects:write |
| Side-effect | compute |
| HTTP | POST /v1/op/projects.add_member · POST /v1/projects/add_member |
| Python / TypeScript | client.projects.add_member(…) |
| CLI | geopera projects add-member … |
Request — AddMemberInput
| Field | Type | Required | Description |
|---|---|---|---|
project_id | string | yes | |
user_id | string | yes | UUID of the user to add |
role | string | — | Role: admin, editor, or viewer |
Response — MemberOutput.
projects.archive
Archive a workspace, hiding it from the default list (project admin/owner).
| Scope | projects:write |
| Side-effect | compute |
| HTTP | POST /v1/op/projects.archive · POST /v1/projects/archive |
| Python / TypeScript | client.projects.archive(…) |
| CLI | geopera projects archive … |
Request — ProjectArchiveInput
| Field | Type | Required | Description |
|---|---|---|---|
name | string | — | |
description | string | — | |
is_archived | boolean | — | |
project_id | string | yes |
Response — ProjectResponse.
projects.create
Create a workspace in the caller’s organization.
| Scope | projects:write |
| Side-effect | compute |
| HTTP | POST /v1/op/projects.create · POST /v1/projects/create |
| Python / TypeScript | client.projects.create(…) |
| CLI | geopera projects create … |
Request — ProjectCreate
| Field | Type | Required | Description |
|---|---|---|---|
name | string | yes | |
description | string | — | |
gcs_region | GcsRegion | — |
Response — ProjectResponse.
projects.delete
Permanently delete a workspace and all its data (project admin/owner).
| Scope | projects:write |
| Side-effect | destructive |
| HTTP | POST /v1/op/projects.delete · POST /v1/projects/delete |
| Python / TypeScript | client.projects.delete(…) |
| CLI | geopera projects delete … |
Request — ProjectDeleteInput
| Field | Type | Required | Description |
|---|---|---|---|
project_id | string | yes |
Response — ProjectDeleteOutput.
projects.remove_member
Remove a member from a workspace (project admin/owner).
| Scope | projects:write |
| Side-effect | destructive |
| HTTP | POST /v1/op/projects.remove_member · POST /v1/projects/remove_member |
| Python / TypeScript | client.projects.remove_member(…) |
| CLI | geopera projects remove-member … |
Request — RemoveMemberInput
| Field | Type | Required | Description |
|---|---|---|---|
project_id | string | yes | |
user_id | string | yes |
Response — RemoveMemberOutput.
projects.update
Update a workspace’s metadata (project admin/owner).
| Scope | projects:write |
| Side-effect | compute |
| HTTP | POST /v1/op/projects.update · POST /v1/projects/update |
| Python / TypeScript | client.projects.update(…) |
| CLI | geopera projects update … |
Request — ProjectUpdateInput
| Field | Type | Required | Description |
|---|---|---|---|
name | string | — | |
description | string | — | |
is_archived | boolean | — | |
project_id | string | yes |
Response — ProjectResponse.
projects.update_member
Change a member’s role in a workspace (project admin/owner).
| Scope | projects:write |
| Side-effect | compute |
| HTTP | POST /v1/op/projects.update_member · POST /v1/projects/update_member |
| Python / TypeScript | client.projects.update_member(…) |
| CLI | geopera projects update-member … |
Request — UpdateMemberInput
| Field | Type | Required | Description |
|---|---|---|---|
project_id | string | yes | |
user_id | string | yes | |
role | string | yes | New role: admin, editor, or viewer |
Response — MemberOutput.