Reference
Package platform.v1.
| Service | RPC | Request | Response | REST |
|---|---|---|---|---|
CatalogService | ListRegions | ListRegionsRequest | ListRegionsResponse | GET /v1/catalog/regions |
CatalogService | ListInstanceTypes | ListInstanceTypesRequest | ListInstanceTypesResponse | GET /v1/catalog/instance-types |
CatalogService | ListImages | ListImagesRequest | ListImagesResponse | GET /v1/catalog/images |
CatalogService | ListOfferings | ListOfferingsRequest | ListOfferingsResponse | GET /v1/catalog/offerings |
CatalogAdminService | CreateInstanceType | CreateInstanceTypeRequest | AdminInstanceType | POST /v1/admin/instance-types |
CatalogAdminService | UpdateInstanceType | UpdateInstanceTypeRequest | AdminInstanceType | PATCH /v1/admin/instance-types/{id} |
CatalogAdminService | DeleteInstanceType | DeleteInstanceTypeRequest | DeleteInstanceTypeResponse | DELETE /v1/admin/instance-types/{id} |
CatalogAdminService | ListInstanceTypesAdmin | ListInstanceTypesAdminRequest | ListInstanceTypesAdminResponse | GET /v1/admin/instance-types |
CatalogAdminService | SetInstanceTypeProviders | SetInstanceTypeProvidersRequest | AdminInstanceType | PUT /v1/admin/instance-types/{id}/providers |
CatalogAdminService | SyncProviderInstanceTypes | SyncProviderInstanceTypesRequest | SyncProviderInstanceTypesResponse | POST /v1/admin/instance-types:sync |
CatalogAdminService | ListProviderInstanceTypes | ListProviderInstanceTypesRequest | ListProviderInstanceTypesResponse | GET /v1/admin/provider-instance-types |
CatalogAdminService | CreateProviderInstanceType | CreateProviderInstanceTypeRequest | ProviderInstanceType | POST /v1/admin/provider-instance-types |
CatalogAdminService | UpdateProviderInstanceType | UpdateProviderInstanceTypeRequest | ProviderInstanceType | PATCH /v1/admin/provider-instance-types/{id} |
CatalogAdminService | DeleteProviderInstanceType | DeleteProviderInstanceTypeRequest | DeleteProviderInstanceTypeResponse | DELETE /v1/admin/provider-instance-types/{id} |
CatalogAdminService | ApplyProviderInstanceTypeSync | ApplyProviderInstanceTypeSyncRequest | ApplyProviderInstanceTypeSyncResponse | POST /v1/admin/instance-types:sync-apply |
CatalogAdminService | ListRegionsAdmin | ListRegionsAdminRequest | ListRegionsAdminResponse | GET /v1/admin/regions |
CatalogAdminService | CreateRegion | CreateRegionRequest | AdminRegion | POST /v1/admin/regions |
CatalogAdminService | UpdateRegion | UpdateRegionRequest | AdminRegion | PATCH /v1/admin/regions/{id} |
CatalogAdminService | DeleteRegion | DeleteRegionRequest | DeleteRegionResponse | DELETE /v1/admin/regions/{id} |
CatalogAdminService | ListProviderRegions | ListProviderRegionsRequest | ListProviderRegionsResponse | GET /v1/admin/provider-regions |
CatalogAdminService | CreateProviderRegion | CreateProviderRegionRequest | ProviderRegion | POST /v1/admin/provider-regions |
CatalogAdminService | UpdateProviderRegion | UpdateProviderRegionRequest | ProviderRegion | PATCH /v1/admin/provider-regions/{id} |
CatalogAdminService | DeleteProviderRegion | DeleteProviderRegionRequest | DeleteProviderRegionResponse | DELETE /v1/admin/provider-regions/{id} |
CatalogAdminService | SyncProviderRegions | SyncProviderRegionsRequest | SyncProviderRegionsResponse | POST /v1/admin/regions:sync |
CatalogAdminService | ApplyProviderRegionSync | ApplyProviderRegionSyncRequest | ApplyProviderRegionSyncResponse | POST /v1/admin/regions:sync-apply |
CatalogAdminService | ListMachineImagesAdmin | ListMachineImagesAdminRequest | ListMachineImagesAdminResponse | GET /v1/admin/machine-images |
CatalogAdminService | CreateMachineImage | CreateMachineImageRequest | PlatformMachineImage | POST /v1/admin/machine-images |
CatalogAdminService | UpdateMachineImage | UpdateMachineImageRequest | PlatformMachineImage | PATCH /v1/admin/machine-images/{id} |
CatalogAdminService | DeleteMachineImage | DeleteMachineImageRequest | DeleteMachineImageResponse | DELETE /v1/admin/machine-images/{id} |
CatalogAdminService | ListProviderMachineImages | ListProviderMachineImagesRequest | ListProviderMachineImagesResponse | GET /v1/admin/provider-machine-images |
CatalogAdminService | CreateProviderMachineImage | CreateProviderMachineImageRequest | ProviderMachineImage | POST /v1/admin/provider-machine-images |
CatalogAdminService | UpdateProviderMachineImage | UpdateProviderMachineImageRequest | ProviderMachineImage | PATCH /v1/admin/provider-machine-images/{id} |
CatalogAdminService | DeleteProviderMachineImage | DeleteProviderMachineImageRequest | DeleteProviderMachineImageResponse | DELETE /v1/admin/provider-machine-images/{id} |
CatalogAdminService | SyncProviderMachineImages | SyncProviderMachineImagesRequest | SyncProviderMachineImagesResponse | POST /v1/admin/provider-machine-images:sync |
CatalogAdminService | ApplyProviderMachineImageSync | ApplyProviderMachineImageSyncRequest | ApplyProviderMachineImageSyncResponse | POST /v1/admin/provider-machine-images:sync-apply |
CatalogAdminService | ListManualActions | ListManualActionsRequest | ListManualActionsResponse | GET /v1/admin/manual-actions |
CatalogAdminService | GetManualAction | GetManualActionRequest | ManualAction | GET /v1/admin/manual-actions/{id} |
CatalogAdminService | ClaimManualAction | ClaimManualActionRequest | ManualAction | POST /v1/admin/manual-actions/{id}:claim |
CatalogAdminService | ResolveManualAction | ResolveManualActionRequest | ManualAction | POST /v1/admin/manual-actions/{id}:resolve |
CatalogAdminService | CancelManualAction | CancelManualActionRequest | ManualAction | POST /v1/admin/manual-actions/{id}:cancel |
CatalogAdminService | ListProviderInventory | ListProviderInventoryRequest | ListProviderInventoryResponse | GET /v1/admin/provider-inventory |
CatalogAdminService | RecordProviderPurchase | RecordProviderPurchaseRequest | ProviderInventoryItem | POST /v1/admin/provider-inventory |
CatalogAdminService | RetireInventoryItem | RetireInventoryItemRequest | ProviderInventoryItem | POST /v1/admin/provider-inventory/{id}:retire |
CatalogAdminService | ListProviderInventoryCandidates | ListProviderInventoryCandidatesRequest | ListProviderInventoryCandidatesResponse | POST /v1/admin/provider-inventory:candidates |
CatalogAdminService | ImportProviderInventory | ImportProviderInventoryRequest | ImportProviderInventoryResponse | POST /v1/admin/provider-inventory:import |
CatalogAdminService | ListProviderPoolPolicies | ListProviderPoolPoliciesRequest | ListProviderPoolPoliciesResponse | GET /v1/admin/provider-pool-policies |
CatalogAdminService | SetProviderPoolPolicy | SetProviderPoolPolicyRequest | ProviderPoolPolicy | PUT /v1/admin/provider-pool-policies |
CatalogAdminService | ListProviderEntitlements | ListProviderEntitlementsRequest | ListProviderEntitlementsResponse | GET /v1/admin/provider-entitlements |
CatalogAdminService | SetProviderEntitlement | SetProviderEntitlementRequest | ProviderEntitlement | PUT /v1/admin/provider-entitlements |
CatalogAdminService | ListFamilies | ListFamiliesRequest | ListFamiliesResponse | GET /v1/admin/families |
CatalogAdminService | CreateFamily | CreateFamilyRequest | PlatformFamily | POST /v1/admin/families |
CatalogAdminService | UpdateFamily | UpdateFamilyRequest | PlatformFamily | PATCH /v1/admin/families/{id} |
CatalogAdminService | DeleteFamily | DeleteFamilyRequest | DeleteFamilyResponse | DELETE /v1/admin/families/{id} |
ComputeService | CreateInstance | CreateInstanceRequest | Operation | POST /v1/instances |
ComputeService | GetInstance | GetInstanceRequest | Instance | GET /v1/instances/{id} |
ComputeService | ListInstances | ListInstancesRequest | ListInstancesResponse | GET /v1/instances |
ComputeService | StartInstance | InstanceActionRequest | Operation | POST /v1/instances/{id}:start |
ComputeService | StopInstance | InstanceActionRequest | Operation | POST /v1/instances/{id}:stop |
ComputeService | RebootInstance | InstanceActionRequest | Operation | POST /v1/instances/{id}:reboot |
ComputeService | DeleteInstance | InstanceActionRequest | Operation | DELETE /v1/instances/{id} |
ComputeService | ResizeInstance | ResizeInstanceRequest | Operation | POST /v1/instances/{id}:resize |
ComputeService | SuspendInstance | InstanceActionRequest | Operation | POST /v1/instances/{id}:suspend |
ComputeService | ResumeInstance | InstanceActionRequest | Operation | POST /v1/instances/{id}:resume |
ComputeService | UpdateInstance | UpdateInstanceRequest | Operation | PATCH /v1/instances/{id} |
ComputeService | GetSystemLog | GetSystemLogRequest | GetSystemLogResponse | GET /v1/instances/{id}/log |
IamService | ListOrganizations | ListOrganizationsRequest | ListOrganizationsResponse | GET /v1/organizations |
IamService | ListApps | ListAppsRequest | ListAppsResponse | GET /v1/apps |
IamService | GetApp | GetAppRequest | App | GET /v1/apps/{id} |
IamService | CreateApp | CreateAppRequest | CreateAppResponse | POST /v1/apps |
IamService | UpdateApp | UpdateAppRequest | App | PATCH /v1/apps/{id} |
IamService | DeleteApp | DeleteAppRequest | DeleteAppResponse | DELETE /v1/apps/{id} |
IamService | MoveResources | MoveResourcesRequest | MoveResourcesResponse | POST /v1/apps/{app_id}:moveResources |
IamService | ListRoles | ListRolesRequest | ListRolesResponse | GET /v1/roles |
IamService | ListMembers | ListMembersRequest | ListMembersResponse | GET /v1/members |
IamService | CheckPermission | CheckPermissionRequest | CheckPermissionResponse | POST /v1/iam:checkPermission |
ImageService | CreateImageFromInstance | CreateImageFromInstanceRequest | Operation | POST /v1/images:from-instance |
ImageService | ListImages | ImagesListRequest | ImagesListResponse | GET /v1/images |
ImageService | GetImage | GetImageRequest | Image | GET /v1/images/{id} |
ImageService | DeleteImage | DeleteImageRequest | Operation | DELETE /v1/images/{id} |
ImageService | UpdateImage | UpdateImageRequest | Image | PATCH /v1/images/{id} |
MigrationService | MigrateInstance | MigrateInstanceRequest | Operation | POST /v1/admin/migrations/instance/{id} |
MigrationService | MigrateVolume | MigrateVolumeRequest | Operation | POST /v1/admin/migrations/volume/{id} |
MigrationService | MigrateImage | MigrateImageRequest | Operation | POST /v1/admin/migrations/image/{id} |
MigrationService | MigrateSnapshot | MigrateSnapshotRequest | Operation | POST /v1/admin/migrations/snapshot/{id} |
MigrationService | DrainProvider | DrainProviderRequest | Operation | POST /v1/admin/migrations:drain |
MigrationService | GetMigration | GetMigrationRequest | Migration | GET /v1/admin/migrations/{id} |
MigrationService | ListMigrations | ListMigrationsRequest | ListMigrationsResponse | GET /v1/admin/migrations |
NetworkService | CreateSshKey | CreateSshKeyRequest | CreateSshKeyResponse | POST /v1/ssh-keys |
NetworkService | ImportSshKey | ImportSshKeyRequest | SshKey | POST /v1/ssh-keys:import |
NetworkService | ListSshKeys | ListSshKeysRequest | ListSshKeysResponse | GET /v1/ssh-keys |
NetworkService | GetSshKey | GetSshKeyRequest | SshKey | GET /v1/ssh-keys/{id} |
NetworkService | DeleteSshKey | DeleteSshKeyRequest | Operation | DELETE /v1/ssh-keys/{id} |
NetworkService | CreateFirewall | CreateFirewallRequest | Operation | POST /v1/firewalls |
NetworkService | ListFirewalls | ListFirewallsRequest | ListFirewallsResponse | GET /v1/firewalls |
NetworkService | GetFirewall | GetFirewallRequest | Firewall | GET /v1/firewalls/{id} |
NetworkService | UpdateFirewallRules | UpdateFirewallRulesRequest | Operation | POST /v1/firewalls/{id}:rules |
NetworkService | DeleteFirewall | DeleteFirewallRequest | Operation | DELETE /v1/firewalls/{id} |
NetworkService | AttachFirewall | AttachFirewallRequest | Operation | POST /v1/firewalls/{id}:attach |
NetworkService | DetachFirewall | DetachFirewallRequest | Operation | POST /v1/firewalls/{id}:detach |
NetworkService | AllocateFloatingIp | AllocateFloatingIpRequest | Operation | POST /v1/floating-ips |
NetworkService | ListFloatingIps | ListFloatingIpsRequest | ListFloatingIpsResponse | GET /v1/floating-ips |
NetworkService | GetFloatingIp | GetFloatingIpRequest | FloatingIp | GET /v1/floating-ips/{id} |
NetworkService | AssociateFloatingIp | AssociateFloatingIpRequest | Operation | POST /v1/floating-ips/{id}:associate |
NetworkService | DisassociateFloatingIp | DisassociateFloatingIpRequest | Operation | POST /v1/floating-ips/{id}:disassociate |
NetworkService | ReleaseFloatingIp | ReleaseFloatingIpRequest | Operation | DELETE /v1/floating-ips/{id} |
NetworkService | UpdateReverseDns | UpdateReverseDnsRequest | Operation | POST /v1/floating-ips/{id}:reverse-dns |
OperationService | GetOperation | GetOperationRequest | Operation | GET /v1/operations/{id} |
OperationService | ListOperations | ListOperationsRequest | ListOperationsResponse | GET /v1/operations |
PaasService | ListPaasKinds | ListPaasKindsRequest | ListPaasKindsResponse | GET /v1/paas:kinds |
PaasService | ListPaasApps | ListPaasAppsRequest | ListPaasAppsResponse | GET /v1/paas |
PaasService | GetPaasApp | GetPaasAppRequest | PaasApp | GET /v1/paas/{id} |
PaasService | CreatePaasApp | CreatePaasAppRequest | CreatePaasAppResponse | POST /v1/paas |
PaasService | DeletePaasApp | DeletePaasAppRequest | Operation | DELETE /v1/paas/{id} |
StorageService | CreateVolume | CreateVolumeRequest | Operation | POST /v1/volumes |
StorageService | GetVolume | GetVolumeRequest | Volume | GET /v1/volumes/{id} |
StorageService | ListVolumes | ListVolumesRequest | ListVolumesResponse | GET /v1/volumes |
StorageService | AttachVolume | AttachVolumeRequest | Operation | POST /v1/volumes/{id}:attach |
StorageService | DetachVolume | DetachVolumeRequest | Operation | POST /v1/volumes/{id}:detach |
StorageService | ModifyVolume | ModifyVolumeRequest | Operation | POST /v1/volumes/{id}:modify |
StorageService | DeleteVolume | DeleteVolumeRequest | Operation | DELETE /v1/volumes/{id} |
StorageService | CreateSnapshot | CreateSnapshotRequest | Operation | POST /v1/snapshots |
StorageService | ListSnapshots | ListSnapshotsRequest | ListSnapshotsResponse | GET /v1/snapshots |
StorageService | GetSnapshot | GetSnapshotRequest | Snapshot | GET /v1/snapshots/{id} |
StorageService | DeleteSnapshot | DeleteSnapshotRequest | Operation | DELETE /v1/snapshots/{id} |
StorageService | RestoreVolumeFromSnapshot | RestoreVolumeFromSnapshotRequest | Operation | POST /v1/snapshots/{id}:restore |
StorageService | CreateVolumeFromSnapshot | CreateVolumeFromSnapshotRequest | Operation | POST /v1/snapshots/{id}:createVolume |
StorageService | CreateBackupPolicy | CreateBackupPolicyRequest | BackupPolicy | POST /v1/backup-policies |
StorageService | ListBackupPolicies | ListBackupPoliciesRequest | ListBackupPoliciesResponse | GET /v1/backup-policies |
StorageService | GetBackupPolicy | GetBackupPolicyRequest | BackupPolicy | GET /v1/backup-policies/{id} |
StorageService | UpdateBackupPolicy | UpdateBackupPolicyRequest | BackupPolicy | PATCH /v1/backup-policies/{id} |
StorageService | DeleteBackupPolicy | DeleteBackupPolicyRequest | BackupPolicy | DELETE /v1/backup-policies/{id} |
StorageService | RunBackupPolicy | RunBackupPolicyRequest | Operation | POST /v1/backup-policies/{id}:run |
Messages
Section titled “Messages”AdminInstanceType
Section titled “AdminInstanceType”AdminInstanceType is the platform-owned flavor plus its provider mappings.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
vcpus | int32 | 3 | |
memory_mb | int32 | 4 | |
disk_gb | int32 | 5 | |
family | string | 6 | |
enabled | bool | 7 | |
description | string | 8 | |
source | string | 9 | manual | synced |
providers | InstanceTypeProviderMapping | 10 | |
state | string | 11 | draft | active | deprecated | disabled |
hourly_price | double | 12 | |
monthly_price | double | 13 | |
currency | string | 14 | |
region_ids | string | 15 | |
region_overrides | RegionOverride | 16 | |
family_id | string | 17 | stored id; family (6) is the display name on responses |
machine_image_ids | string | 18 | derived; read-only |
associations | InstanceTypeAssociation | 19 | |
versions | InstanceTypeVersion | 20 |
AdminRegion
Section titled “AdminRegion”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
country | string | 3 | |
state | string | 4 | draft | active | deprecated | disabled |
description | string | 5 | |
source | string | 6 | |
mapped_providers | string | 7 | “hetzner:nbg1” style labels for the platform table |
provider_region_ids | string | 8 | join rows for this platform region |
AllocateFloatingIpRequest
Section titled “AllocateFloatingIpRequest”| Field | Type | # | Notes |
|---|---|---|---|
name | string | 1 | |
region | string | 2 | |
type | string | 3 | ipv4 | ipv6 (default ipv4) |
App groups a tenant’s resources. Apps nest; a view of an app includes the apps below it, and a role held on an app applies to them as well.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | app_… (proj_… for apps created as projects) |
org | string | 2 | |
name | string | 3 | |
parent_id | string | 4 | empty for a top-level app |
description | string | 5 | |
template_id | string | 6 | the template the app was created from, if any |
ApplyProviderInstanceTypeSyncRequest
Section titled “ApplyProviderInstanceTypeSyncRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
row_ids | string | 2 |
ApplyProviderInstanceTypeSyncResponse
Section titled “ApplyProviderInstanceTypeSyncResponse”| Field | Type | # | Notes |
|---|---|---|---|
applied | SyncDiffRow | 1 |
ApplyProviderMachineImageSyncRequest
Section titled “ApplyProviderMachineImageSyncRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
row_ids | string | 2 |
ApplyProviderMachineImageSyncResponse
Section titled “ApplyProviderMachineImageSyncResponse”| Field | Type | # | Notes |
|---|---|---|---|
applied | SyncDiffRow | 1 |
ApplyProviderRegionSyncRequest
Section titled “ApplyProviderRegionSyncRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
row_ids | string | 2 |
ApplyProviderRegionSyncResponse
Section titled “ApplyProviderRegionSyncResponse”| Field | Type | # | Notes |
|---|---|---|---|
applied | SyncDiffRow | 1 |
AssociateFloatingIpRequest
Section titled “AssociateFloatingIpRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
instance_id | string | 2 |
AttachFirewallRequest
Section titled “AttachFirewallRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
instance_id | string | 2 |
AttachVolumeRequest
Section titled “AttachVolumeRequest”AttachVolumeRequest performs the “Switch Volume” operation.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
instance_id | string | 2 |
BackupPolicy
Section titled “BackupPolicy”BackupPolicy schedules retained snapshots of a volume (Phase 6). A backup is just a snapshot with origin=backup; the policy owns cadence + retention.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | bpol_… |
name | string | 2 | |
app | string | 3 | |
org | string | 4 | |
source_volume | string | 5 | volume id to back up |
provider | string | 6 | |
schedule | string | 7 | hourly | daily | weekly | “@every <dur>” |
retention_keep | int32 | 8 | keep N most recent backups (0 = unlimited) |
retention_days | int32 | 9 | expire backups older than N days (0 = no expiry) |
enabled | bool | 10 |
CancelManualActionRequest
Section titled “CancelManualActionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
notes | string | 2 |
CheckPermissionRequest
Section titled “CheckPermissionRequest”CheckPermission powers the “test this permission” simulator in the IAM UI.
| Field | Type | # | Notes |
|---|---|---|---|
principal | string | 1 | |
permission | string | 2 | |
scope | string | 3 |
CheckPermissionResponse
Section titled “CheckPermissionResponse”| Field | Type | # | Notes |
|---|---|---|---|
allowed | bool | 1 | |
reason | string | 2 |
ClaimManualActionRequest
Section titled “ClaimManualActionRequest”ClaimManualAction marks a task in_progress under one operator’s name. Netcup tasks are purchases, so two people picking up the same row means the account is billed twice for stock it only needed once.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
notes | string | 2 |
CreateAppRequest
Section titled “CreateAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
org | string | 1 | the tenant; defaults to the caller’s |
name | string | 2 | |
parent_id | string | 3 | empty for a top-level app |
description | string | 4 | |
attach_ids | string | 5 | existing resources to move into the new app |
template_id | string | 6 | launch the template’s items into the app |
CreateAppResponse
Section titled “CreateAppResponse”| Field | Type | # | Notes |
|---|---|---|---|
app | App | 1 | |
operations | Operation | 2 | One operation per template item. A failed item leaves the others running. |
CreateBackupPolicyRequest
Section titled “CreateBackupPolicyRequest”| Field | Type | # | Notes |
|---|---|---|---|
name | string | 1 | |
source_volume_id | string | 2 | |
schedule | string | 3 | |
retention_keep | int32 | 4 | |
retention_days | int32 | 5 | |
enabled | bool | 6 |
CreateFamilyRequest
Section titled “CreateFamilyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
state | string | 4 | ignored; server stores draft |
CreateFirewallRequest
Section titled “CreateFirewallRequest”| Field | Type | # | Notes |
|---|---|---|---|
name | string | 1 | |
description | string | 2 | |
rules | FirewallRule | 3 |
CreateImageFromInstanceRequest
Section titled “CreateImageFromInstanceRequest”CreateImageFromInstance captures a source instance into a launchable MACHINE image (AWS “create image”; never “AMI”).
| Field | Type | # | Notes |
|---|---|---|---|
instance_id | string | 1 | |
name | string | 2 | |
description | string | 3 |
CreateInstanceRequest
Section titled “CreateInstanceRequest”| Field | Type | # | Notes |
|---|---|---|---|
instance | Instance | 1 |
CreateInstanceTypeRequest
Section titled “CreateInstanceTypeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
vcpus | int32 | 3 | |
memory_mb | int32 | 4 | |
disk_gb | int32 | 5 | |
family | string | 6 | |
description | string | 7 | |
enabled | bool | 8 | |
hourly_price | double | 9 | |
monthly_price | double | 10 | |
currency | string | 11 | |
state | string | 12 | |
provider_instance_type_ids | string | 13 | |
region_ids | string | 14 | |
region_overrides | RegionOverride | 15 | |
family_id | string | 16 |
CreateMachineImageRequest
Section titled “CreateMachineImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
os | string | 4 | |
version | string | 5 | |
state | string | 6 | ignored; server stores draft |
provider_machine_image_ids | string | 7 |
CreatePaasAppRequest
Section titled “CreatePaasAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
name | string | 1 | |
kind | string | 2 | |
region | string | 3 | |
instance_type | string | 4 | |
image | string | 5 | empty picks an image that can run cloud-init |
ssh_keys | string | 6 |
CreatePaasAppResponse
Section titled “CreatePaasAppResponse”| Field | Type | # | Notes |
|---|---|---|---|
operation | Operation | 1 | |
service | PaasApp | 2 |
CreateProviderInstanceTypeRequest
Section titled “CreateProviderInstanceTypeRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
native_id | string | 2 | |
name | string | 3 | |
vcpus | int32 | 4 | |
memory_mb | int32 | 5 | |
disk_gb | int32 | 6 | |
hourly_price | double | 7 | |
monthly_price | double | 8 | |
currency | string | 9 | |
state | string | 10 | |
available | bool | 11 | |
platform_instance_type_id | string | 12 | |
region_ids | string | 13 | |
provider_name | string | 14 | |
provider_vcpus | int32 | 15 | |
provider_memory_mb | int32 | 16 | |
provider_disk_gb | int32 | 17 | |
provider_hourly_price | double | 18 | |
provider_monthly_price | double | 19 | |
provider_currency | string | 20 | |
provider_machine_image_ids | string | 21 |
CreateProviderMachineImageRequest
Section titled “CreateProviderMachineImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
native_id | string | 2 | |
name | string | 3 | |
provider_name | string | 4 | |
os | string | 5 | |
provider_os | string | 6 | |
version | string | 7 | |
provider_version | string | 8 | |
state | string | 9 | ignored; server stores draft |
platform_machine_image_id | string | 10 |
CreateProviderRegionRequest
Section titled “CreateProviderRegionRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
native_id | string | 2 | |
name | string | 3 | |
country | string | 4 | |
state | string | 5 | |
available | bool | 6 | unused; ignored on write. Do not renumber or delete. |
platform_region_id | string | 7 | kept for older clients |
platform_region_ids | string | 8 | |
provider_name | string | 9 |
CreateRegionRequest
Section titled “CreateRegionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
country | string | 3 | |
state | string | 4 | |
description | string | 5 | |
provider_region_ids | string | 6 |
CreateSnapshotRequest
Section titled “CreateSnapshotRequest”| Field | Type | # | Notes |
|---|---|---|---|
source_volume_id | string | 1 | |
source_instance_id | string | 2 | |
description | string | 3 | |
name | string | 4 |
CreateSshKeyRequest
Section titled “CreateSshKeyRequest”CreateSshKeyRequest generates a new key pair server-side and returns the private key exactly once in CreateSshKeyResponse.
| Field | Type | # | Notes |
|---|---|---|---|
name | string | 1 | |
type | string | 2 | rsa | ed25519 (default ed25519) |
CreateSshKeyResponse
Section titled “CreateSshKeyResponse”| Field | Type | # | Notes |
|---|---|---|---|
key | SshKey | 1 | |
private_key | string | 2 | private_key is returned only for platform-generated keys, only once. |
CreateVolumeFromSnapshotRequest
Section titled “CreateVolumeFromSnapshotRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | snapshot id |
name | string | 2 | new volume name |
CreateVolumeRequest
Section titled “CreateVolumeRequest”| Field | Type | # | Notes |
|---|---|---|---|
volume | Volume | 1 |
DeleteAppRequest
Section titled “DeleteAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteAppResponse
Section titled “DeleteAppResponse”No fields.
DeleteBackupPolicyRequest
Section titled “DeleteBackupPolicyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteFamilyRequest
Section titled “DeleteFamilyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteFamilyResponse
Section titled “DeleteFamilyResponse”No fields.
DeleteFirewallRequest
Section titled “DeleteFirewallRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteImageRequest
Section titled “DeleteImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteInstanceTypeRequest
Section titled “DeleteInstanceTypeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteInstanceTypeResponse
Section titled “DeleteInstanceTypeResponse”No fields.
DeleteMachineImageRequest
Section titled “DeleteMachineImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteMachineImageResponse
Section titled “DeleteMachineImageResponse”No fields.
DeletePaasAppRequest
Section titled “DeletePaasAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteProviderInstanceTypeRequest
Section titled “DeleteProviderInstanceTypeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteProviderInstanceTypeResponse
Section titled “DeleteProviderInstanceTypeResponse”No fields.
DeleteProviderMachineImageRequest
Section titled “DeleteProviderMachineImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteProviderMachineImageResponse
Section titled “DeleteProviderMachineImageResponse”No fields.
DeleteProviderRegionRequest
Section titled “DeleteProviderRegionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteProviderRegionResponse
Section titled “DeleteProviderRegionResponse”No fields.
DeleteRegionRequest
Section titled “DeleteRegionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteRegionResponse
Section titled “DeleteRegionResponse”No fields.
DeleteSnapshotRequest
Section titled “DeleteSnapshotRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteSshKeyRequest
Section titled “DeleteSshKeyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DeleteVolumeRequest
Section titled “DeleteVolumeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DetachFirewallRequest
Section titled “DetachFirewallRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
instance_id | string | 2 |
DetachVolumeRequest
Section titled “DetachVolumeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
force | bool | 2 |
DisassociateFloatingIpRequest
Section titled “DisassociateFloatingIpRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
DrainProviderRequest
Section titled “DrainProviderRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
dest_provider | string | 2 | optional; empty = platform picks a destination |
decommission | bool | 3 | delete source resources after successful moves |
Firewall
Section titled “Firewall”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | fw_… |
name | string | 2 | |
description | string | 3 | |
app | string | 4 | |
org | string | 5 | |
region | string | 6 | |
is_default | bool | 7 | |
rules | FirewallRule | 8 |
FloatingIp
Section titled “FloatingIp”---- Floating / Elastic IPs ----
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | fip_… |
name | string | 2 | |
app | string | 3 | |
org | string | 4 | |
region | string | 5 | |
address | string | 6 | |
type | string | 7 | ipv4 | ipv6 |
attached_to | string | 8 | instance id, empty if unassociated |
reverse_dns | string | 9 |
GetAppRequest
Section titled “GetAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetBackupPolicyRequest
Section titled “GetBackupPolicyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetFirewallRequest
Section titled “GetFirewallRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetFloatingIpRequest
Section titled “GetFloatingIpRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetImageRequest
Section titled “GetImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetInstanceRequest
Section titled “GetInstanceRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetManualActionRequest
Section titled “GetManualActionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetMigrationRequest
Section titled “GetMigrationRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetOperationRequest
Section titled “GetOperationRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetPaasAppRequest
Section titled “GetPaasAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetSnapshotRequest
Section titled “GetSnapshotRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetSshKeyRequest
Section titled “GetSshKeyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetSystemLogRequest
Section titled “GetSystemLogRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
GetSystemLogResponse
Section titled “GetSystemLogResponse”| Field | Type | # | Notes |
|---|---|---|---|
content | string | 1 |
GetVolumeRequest
Section titled “GetVolumeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | ubuntu-24.04 (SYSTEM) or img_… (MACHINE) |
name | string | 2 | |
os | string | 3 | |
version | string | 4 | |
type | ImageType | 5 | Phase 2 unified-image fields (populated for MACHINE images; SYSTEM images leave provider-scoped fields empty). |
description | string | 6 | |
app | string | 7 | |
org | string | 8 | |
region | string | 9 | |
provider | string | 10 | |
status | string | 11 | pending | available | failed |
visibility | string | 12 | private | public |
platform | string | 13 | linux | windows |
architecture | string | 14 | x86_64 | arm64 |
root_device_type | string | 15 | |
source_instance | string | 16 | |
created_at | string | 18 | |
updated_at | string | 19 | |
machine_image_id | string | 20 | platform machine image this custom image was captured from |
ImagesListRequest
Section titled “ImagesListRequest”ImagesListRequest filters by type; IMAGE_TYPE_UNSPECIFIED returns all.
| Field | Type | # | Notes |
|---|---|---|---|
type | ImageType | 1 |
ImagesListResponse
Section titled “ImagesListResponse”| Field | Type | # | Notes |
|---|---|---|---|
images | Image | 1 |
ImportProviderInventoryRequest
Section titled “ImportProviderInventoryRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
native_ids | string | 2 |
ImportProviderInventoryResponse
Section titled “ImportProviderInventoryResponse”| Field | Type | # | Notes |
|---|---|---|---|
items | ProviderInventoryItem | 1 |
ImportSshKeyRequest
Section titled “ImportSshKeyRequest”ImportSshKeyRequest registers an existing public key (no private key stored).
| Field | Type | # | Notes |
|---|---|---|---|
name | string | 1 | |
public_key | string | 2 |
Instance
Section titled “Instance”Instance is a provider-agnostic compute instance. Note: the backing provider (docker/hetzner/netcup) is deliberately NOT exposed in this message.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | inst_… |
name | string | 2 | |
app | string | 3 | |
org | string | 4 | |
region | string | 5 | |
instance_type | string | 6 | normalized flavor, e.g. “c1.small” |
image | string | 7 | normalized image, e.g. “ubuntu-24.04” |
state | ResourceState | 8 | |
private_ip | string | 10 | |
public_ip | string | 11 | |
user_data | string | 14 | Phase 1 additions. |
deletion_protection | bool | 15 | block accidental delete/terminate |
architecture | string | 16 | x86_64 | arm64 (best-effort) |
platform | string | 17 | ubuntu | debian | … |
key_pair | string | 18 | |
root_device | string | 19 | |
tenancy | string | 20 | default | dedicated (mocked) |
public_dns | string | 21 | |
private_dns | string | 22 | |
vpc | string | 23 | |
subnet | string | 24 | |
availability_zone | string | 25 | |
ssh_keys | string | 26 | Phase 4: SSH key ids to inject and firewall/security-group ids to attach at launch. On read, security_groups reflects the attached firewalls. |
security_groups | string | 27 |
InstanceActionRequest
Section titled “InstanceActionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
ListAppsRequest
Section titled “ListAppsRequest”| Field | Type | # | Notes |
|---|---|---|---|
org | string | 1 |
ListAppsResponse
Section titled “ListAppsResponse”| Field | Type | # | Notes |
|---|---|---|---|
apps | App | 1 |
ListBackupPoliciesRequest
Section titled “ListBackupPoliciesRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListBackupPoliciesResponse
Section titled “ListBackupPoliciesResponse”| Field | Type | # | Notes |
|---|---|---|---|
policies | BackupPolicy | 1 | |
meta | ListMeta | 2 |
ListFamiliesRequest
Section titled “ListFamiliesRequest”| Field | Type | # | Notes |
|---|---|---|---|
state | string | 1 |
ListFamiliesResponse
Section titled “ListFamiliesResponse”| Field | Type | # | Notes |
|---|---|---|---|
families | PlatformFamily | 1 |
ListFirewallsRequest
Section titled “ListFirewallsRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListFirewallsResponse
Section titled “ListFirewallsResponse”| Field | Type | # | Notes |
|---|---|---|---|
firewalls | Firewall | 1 | |
meta | ListMeta | 2 |
ListFloatingIpsRequest
Section titled “ListFloatingIpsRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListFloatingIpsResponse
Section titled “ListFloatingIpsResponse”| Field | Type | # | Notes |
|---|---|---|---|
ips | FloatingIp | 1 | |
meta | ListMeta | 2 |
ListImagesRequest
Section titled “ListImagesRequest”No fields.
ListImagesResponse
Section titled “ListImagesResponse”| Field | Type | # | Notes |
|---|---|---|---|
images | Image | 1 |
ListInstanceTypesAdminRequest
Section titled “ListInstanceTypesAdminRequest”No fields.
ListInstanceTypesAdminResponse
Section titled “ListInstanceTypesAdminResponse”| Field | Type | # | Notes |
|---|---|---|---|
instance_types | AdminInstanceType | 1 |
ListInstanceTypesRequest
Section titled “ListInstanceTypesRequest”| Field | Type | # | Notes |
|---|---|---|---|
region_id | string | 1 | optional query; empty = p5 global active list |
ListInstanceTypesResponse
Section titled “ListInstanceTypesResponse”| Field | Type | # | Notes |
|---|---|---|---|
instance_types | InstanceType | 1 |
ListInstancesRequest
Section titled “ListInstancesRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListInstancesResponse
Section titled “ListInstancesResponse”| Field | Type | # | Notes |
|---|---|---|---|
instances | Instance | 1 | |
meta | ListMeta | 2 |
ListMachineImagesAdminRequest
Section titled “ListMachineImagesAdminRequest”| Field | Type | # | Notes |
|---|---|---|---|
state | string | 1 |
ListMachineImagesAdminResponse
Section titled “ListMachineImagesAdminResponse”| Field | Type | # | Notes |
|---|---|---|---|
machine_images | PlatformMachineImage | 1 |
ListManualActionsRequest
Section titled “ListManualActionsRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
status | string | 2 |
ListManualActionsResponse
Section titled “ListManualActionsResponse”| Field | Type | # | Notes |
|---|---|---|---|
actions | ManualAction | 1 |
ListMembersRequest
Section titled “ListMembersRequest”| Field | Type | # | Notes |
|---|---|---|---|
scope | string | 1 |
ListMembersResponse
Section titled “ListMembersResponse”| Field | Type | # | Notes |
|---|---|---|---|
members | Member | 1 |
ListMigrationsRequest
Section titled “ListMigrationsRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | optional filter (source or dest) |
state | string | 2 | optional filter |
ListMigrationsResponse
Section titled “ListMigrationsResponse”| Field | Type | # | Notes |
|---|---|---|---|
migrations | Migration | 1 |
ListOfferingsRequest
Section titled “ListOfferingsRequest”No fields.
ListOfferingsResponse
Section titled “ListOfferingsResponse”| Field | Type | # | Notes |
|---|---|---|---|
offerings | Offering | 1 |
ListOperationsRequest
Section titled “ListOperationsRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListOperationsResponse
Section titled “ListOperationsResponse”| Field | Type | # | Notes |
|---|---|---|---|
operations | Operation | 1 | |
meta | ListMeta | 2 |
ListOrganizationsRequest
Section titled “ListOrganizationsRequest”No fields.
ListOrganizationsResponse
Section titled “ListOrganizationsResponse”| Field | Type | # | Notes |
|---|---|---|---|
organizations | Organization | 1 |
ListPaasAppsRequest
Section titled “ListPaasAppsRequest”No fields.
ListPaasAppsResponse
Section titled “ListPaasAppsResponse”| Field | Type | # | Notes |
|---|---|---|---|
services | PaasApp | 1 |
ListPaasKindsRequest
Section titled “ListPaasKindsRequest”No fields.
ListPaasKindsResponse
Section titled “ListPaasKindsResponse”| Field | Type | # | Notes |
|---|---|---|---|
kinds | PaasKindInfo | 1 |
ListProviderEntitlementsRequest
Section titled “ListProviderEntitlementsRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 |
ListProviderEntitlementsResponse
Section titled “ListProviderEntitlementsResponse”| Field | Type | # | Notes |
|---|---|---|---|
entitlements | ProviderEntitlement | 1 |
ListProviderInstanceTypesRequest
Section titled “ListProviderInstanceTypesRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
state | string | 2 | optional filter; empty = all |
ListProviderInstanceTypesResponse
Section titled “ListProviderInstanceTypesResponse”| Field | Type | # | Notes |
|---|---|---|---|
provider_instance_types | ProviderInstanceType | 1 |
ListProviderInventoryCandidatesRequest
Section titled “ListProviderInventoryCandidatesRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 |
ListProviderInventoryCandidatesResponse
Section titled “ListProviderInventoryCandidatesResponse”| Field | Type | # | Notes |
|---|---|---|---|
candidates | ProviderInventoryCandidate | 1 |
ListProviderInventoryRequest
Section titled “ListProviderInventoryRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
kind | string | 2 | |
state | string | 3 |
ListProviderInventoryResponse
Section titled “ListProviderInventoryResponse”| Field | Type | # | Notes |
|---|---|---|---|
items | ProviderInventoryItem | 1 |
ListProviderMachineImagesRequest
Section titled “ListProviderMachineImagesRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
state | string | 2 |
ListProviderMachineImagesResponse
Section titled “ListProviderMachineImagesResponse”| Field | Type | # | Notes |
|---|---|---|---|
provider_machine_images | ProviderMachineImage | 1 |
ListProviderPoolPoliciesRequest
Section titled “ListProviderPoolPoliciesRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 |
ListProviderPoolPoliciesResponse
Section titled “ListProviderPoolPoliciesResponse”| Field | Type | # | Notes |
|---|---|---|---|
policies | ProviderPoolPolicy | 1 |
ListProviderRegionsRequest
Section titled “ListProviderRegionsRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
state | string | 2 | optional; empty = all |
ListProviderRegionsResponse
Section titled “ListProviderRegionsResponse”| Field | Type | # | Notes |
|---|---|---|---|
provider_regions | ProviderRegion | 1 |
ListRegionsAdminRequest
Section titled “ListRegionsAdminRequest”| Field | Type | # | Notes |
|---|---|---|---|
state | string | 1 | optional; empty = all |
ListRegionsAdminResponse
Section titled “ListRegionsAdminResponse”| Field | Type | # | Notes |
|---|---|---|---|
regions | AdminRegion | 1 |
ListRegionsRequest
Section titled “ListRegionsRequest”No fields.
ListRegionsResponse
Section titled “ListRegionsResponse”| Field | Type | # | Notes |
|---|---|---|---|
regions | Region | 1 |
ListRolesRequest
Section titled “ListRolesRequest”No fields.
ListRolesResponse
Section titled “ListRolesResponse”| Field | Type | # | Notes |
|---|---|---|---|
roles | Role | 1 |
ListSnapshotsRequest
Section titled “ListSnapshotsRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListSnapshotsResponse
Section titled “ListSnapshotsResponse”| Field | Type | # | Notes |
|---|---|---|---|
snapshots | Snapshot | 1 | |
meta | ListMeta | 2 |
ListSshKeysRequest
Section titled “ListSshKeysRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListSshKeysResponse
Section titled “ListSshKeysResponse”| Field | Type | # | Notes |
|---|---|---|---|
keys | SshKey | 1 | |
meta | ListMeta | 2 |
ListVolumesRequest
Section titled “ListVolumesRequest”| Field | Type | # | Notes |
|---|---|---|---|
page | PageRequest | 1 |
ListVolumesResponse
Section titled “ListVolumesResponse”| Field | Type | # | Notes |
|---|---|---|---|
volumes | Volume | 1 | |
meta | ListMeta | 2 |
ManualAction
Section titled “ManualAction”--- Manual actions (admin) ---
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
resource_type | string | 3 | |
resource_id | string | 4 | |
action | string | 5 | |
reason | string | 6 | |
instructions | string | 7 | |
status | string | 8 | open | in_progress | done | cancelled |
app | string | 9 | |
resolved_by | string | 10 | |
notes | string | 11 | |
operation_id | string | 13 | |
claimed_by | string | 16 | claimed_by names whoever picked the task up, which is not the same as who finished it: the point of showing it is that a colleague already at the till does not get a second person buying the same server. |
MigrateImageRequest
Section titled “MigrateImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
dest_provider | string | 2 |
MigrateInstanceRequest
Section titled “MigrateInstanceRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | source instance platform id |
dest_provider | string | 2 |
MigrateSnapshotRequest
Section titled “MigrateSnapshotRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
dest_provider | string | 2 |
MigrateVolumeRequest
Section titled “MigrateVolumeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
dest_provider | string | 2 |
Migration
Section titled “Migration”--- Cross-provider migration (admin/internal, Phase 5) --- This service is operator-only (admin.migration.*) and is NOT wired into the end-user web app. Users have no concept of providers, so which provider a resource lives on — and when it moves — are platform decisions. Migration is one recorded cross-provider move.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
kind | string | 2 | instance | volume | image | snapshot |
source_provider | string | 3 | |
dest_provider | string | 4 | |
resource_id | string | 5 | source platform id |
dest_resource_id | string | 6 | created destination platform id |
state | string | 7 | pending | running | done | failed | pending_manual_action |
method | string | 8 | native | broker | ssh | manual |
format | string | 9 | raw | qcow2 | fs-tar | oci |
bytes | int64 | 10 | |
checksum | string | 11 | |
error | string | 12 | |
app | string | 13 |
ModifyVolumeRequest
Section titled “ModifyVolumeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
size_gb | int64 | 2 | |
type | string | 3 | |
iops | int32 | 4 | |
throughput | int32 | 5 |
MoveResourcesRequest
Section titled “MoveResourcesRequest”| Field | Type | # | Notes |
|---|---|---|---|
app_id | string | 1 | the destination |
resource_ids | string | 2 |
MoveResourcesResponse
Section titled “MoveResourcesResponse”| Field | Type | # | Notes |
|---|---|---|---|
moved | string | 1 |
Operation
Section titled “Operation”Operation is returned by every mutating RPC. Clients poll GetOperation or subscribe to the SSE stream to observe progress.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | opaque, type-prefixed: op_… |
action | string | 2 | permission string, e.g. compute.instance.create |
resource_id | string | 3 | |
resource_type | string | 4 | e.g. compute.instance |
state | OperationState | 5 | |
message | string | 6 | |
progress | int32 | 7 | 0..100 |
app | string | 8 |
PaasApp
Section titled “PaasApp”PaasApp is one managed service. It runs on its own compute instance, which the platform launches internally. Kind is a registered id such as “kubernetes” or “postgres”.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
app | string | 3 | |
kind | string | 4 | |
region | string | 5 | |
instance_type | string | 6 | |
image | string | 7 | |
instance_id | string | 8 | |
state | ResourceState | 9 | |
public_ip | string | 10 | |
hostname | string | 11 | |
endpoint | string | 12 | |
secret | string | 14 | Secret is the generated credential (a Postgres password). List omits it; Get and Create return it. |
PlatformFamily
Section titled “PlatformFamily”CatalogAdminService is operator-only (admin.catalog.* / admin.manualaction.*).
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
state | string | 4 | draft | active | deprecated | disabled |
source | string | 5 |
PlatformMachineImage
Section titled “PlatformMachineImage”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
os | string | 4 | |
version | string | 5 | |
state | string | 6 | draft | active | deprecated | disabled |
source | string | 7 | |
provider_machine_image_ids | string | 8 |
ProviderEntitlement
Section titled “ProviderEntitlement”ProviderEntitlement counts a consumable bought in bulk, such as block storage gigabytes, which has a balance rather than a list of ids.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
kind | string | 3 | block_storage_gb |
region | string | 4 | |
purchased | int32 | 5 | |
allocated | int32 | 6 | |
notes | string | 7 |
ProviderInstanceType
Section titled “ProviderInstanceType”ProviderInstanceType is a provider-native flavor, optionally mapped to a platform AdminInstanceType.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
native_id | string | 3 | |
name | string | 4 | |
vcpus | int32 | 5 | |
memory_mb | int32 | 6 | |
disk_gb | int32 | 7 | |
hourly_price | double | 8 | |
monthly_price | double | 9 | |
currency | string | 10 | |
state | string | 11 | draft | active | deprecated | disabled |
available | bool | 12 | |
source | string | 13 | |
platform_instance_type_id | string | 14 | |
region_ids | string | 15 | |
provider_name | string | 16 | |
provider_vcpus | int32 | 17 | |
provider_memory_mb | int32 | 18 | |
provider_disk_gb | int32 | 19 | |
provider_hourly_price | double | 20 | |
provider_monthly_price | double | 21 | |
provider_currency | string | 22 | |
provider_machine_image_ids | string | 23 | |
associations | InstanceTypeAssociation | 24 | |
versions | InstanceTypeVersion | 25 |
ProviderInventoryItem
Section titled “ProviderInventoryItem”--- Provider inventory pools (admin) --- Stock the platform has already bought from a provider that sells capacity outside its API. A claim against it is what turns a user’s create into an ordinary call instead of a wait on a purchase.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
kind | string | 3 | instance | failover_ip |
native_id | string | 4 | |
spec | string | 5 | provider-native shape a claim must match |
region | string | 6 | |
state | string | 7 | available | claimed | scrubbing | retired |
claimed_by | string | 8 | platform resource holding the item |
app | string | 9 | |
cost_cents | int32 | 11 | |
currency | string | 12 | |
notes | string | 13 |
ProviderMachineImage
Section titled “ProviderMachineImage”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
native_id | string | 3 | |
name | string | 4 | catalog name |
provider_name | string | 5 | |
os | string | 6 | catalog OS |
provider_os | string | 7 | |
version | string | 8 | catalog version |
provider_version | string | 9 | |
state | string | 10 | |
source | string | 11 | |
platform_machine_image_id | string | 12 |
ProviderPoolPolicy
Section titled “ProviderPoolPolicy”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
kind | string | 3 | |
spec | string | 4 | |
region | string | 5 | |
min_available | int32 | 6 | |
max_available | int32 | 7 | |
enabled | bool | 8 | |
available | int32 | 9 | available is the current free stock for this shape, so the console can show the watermark against reality without a second call. |
ProviderRegion
Section titled “ProviderRegion”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider | string | 2 | |
native_id | string | 3 | |
name | string | 4 | |
country | string | 5 | |
state | string | 6 | draft | active | deprecated | disabled |
available | bool | 7 | unused; offer gate is state. Do not renumber or delete. |
source | string | 8 | |
platform_region_id | string | 9 | kept for older clients; responses leave this empty |
platform_region_ids | string | 10 | |
provider_name | string | 11 | last value from the driver; name (4) stays the catalog name |
RecordProviderPurchaseRequest
Section titled “RecordProviderPurchaseRequest”RecordProviderPurchase is how a webshop purchase enters the platform. It is an upsert: discovery may already have found the item.
| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
kind | string | 2 | |
native_id | string | 3 | |
spec | string | 4 | |
region | string | 5 | |
cost_cents | int32 | 7 | |
currency | string | 8 | |
notes | string | 9 |
ReleaseFloatingIpRequest
Section titled “ReleaseFloatingIpRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
ResizeInstanceRequest
Section titled “ResizeInstanceRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
instance_type | string | 2 |
ResolveManualActionRequest
Section titled “ResolveManualActionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
provider_id | string | 2 | adopt: sets the resource’s ProviderID |
notes | string | 3 |
RestoreVolumeFromSnapshotRequest
Section titled “RestoreVolumeFromSnapshotRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
RetireInventoryItemRequest
Section titled “RetireInventoryItemRequest”RetireInventoryItem takes stock out of rotation, for a contract that was cancelled or a server that must not be handed out again. The row stays: it is the record that the platform once owned the thing.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
notes | string | 2 |
RunBackupPolicyRequest
Section titled “RunBackupPolicyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 |
SetInstanceTypeProvidersRequest
Section titled “SetInstanceTypeProvidersRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
providers | InstanceTypeProviderMapping | 2 |
SetProviderEntitlementRequest
Section titled “SetProviderEntitlementRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
kind | string | 2 | |
region | string | 3 | |
purchased | int32 | 4 | |
notes | string | 5 |
SetProviderPoolPolicyRequest
Section titled “SetProviderPoolPolicyRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
kind | string | 2 | |
spec | string | 3 | |
region | string | 4 | |
min_available | int32 | 5 | |
max_available | int32 | 6 | |
enabled | bool | 7 |
Snapshot
Section titled “Snapshot”Snapshot is a disk backup of a volume or instance disk.
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | snap_… |
name | string | 2 | |
description | string | 3 | |
app | string | 4 | |
org | string | 5 | |
region | string | 6 | |
source_volume | string | 7 | |
source_instance | string | 8 | |
size_gb | int64 | 9 | |
status | string | 10 | pending | available | failed |
progress | int32 | 11 | |
encrypted | bool | 12 | |
origin | string | 13 | manual | backup |
SshKey
Section titled “SshKey”---- SSH keys (Key Pairs) ----
| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | key_… |
name | string | 2 | |
app | string | 3 | |
org | string | 4 | |
public_key | string | 5 | |
fingerprint | string | 6 | |
type | string | 7 | rsa | ed25519 |
SyncProviderInstanceTypesRequest
Section titled “SyncProviderInstanceTypesRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
apply | bool | 2 | when false, returns a diff preview only |
SyncProviderInstanceTypesResponse
Section titled “SyncProviderInstanceTypesResponse”| Field | Type | # | Notes |
|---|---|---|---|
rows | SyncDiffRow | 1 | |
applied | bool | 2 |
SyncProviderMachineImagesRequest
Section titled “SyncProviderMachineImagesRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
apply | bool | 2 | keep for tests; UI must not call bulk apply |
SyncProviderMachineImagesResponse
Section titled “SyncProviderMachineImagesResponse”| Field | Type | # | Notes |
|---|---|---|---|
rows | SyncDiffRow | 1 | |
applied | bool | 2 |
SyncProviderRegionsRequest
Section titled “SyncProviderRegionsRequest”| Field | Type | # | Notes |
|---|---|---|---|
provider | string | 1 | |
apply | bool | 2 | keep for tests; UI must not call bulk apply |
SyncProviderRegionsResponse
Section titled “SyncProviderRegionsResponse”| Field | Type | # | Notes |
|---|---|---|---|
rows | SyncDiffRow | 1 | |
applied | bool | 2 |
UpdateAppRequest
Section titled “UpdateAppRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
parent_id | string | 4 | "" moves the app to the top level |
UpdateBackupPolicyRequest
Section titled “UpdateBackupPolicyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
schedule | string | 3 | |
retention_keep | int32 | 4 | |
retention_days | int32 | 5 | |
enabled | bool | 6 |
UpdateFamilyRequest
Section titled “UpdateFamilyRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
state | string | 4 |
UpdateFirewallRulesRequest
Section titled “UpdateFirewallRulesRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
rules | FirewallRule | 2 |
UpdateImageRequest
Section titled “UpdateImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
description | string | 2 |
UpdateInstanceRequest
Section titled “UpdateInstanceRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
user_data | string | 4 | |
deletion_protection | bool | 5 |
UpdateInstanceTypeRequest
Section titled “UpdateInstanceTypeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
vcpus | int32 | 3 | |
memory_mb | int32 | 4 | |
disk_gb | int32 | 5 | |
family | string | 6 | |
description | string | 7 | |
enabled | bool | 8 | |
hourly_price | double | 9 | |
monthly_price | double | 10 | |
currency | string | 11 | |
state | string | 12 | |
provider_instance_type_ids | string | 13 | |
region_ids | string | 14 | |
region_overrides | RegionOverride | 15 | |
family_id | string | 16 |
UpdateMachineImageRequest
Section titled “UpdateMachineImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
description | string | 3 | |
os | string | 4 | |
version | string | 5 | |
state | string | 6 | |
provider_machine_image_ids | string | 7 | |
replace_provider_machine_images | bool | 8 | true replaces the join, including with an empty list |
UpdateProviderInstanceTypeRequest
Section titled “UpdateProviderInstanceTypeRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
vcpus | int32 | 3 | |
memory_mb | int32 | 4 | |
disk_gb | int32 | 5 | |
hourly_price | double | 6 | |
monthly_price | double | 7 | |
currency | string | 8 | |
state | string | 9 | |
available | bool | 10 | |
platform_instance_type_id | string | 11 | |
region_ids | string | 12 | |
provider_name | string | 13 | |
provider_vcpus | int32 | 14 | |
provider_memory_mb | int32 | 15 | |
provider_disk_gb | int32 | 16 | |
provider_hourly_price | double | 17 | |
provider_monthly_price | double | 18 | |
provider_currency | string | 19 | |
provider_machine_image_ids | string | 20 | |
replace_provider_machine_images | bool | 21 |
UpdateProviderMachineImageRequest
Section titled “UpdateProviderMachineImageRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
provider_name | string | 3 | |
os | string | 4 | |
provider_os | string | 5 | |
version | string | 6 | |
provider_version | string | 7 | |
state | string | 8 | |
platform_machine_image_id | string | 9 | |
clear_platform_machine_image | bool | 10 |
UpdateProviderRegionRequest
Section titled “UpdateProviderRegionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
country | string | 3 | |
state | string | 4 | |
available | bool | 5 | unused; ignored on write. Do not renumber or delete. |
platform_region_id | string | 6 | kept for older clients |
platform_region_ids | string | 7 | |
provider_name | string | 8 |
UpdateRegionRequest
Section titled “UpdateRegionRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
name | string | 2 | |
country | string | 3 | |
state | string | 4 | |
description | string | 5 | |
provider_region_ids | string | 6 | |
update_provider_regions | bool | 7 | false leaves the join unchanged |
UpdateReverseDnsRequest
Section titled “UpdateReverseDnsRequest”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | |
reverse_dns | string | 2 |
Volume
Section titled “Volume”| Field | Type | # | Notes |
|---|---|---|---|
id | string | 1 | vol_… |
name | string | 2 | |
app | string | 3 | |
org | string | 4 | |
region | string | 5 | |
size_gb | int64 | 6 | |
state | ResourceState | 7 | |
attached_to | string | 8 | instance id, empty if detached |
type | string | 12 | Phase 3 EBS-style attributes. |
iops | int32 | 13 | |
throughput | int32 | 14 | |
source_snapshot | string | 15 | |
encrypted | bool | 16 | |
availability_zone | string | 17 |