List the profiles
The profiles whose files exist in `/data/app`, the default (`""`, `harthelm.yml`) first, then by name; read through the IDE agent. `selected_profile` is what Plan and Sync use when the request names none, `synced_profile` what the landscape was last synced from. 409 without an IDE pod. Needs `workspace.view`.
openapi/harthelm.yaml at v1.5.0__Host-harthelm_session<token>Browser session of the UI (12 h idle, 7 days absolute). State-changing requests also need the header
Harthelm-CSRF: 1 and a matching Origin.
ws*integerNumeric resource id.
int641 <= valuelimit?integerMaximum number of items per page.
1 <= value <= 20050cursor?stringOpaque cursor from next_cursor of the previous page.
length <= 1024A page of profiles.
application/json- response
next_cursor?stringAbsent on the last page.
items*array<>selected_profile*ProfileNameA profile (harthelm.<profile>.yml); absent or empty for harthelm.yml.
^([a-z0-9]([-a-z0-9]{0,30}[a-z0-9])?)?$synced_profile?ProfileNameA profile (harthelm.<profile>.yml); absent or empty for harthelm.yml.
^([a-z0-9]([-a-z0-9]{0,30}[a-z0-9])?)?$curl -X GET 'https://console.example.com/api/v1/workspaces/1/landscape/profiles'{ "next_cursor": "string", "items": [ { "name": "string", "path": "string" } ], "selected_profile": "string", "synced_profile": "string"}Get the landscape
The synced landscape: state, profile, `spec_hash`, the run switch and one entry per service with its observed status. An empty landscape has no services. Needs `workspace.view`. The `ETag` is the quoted `spec_hash` (`"empty"` before the first Sync).
Plan a Sync
Reads `harthelm.yml` (or `harthelm.<profile>.yml`) from `/data/app` through the IDE agent, parses, validates and resolves it and compares it with the synced landscape. Changes nothing. The result lists the services to add, change or remove with replicas, CPU and RAM, the team quota share, the vault keys that have no value yet and blockers that would stop the Sync (a service type that is not supported yet, the team quota, the workspace's disk quota). An invalid file answers 422 with problem `invalid-config`, whose `errors` carry pointer, line and column. Needs `landscape.manage`; 409 when the IDE does not run.