JSON output schemas
whzbox currently implements JSON rendering for create and list.
Commands
| Command |
Top-level JSON type |
whzbox create aws --json |
object |
whzbox create azure --json |
object |
whzbox create gcp --json |
object |
whzbox list --json |
array of objects |
Sandbox object schema
| Field |
Type |
Description |
kind |
string |
Sandbox kind: aws, azure, or gcp. |
slug |
string |
Whizlabs provider slug: aws-sandbox, azure-sandbox, or gcp-sandbox. |
credentials |
object |
Programmatic credentials. Both values are empty for Azure and GCP. |
console |
object |
Browser console login details. |
identity |
object |
Verified AWS identity, Azure resource groups, or GCP project metadata. |
started_at |
string |
Sandbox start time as an RFC 3339 timestamp. |
expires_at |
string |
Sandbox expiry time as an RFC 3339 timestamp. |
credentials
| Field |
Type |
Description |
access_key |
string |
AWS access key ID |
secret_key |
string |
AWS secret access key |
console
| Field |
Type |
Description |
url |
string |
Provider console sign-in URL |
username |
string |
Console username |
password |
string |
Console password |
identity
| Field |
Type |
Description |
account |
string |
AWS account ID |
user_id |
string |
AWS user ID |
arn |
string |
AWS ARN |
region |
string |
AWS region |
project_id |
string |
GCP project ID; omitted for AWS |
project_name |
string |
GCP project name; omitted for AWS |
resource_groups |
array of strings |
Azure resource groups; omitted for AWS and GCP |
Example: create --json
{
"kind": "aws",
"slug": "aws-sandbox",
"credentials": {
"access_key": "AKIAEXAMPLE",
"secret_key": "secret"
},
"console": {
"url": "https://111111111111.signin.aws.amazon.com/console",
"username": "whiz_user",
"password": "password"
},
"identity": {
"account": "111111111111",
"user_id": "AIDAEXAMPLE",
"arn": "arn:aws:iam::111111111111:user/whiz_user",
"region": "us-east-1"
},
"started_at": "2026-04-12T00:00:00Z",
"expires_at": "2026-04-12T01:00:00Z"
}
Example: list --json
[
{
"kind": "aws",
"slug": "aws-sandbox",
"credentials": {
"access_key": "AKIAEXAMPLE",
"secret_key": "secret"
},
"console": {
"url": "https://111111111111.signin.aws.amazon.com/console",
"username": "whiz_user",
"password": "password"
},
"identity": {
"account": "111111111111",
"user_id": "AIDAEXAMPLE",
"arn": "arn:aws:iam::111111111111:user/whiz_user",
"region": "us-east-1"
},
"started_at": "2026-04-12T00:00:00Z",
"expires_at": "2026-04-12T01:00:00Z"
}
]
Example: GCP create --json
{
"kind": "gcp",
"slug": "gcp-sandbox",
"credentials": {
"access_key": "",
"secret_key": ""
},
"console": {
"url": "https://console.cloud.google.com/",
"username": "student@example.com",
"password": "password"
},
"identity": {
"account": "",
"user_id": "",
"arn": "",
"region": "",
"project_id": "project-12345",
"project_name": "project-12345"
},
"started_at": "2026-04-12T00:00:00Z",
"expires_at": "2026-04-12T01:00:00Z"
}
Example: Azure create --json
{
"kind": "azure",
"slug": "azure-sandbox",
"credentials": {
"access_key": "",
"secret_key": ""
},
"console": {
"url": "https://portal.azure.com/",
"username": "student@example.com",
"password": "password"
},
"identity": {
"account": "",
"user_id": "",
"arn": "",
"region": "",
"resource_groups": [
"rg-compute",
"rg-network",
"rg-storage"
]
},
"started_at": "2026-04-12T00:00:00Z",
"expires_at": "2026-04-12T03:00:00Z"
}
Notes
status, login, logout, destroy, exec, mfa, version, and completion do not have JSON renderers.
create --json can still return a non-zero exit code if verification fails after creation.
See also