Download OpenAPI specification:Download
REST API for Mikrom microVM orchestration.
Authentication accepts either a session JWT or a Personal Access Token (mikrom_pat_...) sent as an HTTP Bearer credential. Create PATs under POST /v1/auth/tokens; see docs/guides/api-authentication.md for the full guide. An interactive explorer is served at /v1/docs.
| captcha_answer required | string |
| captcha_id required | string |
| email required | string |
| first_name | string or null |
| last_name | string or null |
| password required | string |
{- "captcha_answer": "string",
- "captcha_id": "string",
- "email": "string",
- "first_name": "string",
- "last_name": "string",
- "password": "string"
}{- "error": "string",
- "status": 65535
}| code | string or null |
| email required | string |
| password required | string |
{- "code": "string",
- "email": "string",
- "password": "string"
}{- "refresh_token": "string",
- "requires_2fa": true,
- "token": "string",
- "user": {
- "avatar_url": "string",
- "email": "string",
- "email_notifications": true,
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "marketing_emails": true,
- "role": "Admin",
- "totp_enabled": true,
- "vpc_ipv6_prefix": "string"
}
}{- "avatar_url": "string",
- "email": "string",
- "email_notifications": true,
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "marketing_emails": true,
- "role": "Admin",
- "totp_enabled": true,
- "vpc_ipv6_prefix": "string"
}| email_notifications | boolean or null |
| first_name | string or null |
| last_name | string or null |
| marketing_emails | boolean or null |
{- "email_notifications": true,
- "first_name": "string",
- "last_name": "string",
- "marketing_emails": true
}{- "avatar_url": "string",
- "email": "string",
- "email_notifications": true,
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "marketing_emails": true,
- "role": "Admin",
- "totp_enabled": true,
- "vpc_ipv6_prefix": "string"
}| current_password required | string |
| new_password required | string |
{- "current_password": "string",
- "new_password": "string"
}{- "error": "string",
- "status": 65535
}[- {
- "created_at": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "last_used_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "token_last_four": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
]{- "amount_cents": 0,
- "cancel_at_period_end": true,
- "currency": "string",
- "current_period_end": "2019-08-24T14:15:22Z",
- "current_period_start": "2019-08-24T14:15:22Z",
- "customer_external_id": "string",
- "default_checkout_product_id": "string",
- "has_billing_record": true,
- "is_test_mode": true,
- "plan_limits": {
- "autoscaling_allowed": true,
- "custom_domains": true,
- "max_apps": 0,
- "max_databases": 0,
- "max_deployments_per_app": 0,
- "max_memory_mb_total": 0,
- "max_storage_gb_total": 0,
- "max_team_members": 0,
- "max_vcpus_total": 0,
- "max_volumes": 0
}, - "plan_name": "string",
- "polar_customer_id": "string",
- "polar_product_id": "string",
- "polar_subscription_id": "string",
- "selected_checkout_product_id": "string",
- "status": "string",
- "tenant_id": "string",
- "tier_slug": "string"
}{- "default_checkout_product_id": "string",
- "last_synced_at": "2019-08-24T14:15:22Z",
- "products": [
- {
- "description": "string",
- "currency": "string",
- "id": "string",
- "is_archived": true,
- "is_default_checkout_product": true,
- "name": "string",
- "price_amount_cents": 0,
- "recurring_interval": "string"
}
]
}{- "default_checkout_product_id": "string",
- "last_synced_at": "2019-08-24T14:15:22Z",
- "products": [
- {
- "description": "string",
- "currency": "string",
- "id": "string",
- "is_archived": true,
- "is_default_checkout_product": true,
- "name": "string",
- "price_amount_cents": 0,
- "recurring_interval": "string"
}
]
}| product_id | string or null |
{- "product_id": "string"
}{- "amount_cents": 0,
- "cancel_at_period_end": true,
- "currency": "string",
- "current_period_end": "2019-08-24T14:15:22Z",
- "current_period_start": "2019-08-24T14:15:22Z",
- "customer_external_id": "string",
- "default_checkout_product_id": "string",
- "has_billing_record": true,
- "is_test_mode": true,
- "plan_limits": {
- "autoscaling_allowed": true,
- "custom_domains": true,
- "max_apps": 0,
- "max_databases": 0,
- "max_deployments_per_app": 0,
- "max_memory_mb_total": 0,
- "max_storage_gb_total": 0,
- "max_team_members": 0,
- "max_vcpus_total": 0,
- "max_volumes": 0
}, - "plan_name": "string",
- "polar_customer_id": "string",
- "polar_product_id": "string",
- "polar_subscription_id": "string",
- "selected_checkout_product_id": "string",
- "status": "string",
- "tenant_id": "string",
- "tier_slug": "string"
}| limit | integer or null <int64> |
| offset | integer or null <int64> |
| unread_only | boolean or null |
{- "has_more": true,
- "next_offset": 0,
- "notifications": [
- {
- "title": "string",
- "body": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "entity_name": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "is_read": true,
- "kind": "string",
- "metadata": null,
- "read_at": "2019-08-24T14:15:22Z",
- "resource_id": "string",
- "route": "string",
- "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
], - "unread_count": 0
}| tenant_slug required | string |
| name required | string |
{- "name": "string"
}{- "created_at": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "tenant_id": "string",
- "updated_at": "2019-08-24T14:15:22Z"
}[- {
- "active_deployment_id": "66c710e1-2234-4bf2-af70-6d1ccc6055f1",
- "autoscaling_enabled": true,
- "cpu_threshold": 0.1,
- "created_at": "2019-08-24T14:15:22Z",
- "desired_replicas": 0,
- "drain_timeout": 0,
- "git_url": "string",
- "github_installation_id": 0,
- "github_repo_full_name": "string",
- "github_repo_id": 0,
- "github_webhook_secret": "string",
- "health_check_path": "string",
- "hostname": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "max_replicas": 0,
- "mem_threshold": 0.1,
- "min_replicas": 0,
- "name": "string",
- "port": 0,
- "scale_state": "active"
}
]| autoscaling_enabled | boolean or null |
| desired_replicas | integer or null <int32> |
| drain_timeout | integer or null <int32> |
| git_url required | string |
| github_installation_id | integer or null <int64> |
| github_repo_full_name | string or null |
| github_repo_id | integer or null <int64> |
| health_check_path | string or null |
| max_replicas | integer or null <int32> |
| min_replicas | integer or null <int32> |
| name required | string |
| port | integer or null <uint32> >= 0 |
{- "autoscaling_enabled": true,
- "desired_replicas": 0,
- "drain_timeout": 0,
- "git_url": "string",
- "github_installation_id": 0,
- "github_repo_full_name": "string",
- "github_repo_id": 0,
- "health_check_path": "string",
- "max_replicas": 0,
- "min_replicas": 0,
- "name": "string",
- "port": 0
}{- "error": "string",
- "status": 65535
}| app_name required | string |
| disk_mib | integer or null <uint32> >= 0 |
| git_url | string or null |
| hypervisor | string or null |
| image required | string |
| memory_mib | integer or null <uint32> >= 0 |
| port | integer or null <uint32> >= 0 |
| vcpus | integer or null <uint32> >= 0 |
{- "app_name": "string",
- "disk_mib": 0,
- "git_url": "string",
- "hypervisor": "string",
- "image": "string",
- "memory_mib": 0,
- "port": 0,
- "vcpus": 0
}{- "deployment_id": "string",
- "host_id": "string",
- "image_tag": "string",
- "job_id": "string",
- "message": "string",
- "status": "string",
- "vm_id": "string"
}{- "active_deployment_id": "66c710e1-2234-4bf2-af70-6d1ccc6055f1",
- "autoscaling_enabled": true,
- "cpu_threshold": 0.1,
- "created_at": "2019-08-24T14:15:22Z",
- "desired_replicas": 0,
- "drain_timeout": 0,
- "git_url": "string",
- "github_installation_id": 0,
- "github_repo_full_name": "string",
- "github_repo_id": 0,
- "github_webhook_secret": "string",
- "health_check_path": "string",
- "hostname": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "max_replicas": 0,
- "mem_threshold": 0.1,
- "min_replicas": 0,
- "name": "string",
- "port": 0,
- "scale_state": "active"
}| app_name required | string |
| port required | integer <uint32> >= 0 |
{- "port": 0
}{- "active_deployment_id": "66c710e1-2234-4bf2-af70-6d1ccc6055f1",
- "autoscaling_enabled": true,
- "cpu_threshold": 0.1,
- "created_at": "2019-08-24T14:15:22Z",
- "desired_replicas": 0,
- "drain_timeout": 0,
- "git_url": "string",
- "github_installation_id": 0,
- "github_repo_full_name": "string",
- "github_repo_id": 0,
- "github_webhook_secret": "string",
- "health_check_path": "string",
- "hostname": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "max_replicas": 0,
- "mem_threshold": 0.1,
- "min_replicas": 0,
- "name": "string",
- "port": 0,
- "scale_state": "active"
}| app_name required | string |
| autoscaling_enabled | boolean or null |
| cpu_threshold | number or null <double> |
| desired_replicas | integer or null <int32> |
| max_replicas | integer or null <int32> |
| mem_threshold | number or null <double> |
| min_replicas | integer or null <int32> |
{- "autoscaling_enabled": true,
- "cpu_threshold": 0,
- "desired_replicas": 0,
- "max_replicas": 0,
- "mem_threshold": 0,
- "min_replicas": 0
}{- "error": "string",
- "status": 65535
}| app_name required | string |
| disk_mib | integer or null <uint32> >= 0 |
| hypervisor | string or null Hypervisor to use: "firecracker" or "cloud-hypervisor". Defaults to scheduler-selected. |
| image | string or null |
| memory_mib | integer or null <uint32> >= 0 Memory to allocate in MiB. Allowed values: 512, 1024, 2048, or 4096. |
| port | integer or null <uint32> >= 0 |
| vcpus | integer or null <uint32> >= 0 CPU cores to allocate. Allowed values: 1, 2, 3, or 4. |
{- "disk_mib": 0,
- "hypervisor": "string",
- "image": "string",
- "memory_mib": 0,
- "port": 0,
- "vcpus": 0
}{- "deployment_id": "string",
- "host_id": "string",
- "image_tag": "string",
- "job_id": "string",
- "message": "string",
- "status": "string",
- "vm_id": "string"
}[- {
- "app_id": "affd1d10-9538-4fc8-9e0b-4594a28c1335",
- "build_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "disk_mib": 0,
- "git_branch": "string",
- "git_commit_hash": "string",
- "git_commit_message": "string",
- "hypervisor": 0,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "image_tag": "string",
- "ipv6_address": "string",
- "job_id": "string",
- "memory_mib": 0,
- "port": 0,
- "status": "string",
- "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",
- "trigger_source": "string",
- "updated_at": "2019-08-24T14:15:22Z",
- "vcpus": 0
}
]| app_name required | string |
| job_id required | string |
{- "app_id": "string",
- "app_name": "string",
- "cpu_usage": 0.1,
- "deployment_id": "string",
- "error_message": "string",
- "host_id": "string",
- "hypervisor": "string",
- "image": "string",
- "ipv6_address": "string",
- "job_id": "string",
- "memory_mib": 0,
- "ram_used_bytes": 0,
- "rx_bytes": 0,
- "scale_state": "active",
- "scheduled_at": 0,
- "started_at": 0,
- "status": "string",
- "stopped_at": 0,
- "tx_bytes": 0,
- "vcpus": 0,
- "vm_id": "string"
}| app_name required | string |
| job_id required | string |
| snapshot_name required | string |
{- "snapshot_name": "string"
}null| app_name required | string |
| job_id required | string |
| mount_point required | string |
| read_only | boolean Default: false |
| volume_id required | string |
{- "mount_point": "string",
- "read_only": false,
- "volume_id": "string"
}null| app_name required | string |
| job_id required | string |
| target_host required | string |
| target_uri required | string |
{- "target_host": "string",
- "target_uri": "string"
}null| app_name required | string |
| job_id required | string |
| target_memory_mib required | integer <uint32> >= 0 |
{- "target_memory_mib": 0
}null[- {
- "action": "string",
- "app_id": "affd1d10-9538-4fc8-9e0b-4594a28c1335",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "port_end": 0,
- "port_start": 0,
- "priority": 0,
- "protocol": "string",
- "updated_at": "2019-08-24T14:15:22Z"
}
]| app_name required | string |
| action required | string |
| port_end required | integer <uint32> >= 0 |
| port_start required | integer <uint32> >= 0 |
| protocol required | string |
{- "action": "string",
- "port_end": 0,
- "port_start": 0,
- "protocol": "string"
}{- "error": "string",
- "status": 65535
}[- {
- "app_id": "string",
- "app_name": "string",
- "cpu_usage": 0.1,
- "deployment_id": "string",
- "host_id": "string",
- "hypervisor": "string",
- "image": "string",
- "ipv6_address": "string",
- "job_id": "string",
- "memory_mib": 0,
- "ram_used_bytes": 0,
- "rx_bytes": 0,
- "scale_state": "active",
- "status": "string",
- "tx_bytes": 0,
- "vcpus": 0,
- "vm_id": "string"
}
][- {
- "access_mode": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "mount_point": "string",
- "name": "string",
- "pool_name": "",
- "size_mib": 0,
- "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",
- "updated_at": "2019-08-24T14:15:22Z"
}
]| app_id required | string <uuid> |
| access_mode | integer <int32> Default: 0 |
| mount_point | string Default: "/data" |
| volume_id required | string <uuid> |
{- "access_mode": 0,
- "mount_point": "/data",
- "volume_id": "f17547b0-76cd-4153-92b9-a7d38dac0aba"
}{- "error": "string",
- "status": 65535
}[- {
- "attachments": [
- {
- "access_mode": 0,
- "app_id": "affd1d10-9538-4fc8-9e0b-4594a28c1335",
- "app_name": "string",
- "mount_point": "string"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "pool_name": "",
- "size_mib": 0,
- "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",
- "updated_at": "2019-08-24T14:15:22Z"
}
]| name required | string |
| size_mib required | integer <int32> |
{- "name": "string",
- "size_mib": 0
}{- "error": "string",
- "status": 65535
}[- {
- "created_at": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",
- "volume_id": "f17547b0-76cd-4153-92b9-a7d38dac0aba"
}
]| volume_id required | string <uuid> |
| name required | string |
{- "name": "string"
}{- "error": "string",
- "status": 65535
}| volume_id required | string <uuid> |
| snapshot_name required | string |
{- "snapshot_name": "string"
}{- "error": "string",
- "status": 65535
}| volume_id required | string <uuid> |
| name required | string |
| snapshot_name required | string |
{- "name": "string",
- "snapshot_name": "string"
}{- "error": "string",
- "status": 65535
}[- {
- "created_at": "2019-08-24T14:15:22Z",
- "disk_mib": 0,
- "engine": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "memory_mib": 0,
- "name": "string",
- "neon_tenant_id": "string",
- "neon_timeline_id": "string",
- "postgres_version": 65535,
- "status": "string",
- "tenant_gen": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "vcpus": 0
}
]| disk_mib | integer or null <uint32> >= 0 |
| engine required | string |
| memory_mib | integer or null <uint32> >= 0 |
| name required | string |
| postgres_version | integer or null <uint16> [ 0 .. 65535 ] |
object or null | |
| vcpus | integer or null <uint32> >= 0 |
{- "disk_mib": 0,
- "engine": "string",
- "memory_mib": 0,
- "name": "string",
- "postgres_version": 65535,
- "settings": {
- "property1": "string",
- "property2": "string"
}, - "vcpus": 0
}{- "created_at": "2019-08-24T14:15:22Z",
- "disk_mib": 0,
- "engine": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "memory_mib": 0,
- "name": "string",
- "neon_tenant_id": "string",
- "neon_timeline_id": "string",
- "postgres_version": 65535,
- "status": "string",
- "tenant_gen": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "vcpus": 0
}{- "database_host": "string",
- "database_id": "91088904-0b92-46ad-9240-e1afa0da22df",
- "database_name": "string",
- "database_port": 65535,
- "database_user": "string",
- "psql_command": "string",
- "ssh_host": "string",
- "ssh_port": 65535,
- "ssh_tunnel_command": "string",
- "ssh_user": "string"
}[- {
- "branch_name": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "database_id": "91088904-0b92-46ad-9240-e1afa0da22df",
- "database_name": "string",
- "is_current": true,
- "neon_tenant_id": "string",
- "neon_timeline_id": "string",
- "status": "string",
- "tenant_gen": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
]{- "backup_strategy": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "database_id": "91088904-0b92-46ad-9240-e1afa0da22df",
- "database_name": "string",
- "neon_tenant_id": "string",
- "neon_timeline_id": "string",
- "recovery_mode": "string",
- "retention_valid": true,
- "status": "string",
- "tenant_gen": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}| id required | string <uuid> |
| name required | string |
{- "name": "string"
}{- "error": "string",
- "status": 65535
}| id required | string <uuid> |
| snapshot_name required | string |
{- "snapshot_name": "string"
}{- "message": "string",
- "success": true
}| action | string or null |
| limit | integer or null <int64> |
| offset | integer or null <int64> |
| resource_type | string or null |
{- "items": [
- {
- "action": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "details": null,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "ip_address": "string",
- "resource_id": "string",
- "resource_type": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
], - "total": 0
}