curl --request GET \
--url https://cloud-api.phala.com/api/v1/cvms/{cvm_id}import requests
url = "https://cloud-api.phala.com/api/v1/cvms/{cvm_id}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://cloud-api.phala.com/api/v1/cvms/{cvm_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud-api.phala.com/api/v1/cvms/{cvm_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://cloud-api.phala.com/api/v1/cvms/{cvm_id}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://cloud-api.phala.com/api/v1/cvms/{cvm_id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud-api.phala.com/api/v1/cvms/{cvm_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"status": "<string>",
"app_id": "<string>",
"vcpu": 123,
"memory": 123,
"disk_size": 123,
"enabled_ssh_access": true,
"teepod_id": 123,
"teepod": {
"id": 123,
"name": "<string>",
"region_identifier": "<string>"
},
"in_progress": false,
"vm_uuid": "<string>",
"instance_id": "<string>",
"base_image": "<string>",
"encrypted_env_pubkey": "<string>",
"listed": false,
"project_id": "prj_0123abcd",
"project_type": "<string>",
"instance_type": "<string>",
"public_sysinfo": true,
"public_logs": true,
"managed_env": false,
"dapp_dashboard_url": "<string>",
"syslog_endpoint": "<string>",
"kms_info": {
"id": "kms_0123abcd",
"url": "<string>",
"version": "<string>",
"slug": "<string>",
"chain_id": 123,
"kms_contract_address": "<string>",
"gateway_app_id": "<string>",
"ca_pubkey": "<string>",
"k256_pubkey": "<string>"
},
"contract_address": "<string>",
"deployer_address": "<string>",
"scheduled_delete_at": "2023-11-07T05:31:56Z",
"public_urls": [
{
"app": "<string>",
"instance": "<string>"
}
],
"gateway_domain": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Get CVM details
Returns full CVM details including status, network info, and KMS configuration.
curl --request GET \
--url https://cloud-api.phala.com/api/v1/cvms/{cvm_id}import requests
url = "https://cloud-api.phala.com/api/v1/cvms/{cvm_id}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://cloud-api.phala.com/api/v1/cvms/{cvm_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud-api.phala.com/api/v1/cvms/{cvm_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://cloud-api.phala.com/api/v1/cvms/{cvm_id}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://cloud-api.phala.com/api/v1/cvms/{cvm_id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud-api.phala.com/api/v1/cvms/{cvm_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"status": "<string>",
"app_id": "<string>",
"vcpu": 123,
"memory": 123,
"disk_size": 123,
"enabled_ssh_access": true,
"teepod_id": 123,
"teepod": {
"id": 123,
"name": "<string>",
"region_identifier": "<string>"
},
"in_progress": false,
"vm_uuid": "<string>",
"instance_id": "<string>",
"base_image": "<string>",
"encrypted_env_pubkey": "<string>",
"listed": false,
"project_id": "prj_0123abcd",
"project_type": "<string>",
"instance_type": "<string>",
"public_sysinfo": true,
"public_logs": true,
"managed_env": false,
"dapp_dashboard_url": "<string>",
"syslog_endpoint": "<string>",
"kms_info": {
"id": "kms_0123abcd",
"url": "<string>",
"version": "<string>",
"slug": "<string>",
"chain_id": 123,
"kms_contract_address": "<string>",
"gateway_app_id": "<string>",
"ca_pubkey": "<string>",
"k256_pubkey": "<string>"
},
"contract_address": "<string>",
"deployer_address": "<string>",
"scheduled_delete_at": "2023-11-07T05:31:56Z",
"public_urls": [
{
"app": "<string>",
"instance": "<string>"
}
],
"gateway_domain": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Path Parameters
Response
CVM details
- CvmBasicInfo
- CVMInfoDetail
Detailed CVM information returned by GET /cvms/{cvm_id}.
CVM ID
RFC 1123 compliant CVM name
Current status: running, stopped, starting, etc.
Unique application identifier
Allocated vCPU count
Allocated memory in MB
Allocated disk size in GB
True when SSH access is enabled for this CVM. Today that means the CVM runs a dev OS image, the only image that runs sshd.
Node ID (admin only)
Node metadata
Show child attributes
Show child attributes
True if an operation is currently executing
VM instance UUID on the node
Public instance identifier
OS image name
Public key for encrypting env vars
True if publicly listed
A hashed identifier that maps to an internal database ID
^prj_.+"prj_0123abcd"
Project provision type
Instance type identifier
Expose system info publicly
Expose logs publicly
True when guest-side encrypted-env merge is active. Partial env updates preserve other allowed keys; removing a key deletes its value from the CVM.
DApp dashboard URL if applicable
Syslog streaming endpoint
KMS configuration
Show child attributes
Show child attributes
On-chain contract address
Deployer wallet address
Auto-delete timestamp (UTC)
Exposed service URLs
Show child attributes
Show child attributes
Gateway base domain
Was this page helpful?

