API Documentation

This document describes the REST API for the service.

Creates an api key

/api/v1/auth/api_keys Authorized
Role: SUPER_USER Claim: CREATE_API_KEY Claim: LIST

This endpoint creates an api key

This endpoint will create an api key in the system

API Keys are used to authenticate with the system from external applications

How are they different from a user?

A user normally has a password and is used to authenticate with the system An api key is used to authenticate with the system from an external application

Headers
Name Type Required Description
x-filter header optional Filter entities
Parameters
Name Type In Required Description
apiKey object body optional Body
Schema
{
  "created_at": "string",
  "key": "string",
  "name": "string",
  "revoked": "bool",
  "revoked_at": "string",
  "secret": "string",
  "updated_at": "string"
}

Gets all the api keys

/api/v1/auth/api_keys Authorized
Claim: LIST_API_KEY

This endpoint returns all the api keys

Deletes an api key

/api/v1/auth/api_keys/{id} Authorized
Claim: DELETE_API_KEY

This endpoint deletes an api key

Parameters
Name Type In Required Description
id string path required Api Key ID

Gets an api key by id or name

/api/v1/auth/api_keys/{id} Authorized
Claim: LIST_API_KEY

This endpoint returns an api key by id or name

Parameters
Name Type In Required Description
id string path required Api Key ID

Revoke an api key

/api/v1/auth/api_keys/{id}/revoke Authorized
Role: SUPER_USER Claim: LIST_API_KEY Claim: DELETE_API_KEY

This endpoint revokes an api key

Parameters
Name Type In Required Description
id string path required Api Key ID

Generates a token

/api/v1/auth/token Authorized

This endpoint generates a token

Parameters
Name Type In Required Description
login object body optional Body
Schema
{
  "email": "string",
  "password": "string"
}

Validates a token

/api/v1/auth/token/validate Authorized

This endpoint validates a token

Parameters
Name Type In Required Description
tokenRequest object body optional Body
Schema
{
  "token": "string"
}

Gets all the remote catalogs

/api/v1/catalog Authorized

This endpoint returns all the remote catalogs

Gets all the remote catalogs

/api/v1/catalog/{catalogId} Authorized

This endpoint returns all the remote catalogs

Parameters
Name Type In Required Description
catalogId string path required Catalog ID

Gets a catalog manifest version

/api/v1/catalog/{catalogId}/{version} Authorized

This endpoint returns a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version

Gets a catalog manifest version architecture

/api/v1/catalog/{catalogId}/{version}/{architecture} Authorized

This endpoint returns a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture

Downloads a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/download Authorized

This endpoint downloads a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture

Taints a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/taint Authorized

This endpoint Taints a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture

UnTaints a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/untaint Authorized

This endpoint UnTaints a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture

UnTaints a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/revoke Authorized

This endpoint UnTaints a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture

Adds claims to a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/claims Authorized

This endpoint adds claims to a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Removes claims from a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/claims Authorized

This endpoint removes claims from a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Adds roles to a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/roles Authorized

This endpoint adds roles to a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Removes roles from a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/roles Authorized

This endpoint removes roles from a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Adds tags to a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/tags Authorized

This endpoint adds tags to a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Removes tags from a catalog manifest version

/api/v1/catalog/{catalogId}/{version}/{architecture}/tags Authorized

This endpoint removes tags from a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Deletes a catalog manifest and all its versions

/api/v1/catalog/{catalogId} Authorized

This endpoint deletes a catalog manifest and all its versions

Parameters
Name Type In Required Description
catalogId string path required Catalog ID

Deletes a catalog manifest version

/api/v1/catalog/{catalogId}/{version} Authorized

This endpoint deletes a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version

Deletes a catalog manifest version architecture

/api/v1/catalog/{catalogId}/{version}/{architecture} Authorized

This endpoint deletes a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version
architecture string path required Architecture

Pushes a catalog manifest to the catalog inventory

/api/v1/catalog/push Authorized

This endpoint pushes a catalog manifest to the catalog inventory

Parameters
Name Type In Required Description
pushRequest object body optional Push request
Schema
{
  "architecture": "string",
  "catalog_id": "string",
  "compress_pack": "bool",
  "compress_pack_level": "int",
  "connection": "string",
  "description": "string",
  "local_path": "string",
  "minimum_requirements": {
    "cpu": "int",
    "disk": "int",
    "memory": "int"
  },
  "pack_size": "int64",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string",
  "uuid": "string",
  "version": "string"
}

Pull a remote catalog manifest

/api/v1/catalog/pull Authorized

This endpoint pulls a remote catalog manifest

Parameters
Name Type In Required Description
pullRequest object body optional Pull request
Schema
{
  "architecture": "string",
  "catalog_id": "string",
  "client": "string",
  "connection": "string",
  "machine_name": "string",
  "owner": "string",
  "path": "string",
  "provider_metadata": "map[string]string",
  "start_after_pull": "bool",
  "version": "string"
}

Imports a remote catalog manifest metadata into the catalog inventory

/api/v1/catalog/import Authorized

This endpoint imports a remote catalog manifest metadata into the catalog inventory

Parameters
Name Type In Required Description
importRequest object body optional Pull request
Schema
{
  "architecture": "string",
  "catalog_id": "string",
  "connection": "string",
  "provider_metadata": "map[string]string",
  "version": "string"
}

Imports a vm into the catalog inventory generating the metadata for it

/api/v1/catalog/import-vm Authorized

This endpoint imports a virtual machine in pvm or macvm format into the catalog inventory generating the metadata for it

Parameters
Name Type In Required Description
importRequest object body optional Vm Impoty request
Schema
{
  "architecture": "string",
  "catalog_id": "string",
  "connection": "string",
  "description": "string",
  "force": "bool",
  "is_compressed": "bool",
  "machine_remote_path": "string",
  "provider_metadata": "map[string]string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "size": "int64",
  "tags": "[]string",
  "type": "string",
  "version": "string"
}

Updates a catalog

/api/v1/catalog/{catalogId}/{version}/{architecture}/claims Authorized

This endpoint adds claims to a catalog manifest version

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
request object body optional Body
Schema
{
  "connection": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "tags": "[]string"
}

Gets catalog cache

/api/v1/catalog/cache Authorized

This endpoint returns all the remote catalog cache if any

Deletes all catalog cache

/api/v1/catalog/cache Authorized

This endpoint returns all the remote catalog cache if any

Parameters
Name Type In Required Description
catalogId string path required Catalog ID

Deletes catalog cache item and all its versions

/api/v1/catalog/cache/{catalogId} Authorized

This endpoint returns all the remote catalog cache if any and all its versions

Parameters
Name Type In Required Description
catalogId string path required Catalog ID

Deletes catalog cache version item

/api/v1/catalog/cache/{catalogId}/{version} Authorized

This endpoint deletes a version of a cache ite,

Parameters
Name Type In Required Description
catalogId string path required Catalog ID
version string path required Version

Gets all the claims

/api/v1/auth/claims Authorized

This endpoint returns all the claims

Gets a claim

/api/v1/auth/claims/{id} Authorized

This endpoint returns a claim

Parameters
Name Type In Required Description
id string path required Claim ID

Creates a claim

/api/v1/auth/claims Authorized

This endpoint creates a claim

Parameters
Name Type In Required Description
claimRequest object body optional Claim Request
Schema
{
  "name": "string"
}

Delete a claim

/api/v1/auth/claims/{id} Authorized

This endpoint Deletes a claim

Parameters
Name Type In Required Description
id string path required Claim ID

Gets Parallels Desktop active license

/api/v1/parallels_desktop/key Authorized

This endpoint returns Parallels Desktop active license

Installs API requires 3rd party tools

/api/v1/config/tools/install Authorized

This endpoint installs API requires 3rd party tools

Parameters
Name Type In Required Description
installToolsRequest object body optional Install Tools Request
Schema
{
  "all": "bool",
  "run_as": "string",
  "tools": "map[string]InstallToolsRequestItem"
}

Uninstalls API requires 3rd party tools

/api/v1/config/tools/uninstall Authorized

This endpoint uninstalls API requires 3rd party tools

Parameters
Name Type In Required Description
uninstallToolsRequest object body optional Uninstall Tools Request
Schema
{
  "all": "bool",
  "run_as": "string",
  "tools": "map[string]UninstallToolsRequestItem",
  "uninstall_dependencies": "bool"
}

Restarts the API Service

/api/v1/config/tools/restart Authorized

This endpoint restarts the API Service

Gets the Hardware Info

/api/v1/config/hardware Authorized

This endpoint returns the Hardware Info

Gets the API System Health

/api/health/system Authorized

This endpoint returns the API Health Probe

Parameters
Name Type In Required Description
full query query optional -

Gets the system logs from the disk

/api/logs Authorized

This endpoint returns the system logs from the disk

Streams the system logs via WebSocket

/api/logs/stream Authorized

This endpoint streams the system logs in real-time via WebSocket

Subscribe to event notifications via WebSocket

/api/v1/ws/subscribe Authorized

This endpoint upgrades the HTTP connection to WebSocket and subscribes to event notifications. Authentication is required via Authorization header (Bearer token) or X-Api-Key header.

Parameters
Name Type In Required Description
event_types query query optional -

Unsubscribe from specific event types

/api/v1/ws/unsubscribe Authorized

Unsubscribe an active WebSocket client from specific event types without disconnecting. The client must belong to the authenticated user.

Parameters
Name Type In Required Description
body object body optional Unsubscribe request with client ID and event types
Schema
{
  "client_id": "string",
  "event_types": "[]string",
  "user_id": "string"
}

Gets all the virtual machines

/api/v1/machines Authorized

This endpoint returns all the virtual machines

Parameters
Name Type In Required Description
filter header header optional -

Gets a virtual machine

/api/v1/machines/{id} Authorized

This endpoint returns a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Starts a virtual machine

/api/v1/machines/{id}/start Authorized

This endpoint starts a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Stops a virtual machine

/api/v1/machines/{id}/stop Authorized

This endpoint stops a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Restarts a virtual machine

/api/v1/machines/{id}/restart Authorized

This endpoint restarts a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Suspends a virtual machine

/api/v1/machines/{id}/suspend Authorized

This endpoint suspends a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Resumes a virtual machine

/api/v1/machines/{id}/resume Authorized

This endpoint resumes a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Reset a virtual machine

/api/v1/machines/{id}/reset Authorized

This endpoint reset a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Pauses a virtual machine

/api/v1/machines/{id}/pause Authorized

This endpoint pauses a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Deletes a virtual machine

/api/v1/machines/{id} Authorized

This endpoint deletes a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Get the current state of a virtual machine

/api/v1/machines/{id}/status Authorized

This endpoint returns the current state of a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID

Configures a virtual machine

/api/v1/machines/{id}/set Authorized

This endpoint configures a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
configRequest object body optional Machine Set Request
Schema
{
  "operations": "[]*VirtualMachineConfigRequestOperation",
  "owner": "string"
}

Clones a virtual machine

/api/v1/machines/{id}/clone Authorized

This endpoint clones a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
configRequest object body optional Machine Clone Request
Schema
{
  "clone_name": "string"
}

Executes a command on a virtual machine

/api/v1/machines/{id}/execute Authorized

This endpoint executes a command on a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
executeRequest object body optional Machine Execute Command Request
Schema
{
  "command": "string",
  "environment_variables": "map[string]string",
  "script": "*VirtualMachineExecuteCommandScript",
  "use_ssh": "bool",
  "use_sudo": "bool",
  "user": "string"
}

Uploads a file to a virtual machine

/api/v1/machines/{id}/upload Authorized

This endpoint executes a command on a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
executeRequest object body optional Machine Upload file Command Request
Schema
{
  "path": "string",
  "remote_path": "string"
}

Renames a virtual machine

/api/v1/machines/{id}/rename Authorized

This endpoint Renames a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
renameRequest object body optional Machine Rename Request
Schema
{
  "current_name": "string",
  "description": "string",
  "id": "string",
  "new_name": "string"
}

Registers a virtual machine

/api/v1/machines/register Authorized

This endpoint registers a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
registerRequest object body optional Machine Register Request
Schema
{
  "delay_applying_restrictions": "bool",
  "force": "bool",
  "machine_name": "string",
  "owner": "string",
  "path": "string",
  "regenerate_source_uuid": "bool",
  "uuid": "string"
}

Unregister a virtual machine

/api/v1/machines/{id}/unregister Authorized

This endpoint unregister a virtual machine

Parameters
Name Type In Required Description
id string path required Machine ID
unregisterRequest object body optional Machine Unregister Request
Schema
{
  "clean_source_uuid": "bool",
  "id": "string",
  "owner": "string"
}

Creates a virtual machine

/api/v1/machines Authorized

This endpoint creates a virtual machine

Parameters
Name Type In Required Description
createRequest object body optional New Machine Request
Schema
{
  "architecture": "string",
  "catalog_manifest": "*CreateCatalogVirtualMachineRequest",
  "name": "string",
  "owner": "string",
  "packer_template": "*CreatePackerVirtualMachineRequest",
  "start_on_create": "bool",
  "vagrant_box": "*CreateVagrantMachineRequest"
}

Gets all hosts from the orchestrator

/api/v1/orchestrator/hosts Authorized

This endpoint returns all hosts from the orchestrator

Gets a host from the orchestrator

/api/v1/orchestrator/hosts/{id} Authorized

This endpoint returns a host from the orchestrator

Parameters
Name Type In Required Description
id string path required Host ID

Gets a host hardware info from the orchestrator

/api/v1/orchestrator/hosts/{id}/hardware Authorized

This endpoint returns a host hardware info from the orchestrator

Parameters
Name Type In Required Description
id string path required Host ID

Register a Host in the orchestrator

/api/v1/orchestrator/hosts Authorized

This endpoint register a host in the orchestrator

Parameters
Name Type In Required Description
hostRequest object body optional Host Request
Schema
{
  "authentication": "*OrchestratorAuthentication",
  "description": "string",
  "host": "string",
  "port": "string",
  "prefix": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "schema": "string",
  "tags": "[]string"
}

Unregister a host from the orchestrator

/api/v1/orchestrator/hosts/{id} Authorized

This endpoint unregister a host from the orchestrator

Parameters
Name Type In Required Description
id string path required Host ID

Enable a host in the orchestrator

/api/v1/orchestrator/hosts/{id}/enable Authorized

This endpoint will enable an existing host in the orchestrator

Disable a host in the orchestrator

/api/v1/orchestrator/hosts/{id}/disable Authorized

This endpoint will disable an existing host in the orchestrator

Update a Host in the orchestrator

/api/v1/orchestrator/hosts Authorized

This endpoint updates a host in the orchestrator

Parameters
Name Type In Required Description
hostRequest object body optional Host Update Request
Schema
{
  "authentication": "*OrchestratorAuthentication",
  "description": "string",
  "host": "string",
  "port": "string",
  "prefix": "string",
  "schema": "string"
}

Get orchestrator resource overview

/api/v1/orchestrator/overview/resources Authorized

This endpoint returns orchestrator resource overview

Get orchestrator host resources

/api/v1/orchestrator/overview/{id}/resources Authorized

This endpoint returns orchestrator host resources

Parameters
Name Type In Required Description
id string path required Host ID

Get orchestrator Virtual Machines

/api/v1/orchestrator/machines Authorized

This endpoint returns orchestrator Virtual Machines

Get orchestrator Virtual Machine

/api/v1/orchestrator/machines/{id} Authorized

This endpoint returns orchestrator Virtual Machine by its ID

Deletes orchestrator virtual machine

/api/v1/orchestrator/machines/{id} Authorized

This endpoint deletes orchestrator virtual machine

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Get orchestrator virtual machine status

/api/v1/orchestrator/machines/{vmId}/status Authorized

This endpoint returns orchestrator virtual machine status

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Renames orchestrator virtual machine

/api/v1/orchestrator/machines/{id}/rename Authorized

This endpoint renames orchestrator virtual machine

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Configures orchestrator virtual machine

/api/v1/orchestrator/machines/{vmId}/set Authorized

This endpoint configures orchestrator virtual machine

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Starts orchestrator virtual machine

/api/v1/orchestrator/machines/{vmId}/start Authorized

This endpoint starts orchestrator virtual machine

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Stops orchestrator virtual machine

/api/v1/orchestrator/machines/{vmId}/stop Authorized

This endpoint sops orchestrator virtual machine

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Executes a command in a orchestrator virtual machine

/api/v1/orchestrator/machines/{vmId}/execute Authorized

This endpoint executes a command in a orchestrator virtual machine

Parameters
Name Type In Required Description
id string path required Virtual Machine ID

Get orchestrator host virtual machines

/api/v1/orchestrator/hosts/{id}/machines Authorized

This endpoint returns orchestrator host virtual machines

Parameters
Name Type In Required Description
id string path required Host ID

Get orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId} Authorized

This endpoint returns orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Deletes orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId} Authorized

This endpoint deletes orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Get orchestrator host virtual machine status

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/status Authorized

This endpoint returns orchestrator host virtual machine status

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Renames orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/rename Authorized

This endpoint renames orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Configures orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/set Authorized

This endpoint configures orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Starts orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/start Authorized

This endpoint starts orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Starts orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/stop Authorized

This endpoint starts orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Executes a command in a orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/execute Authorized

This endpoint executes a command in a orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID

Register a virtual machine in a orchestrator host

/api/v1/orchestrator/hosts/{id}/machines/register Authorized

This endpoint registers a virtual machine in a orchestrator host

Parameters
Name Type In Required Description
id string path required Host ID
request object body optional Register Virtual Machine Request
Schema
{
  "delay_applying_restrictions": "bool",
  "force": "bool",
  "machine_name": "string",
  "owner": "string",
  "path": "string",
  "regenerate_source_uuid": "bool",
  "uuid": "string"
}

Unregister a virtual machine in a orchestrator host

/api/v1/orchestrator/hosts/{id}/machines/{vmId}/unregister Authorized

This endpoint unregister a virtual machine in a orchestrator host

Parameters
Name Type In Required Description
id string path required Host ID
vmId string path required Virtual Machine ID
request object body optional Register Virtual Machine Request
Schema
{
  "clean_source_uuid": "bool",
  "id": "string",
  "owner": "string"
}

Creates a orchestrator host virtual machine

/api/v1/orchestrator/hosts/{id}/machines Authorized

This endpoint creates a orchestrator host virtual machine

Parameters
Name Type In Required Description
id string path required Host ID
request object body optional Create Virtual Machine Request
Schema
{
  "architecture": "string",
  "catalog_manifest": "*CreateCatalogVirtualMachineRequest",
  "name": "string",
  "owner": "string",
  "packer_template": "*CreatePackerVirtualMachineRequest",
  "start_on_create": "bool",
  "vagrant_box": "*CreateVagrantMachineRequest"
}

Creates a virtual machine in one of the hosts for the orchestrator

/api/v1/orchestrator/machines Authorized

This endpoint creates a virtual machine in one of the hosts for the orchestrator

Parameters
Name Type In Required Description
request object body optional Create Virtual Machine Request
Schema
{
  "architecture": "string",
  "catalog_manifest": "*CreateCatalogVirtualMachineRequest",
  "name": "string",
  "owner": "string",
  "packer_template": "*CreatePackerVirtualMachineRequest",
  "start_on_create": "bool",
  "vagrant_box": "*CreateVagrantMachineRequest"
}

Gets orchestrator host reverse proxy configuration

/api/v1/orchestrator/hosts/{id}/reverse-proxy Authorized

This endpoint returns orchestrator host reverse proxy configuration

Parameters
Name Type In Required Description
id string path required Host ID

Gets orchestrator host reverse proxy hosts

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts Authorized

This endpoint returns orchestrator host reverse proxy hosts

Parameters
Name Type In Required Description
id string path required Host ID

Gets orchestrator host reverse proxy hosts

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts/{reverse_proxy_host_id} Authorized

This endpoint returns orchestrator host reverse proxy hosts

Parameters
Name Type In Required Description
id string path required Host ID

Creates a orchestrator host reverse proxy host

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts Authorized

This endpoint creates a orchestrator host reverse proxy host

Parameters
Name Type In Required Description
request object body optional Create Host Reverse Proxy Host Request
Schema
{
  "cors": "*ReverseProxyHostCors",
  "host": "string",
  "http_routes": "[]*ReverseProxyHostHttpRoute",
  "port": "string",
  "tcp_route": "*ReverseProxyHostTcpRoute",
  "tls": "*ReverseProxyHostTls"
}

Updates an orchestrator host reverse proxy host

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts/{reverse_proxy_host_id} Authorized

This endpoint updates an orchestrator host reverse proxy host

Parameters
Name Type In Required Description
request object body optional Update Host Reverse Proxy Host Request
Schema
{
  "cors": "*ReverseProxyHostCors",
  "host": "string",
  "port": "string",
  "tls": "*ReverseProxyHostTls"
}

Deletes an orchestrator host reverse proxy host

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts/{reverse_proxy_host_id} Authorized

This endpoint deletes an orchestrator host reverse proxy host

Parameters
Name Type In Required Description
id string path required Host ID
reverse_proxy_host_id string path required Reverse Proxy Host ID

Upserts an orchestrator host reverse proxy host http route

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts/{reverse_proxy_host_id}/http_routes Authorized

This endpoint upserts an orchestrator host reverse proxy host http route

Parameters
Name Type In Required Description
request object body optional Upsert Host Reverse Proxy Host Http Routes Request
Schema
{
  "cors": "*ReverseProxyHostCors",
  "host": "string",
  "port": "string",
  "tls": "*ReverseProxyHostTls"
}

Deletes an orchestrator host reverse proxy host http route

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts/{reverse_proxy_host_id}/http_routes/{route_id} Authorized

This endpoint deletes an orchestrator host reverse proxy host http route

Parameters
Name Type In Required Description
id string path required Host ID
reverse_proxy_host_id string path required Reverse Proxy Host ID
route_id string path required Route ID

Update an orchestrator host reverse proxy host tcp route

/api/v1/orchestrator/hosts/{id}/reverse-proxy/hosts/{reverse_proxy_host_id}/tcp_route Authorized

This endpoint updates an orchestrator host reverse proxy host tcp route

Parameters
Name Type In Required Description
request object body optional Update Host Reverse Proxy Host tcp Routes Request
Schema
{
  "cors": "*ReverseProxyHostCors",
  "host": "string",
  "port": "string",
  "tls": "*ReverseProxyHostTls"
}

Restarts orchestrator host reverse proxy

/api/v1/orchestrator/hosts/{id}/reverse-proxy/restart Authorized

This endpoint restarts orchestrator host reverse proxy

Parameters
Name Type In Required Description
id string path required Host ID

Enables orchestrator host reverse proxy

/api/v1/orchestrator/hosts/{id}/reverse-proxy/enable Authorized

This endpoint enables orchestrator host reverse proxy

Parameters
Name Type In Required Description
id string path required Host ID

Disables orchestrator host reverse proxy

/api/v1/orchestrator/hosts/{id}/reverse-proxy/disable Authorized

This endpoint disables orchestrator host reverse proxy

Parameters
Name Type In Required Description
id string path required Host ID

Gets orchestrator host catalog cache

/api/v1/orchestrator/hosts/{id}/catalog/cache Authorized

This endpoint returns orchestrator host catalog cache

Parameters
Name Type In Required Description
id string path required Host ID

Deletes an orchestrator host cache items

/api/v1/orchestrator/hosts/{id}/catalog/cache Authorized

This endpoint deletes an orchestrator host cache items

Parameters
Name Type In Required Description
id string path required Host ID

Deletes an orchestrator host cache item and all its children

/api/v1/orchestrator/hosts/{id}/catalog/cache/{catalog_id} Authorized

This endpoint deletes an orchestrator host cache item and all its children

Parameters
Name Type In Required Description
id string path required Host ID
catalog_id string path required Catalog ID

Deletes an orchestrator host cache item and all its children

/api/v1/orchestrator/hosts/{id}/catalog/cache/{catalog_id}/{catalog_version} Authorized

This endpoint deletes an orchestrator host cache item and all its children

Parameters
Name Type In Required Description
id string path required Host ID
catalog_id string path required Catalog ID
catalog_version string path required Catalog Version

Gets the orchestrator host system logs from the disk

/api/v1/orchestrator/hosts/{id}/logs Authorized

This endpoint returns the orchestrator host system logs from the disk

Parameters
Name Type In Required Description
id string path required Host ID

Streams the system logs via WebSocket

/api/logs/stream Authorized

This endpoint streams the system logs in real-time via WebSocket

Gets all the packer templates

/api/v1/templates/packer Authorized

This endpoint returns all the packer templates

Gets a packer template

/api/v1/templates/packer/{id} Authorized

This endpoint returns a packer template

Parameters
Name Type In Required Description
id string path required Packer Template ID

Creates a packer template

/api/v1/templates/packer Authorized

This endpoint creates a packer template

Parameters
Name Type In Required Description
createPackerTemplateRequest object body optional Create Packer Template Request
Schema
{
  "addons": "[]string",
  "created_at": "string",
  "defaults": "map[string]string",
  "description": "string",
  "id": "string",
  "internal": "bool",
  "name": "string",
  "packer_folder": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "specs": "map[string]string",
  "updated_at": "string",
  "variables": "map[string]string"
}

Updates a packer template

/api/v1/templates/packer/{id} Authorized

This endpoint updates a packer template

Parameters
Name Type In Required Description
createPackerTemplateRequest object body optional Update Packer Template Request
Schema
{
  "addons": "[]string",
  "created_at": "string",
  "defaults": "map[string]string",
  "description": "string",
  "id": "string",
  "internal": "bool",
  "name": "string",
  "packer_folder": "string",
  "required_claims": "[]string",
  "required_roles": "[]string",
  "specs": "map[string]string",
  "updated_at": "string",
  "variables": "map[string]string"
}
id string path required Packer Template ID

Deletes a packer template

/api/v1/templates/packer/{id} Authorized

This endpoint deletes a packer template

Parameters
Name Type In Required Description
id string path required Packer Template ID

Gets reverse proxy configuration

/api/v1/reverse-proxy Authorized

This endpoint returns the reverse proxy configuration

Gets all the reverse proxy hosts

/api/v1/reverse-proxy/hosts Authorized

This endpoint returns all the reverse proxy hosts

Gets all the reverse proxy host

/api/v1/reverse-proxy/hosts/{id} Authorized

This endpoint returns a reverse proxy host

Parameters
Name Type In Required Description
id string path required Reverse Proxy Host ID

Creates a reverse proxy host

/api/v1/reverse-proxy/hosts Authorized

This endpoint creates a reverse proxy host

Parameters
Name Type In Required Description
reverse_proxy_create_request object body optional Reverse Host Request
Schema
{
  "cors": "*ReverseProxyHostCors",
  "host": "string",
  "http_routes": "[]*ReverseProxyHostHttpRoute",
  "port": "string",
  "tcp_route": "*ReverseProxyHostTcpRoute",
  "tls": "*ReverseProxyHostTls"
}

Updates a reverse proxy host

/api/v1/reverse-proxy/hosts/{id} Authorized

This endpoint creates a reverse proxy host

Parameters
Name Type In Required Description
reverse_proxy_update_request object body optional Reverse Host Request
Schema
{
  "cors": "*ReverseProxyHostCors",
  "host": "string",
  "port": "string",
  "tls": "*ReverseProxyHostTls"
}

Delete a a reverse proxy host

/api/v1/reverse-proxy/hosts/{id} Authorized

This endpoint Deletes a reverse proxy host

Parameters
Name Type In Required Description
id string path required Reverse Proxy Host ID

Creates or updates a reverse proxy host HTTP route

/api/v1/reverse-proxy/hosts/{id}/http_route Authorized

This endpoint creates or updates a reverse proxy host HTTP route

Parameters
Name Type In Required Description
reverse_proxy_http_route_request object body optional Reverse Host Request
Schema
{
  "path": "string",
  "pattern": "string",
  "request_headers": "map[string]string",
  "response_headers": "map[string]string",
  "schema": "string",
  "target_host": "string",
  "target_port": "string",
  "target_vm_id": "string"
}

Delete a a reverse proxy host HTTP route

/api/v1/reverse-proxy/hosts/{id}/http_routes/{http_route_id} Authorized

This endpoint Deletes a reverse proxy host HTTP route

Parameters
Name Type In Required Description
id string path required Reverse Proxy Host ID
http_route_id string path required Reverse Proxy Host HTTP Route ID

Updates a reverse proxy host TCP route

/api/v1/reverse-proxy/hosts/{id}/http_routes Authorized

This endpoint updates a reverse proxy host TCP route

Parameters
Name Type In Required Description
reverse_proxy_tcp_route_request object body optional Reverse Host Request
Schema
{
  "target_host": "string",
  "target_port": "string",
  "target_vm_id": "string"
}

Restarts the reverse proxy

/api/v1/reverse-proxy/restart Authorized

This endpoint will restart the reverse proxy

Enable the reverse proxy

/api/v1/reverse-proxy/enable Authorized

This endpoint will enable the reverse proxy

Disable the reverse proxy

/api/v1/reverse-proxy/disable Authorized

This endpoint will disable the reverse proxy

Gets all the roles

/api/v1/auth/roles Authorized

This endpoint returns all the roles

Gets a role

/api/v1/auth/roles/{id} Authorized

This endpoint returns a role

Parameters
Name Type In Required Description
id string path required Role ID

Gets a role

/api/v1/auth/roles Authorized

This endpoint returns a role

Parameters
Name Type In Required Description
roleRequest object body optional Role Request
Schema
{
  "name": "string"
}

Delete a role

/api/v1/auth/roles/{id} Authorized

This endpoint deletes a role

Parameters
Name Type In Required Description
id string path required Role ID

Gets all the users

/api/v1/auth/users Authorized

This endpoint returns all the users

Gets a user

/api/v1/auth/users/{id} Authorized

This endpoint returns a user

Parameters
Name Type In Required Description
id string path required User ID

Creates a user

/api/v1/auth/users Authorized

This endpoint creates a user

Parameters
Name Type In Required Description
body object body optional User
Schema
{
  "claims": "[]string",
  "email": "string",
  "is_super_user": "bool",
  "name": "string",
  "password": "string",
  "roles": "[]string",
  "username": "string"
}

Deletes a user

/api/v1/auth/users/{id} Authorized

This endpoint deletes a user

Parameters
Name Type In Required Description
id string path required User ID

Update a user

/api/v1/auth/users/{id} Authorized

This endpoint updates a user

Parameters
Name Type In Required Description
body object body optional User
Schema
{
  "claims": "[]string",
  "email": "string",
  "is_super_user": "bool",
  "name": "string",
  "password": "string",
  "roles": "[]string",
  "username": "string"
}

Gets all the roles for a user

/api/v1/auth/users/{id}/roles Authorized

This endpoint returns all the roles for a user

Parameters
Name Type In Required Description
id string path required User ID

Adds a role to a user

/api/v1/auth/users/{id}/roles Authorized

This endpoint adds a role to a user

Parameters
Name Type In Required Description
id string path required User ID
body object body optional Role Name
Schema
{
  "name": "string"
}

Removes a role from a user

/api/v1/auth/users/{id}/roles/{role_id} Authorized

This endpoint removes a role from a user

Parameters
Name Type In Required Description
id string path required User ID
role_id string path required Role ID

Gets all the claims for a user

/api/v1/auth/users/{id}/claims Authorized

This endpoint returns all the claims for a user

Parameters
Name Type In Required Description
id string path required User ID

Adds a claim to a user

/api/v1/auth/users/{id}/claims Authorized

This endpoint adds a claim to a user

Parameters
Name Type In Required Description
id string path required User ID
body object body optional Claim Name
Schema
{
  "name": "string"
}

Removes a claim from a user

/api/v1/auth/users/{id}/claims/{claim_id} Authorized

This endpoint removes a claim from a user

Parameters
Name Type In Required Description
id string path required User ID
claim_id string path required Claim ID

Gets the API Health Probe

/api/health/probe Authorized

This endpoint returns the API Health Probe