Skip to content

API Endpoint Reference (v2.0)

Switch to the v3 endpoint reference for the current organization-scoped API.

You are viewing the v2.0 endpoint reference. v2.0 uses a flat URL structure and remains fully supported, but v3 is recommended for new integrations.


Base URL: https://vhaas.vector.cloud/api/v2.0

All endpoints require authentication via Authorization: Bearer <JWT> or private-token: <Access Token>, unless stated otherwise.


User & Profile

Self

Method Path Description
GET /api/v2.0/users/self Get the profile of the currently authenticated user.

Users

Method Path Description Key Parameters
GET /api/v2.0/users List all visible users. Query: name, is_technical, role
GET /api/v2.0/users/{user_id} Get a user.
PATCH /api/v2.0/users/{user_id} Update a user. Body: name, …
DELETE /api/v2.0/users/{user_id} Delete a user.
PATCH /api/v2.0/users/{user_id}/role Update a user's global role. Body: role

User Settings

Method Path Description
GET /api/v2.0/users/{user_id}/settings Get user settings.
PATCH /api/v2.0/users/{user_id}/settings Update user settings.
GET /api/v2.0/users/{user_id}/access Get user access information.

Favorite Assemblies

Method Path Description
GET /api/v2.0/users/{user_id}/favorite-assemblies List favorite assemblies.
GET /api/v2.0/users/{user_id}/favorite-assembly-refs List favorite assembly references.
POST /api/v2.0/users/{user_id}/favorite-assemblies Add a favorite assembly.
DELETE /api/v2.0/users/{user_id}/favorite-assemblies/{assembly_ref} Remove a favorite assembly.

User Variables

Encrypted key-value pairs stored per user, usable in CI pipelines.

Method Path Description
GET /api/v2.0/users/{user_id}/variables List all user variables.
POST /api/v2.0/users/{user_id}/variables Create a variable.
PATCH /api/v2.0/users/{user_id}/variables Update a variable.
GET /api/v2.0/users/{user_id}/variables/{variable_name} Get a single variable.
DELETE /api/v2.0/users/{user_id}/variables/{variable_name} Delete a variable.
Method Path Description
GET /api/v2.0/users/{user_id}/rdp-settings Get RDP settings.
GET /api/v2.0/users/{user_id}/rdp-settings/mount-paths List RDP mount paths.
POST /api/v2.0/users/{user_id}/rdp-settings/mount-paths Add an RDP mount path.
DELETE /api/v2.0/users/{user_id}/rdp-settings/mount-paths/{rdp_path_id} Remove an RDP mount path.

Cleanup Paths

Method Path Description
GET /api/v2.0/users/{user_id}/cleanup-paths List cleanup paths.
POST /api/v2.0/users/{user_id}/cleanup-path Add a cleanup path.
DELETE /api/v2.0/users/{user_id}/cleanup-path Remove a cleanup path.

API Access Tokens

Method Path Description Key Parameters
GET /api/v2.0/api-access-tokens List access tokens. Query: user_id, revoked, name
POST /api/v2.0/api-access-tokens Create an access token. Body: name, expires_at
GET /api/v2.0/api-access-tokens/{token_id} Get a token.
PATCH /api/v2.0/api-access-tokens/{token_id} Revoke a token. Body: revoked
DELETE /api/v2.0/api-access-tokens/{token_id} Delete a token.

Managing Access Tokens


Organizations

Method Path Description Key Parameters
GET /api/v2.0/organizations List organizations. Query: search
POST /api/v2.0/organizations Create an organization. Body: organization_name
GET /api/v2.0/organizations/{organization_id} Get an organization.
PATCH /api/v2.0/organizations/{organization_id} Rename an organization. Body: organization_name
DELETE /api/v2.0/organizations/{organization_id} Delete an organization. Query: cascade_delete (bool)

Organization Users

Method Path Description Key Parameters
GET /api/v2.0/organizations/{organization_id}/users List users in organization. Query: include_technical_users
POST /api/v2.0/organizations/{organization_id}/users Add a user to the organization. Body: user_id
PATCH /api/v2.0/organizations/{organization_id}/users/{user_id} Update user role. Body: role_id
DELETE /api/v2.0/organizations/{organization_id}/users/{user_id} Remove a user.

Groups

Method Path Description Key Parameters
GET /api/v2.0/groups List groups. Query: name, organization_id
POST /api/v2.0/groups Create a group. Body: name, organization_id, description
GET /api/v2.0/groups/{group_id} Get a group.
PATCH /api/v2.0/groups/{group_id} Update a group. Body: name, description
DELETE /api/v2.0/groups/{group_id} Delete a group.

Group Users

Method Path Description Key Parameters
GET /api/v2.0/groups/{group_id}/users List users in group. Query: include_technical_users
POST /api/v2.0/groups/{group_id}/users Add a user. Body: user_id
PATCH /api/v2.0/groups/{group_id}/users/{user_id} Update user role. Body: role_id
DELETE /api/v2.0/groups/{group_id}/users/{user_id} Remove a user.

Group Assemblies

Method Path Description
GET /api/v2.0/groups/{group_id}/assemblies List assemblies in group.
GET /api/v2.0/groups/{group_id}/assembly_refs List assembly references in group.
POST /api/v2.0/groups/{group_id}/assemblies Assign an assembly to group.
DELETE /api/v2.0/groups/{group_id}/assemblies/{assembly_ref} Remove an assembly from group.

Assemblies

Assembly Collection

Method Path Description Key Parameters
GET /api/v2.0/assemblies List assemblies. Query: name, status, organization_id, group_id, cluster_ref, can_connect, include_virtual_machines
POST /api/v2.0/assemblies Create an assembly. Form: json_file, organization_id, group_id, cluster_ref, is_public_in_organization
GET /api/v2.0/assemblies/{assembly_ref} Get an assembly.
PATCH /api/v2.0/assemblies/{assembly_ref} Update an assembly. Form: json_file, administration_status, is_public_in_organization
DELETE /api/v2.0/assemblies/{assembly_ref} Delete an assembly.
GET /api/v2.0/assemblies/image-legend Get the SVG image legend for assembly visualizations.
GET /api/v2.0/assemblies/{assembly_ref}/image Get the rendered assembly SVG. Query: hide_unwired_devices, infra_types, bus_types

Assembly Access & Owners

Method Path Description
GET /api/v2.0/assemblies/{assembly_ref}/access Get access information (organizations, groups, owners).
GET /api/v2.0/assemblies/{assembly_ref}/owners List assembly owners.
POST /api/v2.0/assemblies/{assembly_ref}/owners Add owners.
DELETE /api/v2.0/assemblies/{assembly_ref}/owners/{user_id} Remove an owner.

Assembly Devices & Hardware Control

Method Path Description
GET /api/v2.0/assemblies/{assembly_ref}/devices List devices in the assembly.
GET /api/v2.0/assemblies/{assembly_ref}/devices/power Get power status for all devices.
PATCH /api/v2.0/assemblies/{assembly_ref}/devices/power Set power state for devices.
GET /api/v2.0/assemblies/{assembly_ref}/jumpers Get jumper states.
PATCH /api/v2.0/assemblies/{assembly_ref}/jumpers Update jumper states.
GET /api/v2.0/assemblies/{assembly_ref}/multiplexed-connections Get active multiplexed connections.
PATCH /api/v2.0/assemblies/{assembly_ref}/multiplexed-connections Update multiplexed connections.

Assembly Virtual Machines

Method Path Description
GET /api/v2.0/assemblies/{assembly_ref}/virtual-machine Get VMs assigned to assembly.
POST /api/v2.0/assemblies/{assembly_ref}/virtual_machine Assign a VM to assembly.
PATCH /api/v2.0/assemblies/{assembly_ref}/virtual-machine/{vm_id} Update VM settings for assembly.
DELETE /api/v2.0/assemblies/{assembly_ref}/virtual-machine/{vm_id} Unassign VM from assembly.

Device Sequences

Automated power/control sequences that can be triggered on an assembly. See Manage Device Sequences for the concept and UI workflow, and the v3 Device Sequences endpoints for new integrations.

Method Path Description
GET /api/v2.0/assemblies/{assembly_ref}/device-sequences List device sequences.
POST /api/v2.0/assemblies/{assembly_ref}/device-sequences Create a device sequence.
GET /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id} Get a device sequence.
PATCH /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id} Update a device sequence.
DELETE /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id} Delete a device sequence.
POST /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id}/run Execute a device sequence.
GET /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id}/run Get latest runs of a sequence.
GET /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id}/run/{run_id} Get the status of a specific run.
PATCH /api/v2.0/assemblies/{assembly_ref}/device-sequences/{sequence_id}/run/{run_id} Update run status.

Sessions & Bookings

Assembly Sessions

Method Path Description Key Parameters
GET /api/v2.0/assembly-session List sessions. Query: start_time, end_time, assembly_ref, organization_id
POST /api/v2.0/assembly-session Book a session. Body: assembly_ref, start_time, end_time
GET /api/v2.0/assembly-session/{session_id} Get session status and details.
PATCH /api/v2.0/assembly-session/{session_id} Update a session (e.g. extend end time). Body: start_time, end_time
DELETE /api/v2.0/assembly-session/{session_id} Release a session immediately.
GET /api/v2.0/assembly-session/{session_id}/session-tasks Get tasks for a session.

Create session request body:

{
  "assembly_ref": "ASSEMBLY-101",
  "start_time": "2026-07-01T08:00:00Z",
  "end_time": "2026-07-01T17:00:00Z"
}

Session Contexts

Method Path Description Key Parameters
GET /api/v2.0/assembly-session-context List session contexts. Query: start_time, end_time, assembly_ref
POST /api/v2.0/assembly-session-context Create a session context. Body: assembly_ref, start_time, end_time, context_type, description
GET /api/v2.0/assembly-session-context/{context_id} Get a session context.
DELETE /api/v2.0/assembly-session-context/{context_id} Delete a session context.

Session Transfers

Method Path Description Key Parameters
GET /api/v2.0/assembly-session-transfers List transfer requests. Query: session_transfer_status, organization_id
POST /api/v2.0/assembly-session-transfers Request a transfer. Body: assembly_ref, new_user_id, force (bool)
PATCH /api/v2.0/assembly-session-transfers/{transfer_id} Approve or reject a transfer. Body: status

Jobs

Method Path Description Key Parameters
GET /api/v2.0/jobs List jobs. Query: job_ids[], user_ids[], status
POST /api/v2.0/jobs Create a job. Body: request_profile, start_time, end_time
GET /api/v2.0/jobs/{job_id} Get a job.
DELETE /api/v2.0/jobs/{job_id} Cancel / delete a job.

Virtual Machines

Method Path Description Key Parameters
GET /api/v2.0/virtual-machines List VMs. Query: organization_id, cluster_ref
POST /api/v2.0/virtual-machines Create a VM. Body: name, organization_id, cluster_ref, …
GET /api/v2.0/virtual-machines/{vm_id} Get a VM.
PATCH /api/v2.0/virtual-machines/{vm_id} Update a VM.
DELETE /api/v2.0/virtual-machines/{vm_id} Delete a VM.
GET /api/v2.0/virtual-machines/{vm_id}/credentials Get VM credentials.
POST /api/v2.0/virtual-machines/{vm_id}/credentials Set VM credentials.
DELETE /api/v2.0/virtual-machines/{vm_id}/credentials Delete VM credentials.

Clusters

Cluster Management

Method Path Description Key Parameters
GET /api/v2.0/clusters List clusters. Query: name, organization_id, cluster_type
POST /api/v2.0/clusters Create a cluster. Body: cluster_name, organization_id, …
GET /api/v2.0/clusters/{cluster_ref} Get a cluster.
PATCH /api/v2.0/clusters/{cluster_ref} Update a cluster.
DELETE /api/v2.0/clusters/{cluster_ref} Delete a cluster. Query: cascade_delete (bool)
POST /api/v2.0/clusters/{cluster_ref}/assemblies Assign an assembly to cluster. Query: cluster_partition_id; Body: assembly_ref
DELETE /api/v2.0/clusters/{cluster_ref}/assemblies/{assembly_ref} Remove assembly from cluster.

Cluster Partitions

Method Path Description
GET /api/v2.0/clusters/{cluster_ref}/cluster_partitions List partitions.
POST /api/v2.0/clusters/{cluster_ref}/cluster_partitions Create a partition.
PATCH /api/v2.0/clusters/{cluster_ref}/cluster_partition/{partition_id} Update a partition.
DELETE /api/v2.0/clusters/{cluster_ref}/cluster_partition/{partition_id} Delete a partition.

Cluster IPs & Sensors

Method Path Description
GET /api/v2.0/clusters/{cluster_ref}/cluster_ips List cluster IPs.
POST /api/v2.0/clusters/{cluster_ref}/cluster_ips Add a cluster IP.
GET /api/v2.0/clusters/{cluster_ref}/cluster_ips/{ip_id} Get a cluster IP.
PATCH /api/v2.0/clusters/{cluster_ref}/cluster_ips/{ip_id} Update a cluster IP.
DELETE /api/v2.0/clusters/{cluster_ref}/cluster_ip/{ip_id} Delete a cluster IP.
GET /api/v2.0/clusters/{cluster_ref}/cluster_ips/{ip_id}/sensor_configs List sensor configs.
GET /api/v2.0/clusters/{cluster_ref}/cluster_ips/{ip_id}/sensor_configs/{sensor_number} Get a sensor config (0–32).
PATCH /api/v2.0/clusters/{cluster_ref}/cluster_ips/{ip_id}/sensor_configs/{sensor_number} Update a sensor config.

Hardware Catalog

Device Suppliers

Method Path Description Key Parameters
GET /api/v2.0/hardware/device_suppliers List device suppliers. Query: organization_id, skip_filter
GET /api/v2.0/hardware/device_supplier Get a device supplier. Query: supplier_id (required)
POST /api/v2.0/hardware/device_supplier Create a device supplier. Body: supplier_name, organization_id, …
PATCH /api/v2.0/hardware/device_supplier/{supplier_id} Update a device supplier.
DELETE /api/v2.0/hardware/device_supplier/{supplier_id} Delete a device supplier (cascades).

Device Model Families

Method Path Description Key Parameters
GET /api/v2.0/hardware/device_model_families List model families. Query: organization_id, skip_filter
GET /api/v2.0/hardware/device_model_family Get a model family. Query: family_id (required)
POST /api/v2.0/hardware/device_model_family Create a model family. Body: family_name, supplier_id, …
PATCH /api/v2.0/hardware/device_model_family/{family_id} Update a model family.
DELETE /api/v2.0/hardware/device_model_family/{family_id} Delete a model family (cascades).

Device Model Versions

Method Path Description Key Parameters
GET /api/v2.0/hardware/device_model_versions List model versions. Query: organization_id, skip_filter
GET /api/v2.0/hardware/device_model_version Get a model version. Query: model_version_id (required)
POST /api/v2.0/hardware/device_model_version Create a model version. Body: version_number, family_id, …
PATCH /api/v2.0/hardware/device_model_version/{version_id} Update a model version.
DELETE /api/v2.0/hardware/device_model_version/{version_id} Delete a model version.

Metrics & Monitoring

Method Path Description Key Parameters
GET /api/v2.0/metrics/assembly-panels Get assembly metrics. Query: assembly_ref, query_key, start, end, step (seconds, 1–1000000)
GET /api/v2.0/metrics/virtual-machine-panels Get VM metrics. Query: virtual_machine_id, query_key, start, end, step
GET /api/v2.0/metrics/cluster-panels Get cluster metrics. Query: cluster_ref, query_key, start, end, cluster_partition_id, step
GET /api/v2.0/monitoring/vm-discovery Get VM hostnames with port numbers and labels.

Banners

Assembly Banners

Method Path Description Key Parameters
GET /api/v2.0/banner List assembly banners. Query: organization_id, active (bool)
POST /api/v2.0/banner Create a banner. Body: message, organization_id, start_date, end_date, active
PATCH /api/v2.0/banner/{banner_id} Update a banner.
DELETE /api/v2.0/banner/{banner_id} Delete a banner.

Announcement Banners

Method Path Description Key Parameters
GET /api/v2.0/announcement-banner List announcement banners. Query: organization_id, active (bool), only_public_banners (bool)
POST /api/v2.0/announcement-banner Create an announcement banner. Body: message, organization_id, start_date, end_date, active
PATCH /api/v2.0/announcement-banner/{banner_id} Update a banner.
DELETE /api/v2.0/announcement-banner/{banner_id} Delete a banner.

Health

Method Path Description Auth
GET /livez Kubernetes liveness probe. None
GET /readyz Kubernetes readiness probe (includes database check). None