Appearance
Manage Clouds
A Cloud is a provider account plus its region defaults. There is no plexctl cloud subcommand yet, so the /v1/clouds surface is driven with curl.
Prerequisites
- An authenticated session — see Log in with plexctl.
${PLEXSPHERE_URL}and a bearer${TOKEN}.- Provider data:
awsneedsregion_defaults.default_region;azureneedssubscription_idandtenant_id.
Steps
Create a Cloud
shell
curl --silent --show-error --fail-with-body -X POST \
-H "Authorization: Bearer ${TOKEN}" -H 'content-type: application/json' \
"${PLEXSPHERE_URL}/v1/clouds" -d '{
"slug": "acme-aws-prod",
"provider": "aws",
"region_defaults": {"default_region": "eu-central-1"}
}'The slug is immutable; an unknown provider returns 400 invalid_cloud_region_defaults.
List, inspect, update, delete
shell
curl -s -H "Authorization: Bearer ${TOKEN}" "${PLEXSPHERE_URL}/v1/clouds"
curl -s -H "Authorization: Bearer ${TOKEN}" "${PLEXSPHERE_URL}/v1/clouds/<cloud-uuid>"
curl -s -X PATCH -H "Authorization: Bearer ${TOKEN}" -H 'content-type: application/json' \
"${PLEXSPHERE_URL}/v1/clouds/<cloud-uuid>" -d '{"display_name":"Acme AWS (prod)"}'
curl -s -X DELETE -H "Authorization: Bearer ${TOKEN}" "${PLEXSPHERE_URL}/v1/clouds/<cloud-uuid>"Verification
shell
curl -s -H "Authorization: Bearer ${TOKEN}" \
"${PLEXSPHERE_URL}/v1/clouds/<cloud-uuid>" | jq '{slug, provider}'See also
../../reference/api/clouds.md— the HTTP contract.