pub struct Client { /* private fields */ }Expand description
Client for Alien Manager API
Control plane for Alien applications. Manages deployments, releases, commands, and telemetry.
Version: 1.0.0
Implementations§
Source§impl Client
impl Client
Sourcepub fn new(baseurl: &str) -> Self
pub fn new(baseurl: &str) -> Self
Create a new client.
baseurl is the base URL provided to the internal
reqwest::Client, and should include a scheme and hostname,
as well as port and a path stem if applicable.
Sourcepub fn new_with_client(baseurl: &str, client: Client) -> Self
pub fn new_with_client(baseurl: &str, client: Client) -> Self
Construct a new client with an existing reqwest::Client,
allowing more control over its configuration.
baseurl is the base URL provided to the internal
reqwest::Client, and should include a scheme and hostname,
as well as port and a path stem if applicable.
Source§impl Client
impl Client
Sourcepub fn health(&self) -> Health<'_>
pub fn health(&self) -> Health<'_>
Sends a GET request to /health
let response = client.health()
.send()
.await;Sourcepub fn create_command(&self) -> CreateCommand<'_>
pub fn create_command(&self) -> CreateCommand<'_>
Create a new command
Sends a POST request to /v1/commands
let response = client.create_command()
.body(body)
.send()
.await;Sourcepub fn acquire_leases(&self) -> AcquireLeases<'_>
pub fn acquire_leases(&self) -> AcquireLeases<'_>
Acquire leases for polling deployments
Sends a POST request to /v1/commands/leases
let response = client.acquire_leases()
.body(body)
.send()
.await;Sourcepub fn release_lease(&self) -> ReleaseLease<'_>
pub fn release_lease(&self) -> ReleaseLease<'_>
Release a lease
Sends a POST request to /v1/commands/leases/{lease_id}/release
Arguments:
lease_id: Lease identifier
let response = client.release_lease()
.lease_id(lease_id)
.send()
.await;Sourcepub fn get_command_status(&self) -> GetCommandStatus<'_>
pub fn get_command_status(&self) -> GetCommandStatus<'_>
Get command status
Sends a GET request to /v1/commands/{command_id}
Arguments:
command_id: Command identifier
let response = client.get_command_status()
.command_id(command_id)
.send()
.await;Sourcepub fn get_command_payload(&self) -> GetCommandPayload<'_>
pub fn get_command_payload(&self) -> GetCommandPayload<'_>
Get command payload (params and response) from KV
Returns the raw params and response data stored in the manager’s KV store. Returns 404 if neither params nor response exist for this command.
Sends a GET request to /v1/commands/{command_id}/payload
Arguments:
command_id: Command identifier
let response = client.get_command_payload()
.command_id(command_id)
.send()
.await;Sourcepub fn store_command_payload(&self) -> StoreCommandPayload<'_>
pub fn store_command_payload(&self) -> StoreCommandPayload<'_>
Store command payload data (params and/or response) directly into KV
Bypasses the command registry — useful for populating demo data or migrating payload data. Does not validate command existence or state.
Sends a PUT request to /v1/commands/{command_id}/payload
Arguments:
command_id: Command identifierbody
let response = client.store_command_payload()
.command_id(command_id)
.body(body)
.send()
.await;Sourcepub fn submit_response(&self) -> SubmitResponse<'_>
pub fn submit_response(&self) -> SubmitResponse<'_>
Submit response from deployment
Sends a PUT request to /v1/commands/{command_id}/response
Arguments:
command_id: Command identifierbody
let response = client.submit_response()
.command_id(command_id)
.body(body)
.send()
.await;Sourcepub fn upload_complete(&self) -> UploadComplete<'_>
pub fn upload_complete(&self) -> UploadComplete<'_>
Mark upload as complete
Sends a POST request to /v1/commands/{command_id}/upload-complete
Arguments:
command_id: Command identifierbody
let response = client.upload_complete()
.command_id(command_id)
.body(body)
.send()
.await;Sourcepub fn list_deployment_groups(&self) -> ListDeploymentGroups<'_>
pub fn list_deployment_groups(&self) -> ListDeploymentGroups<'_>
Sends a GET request to /v1/deployment-groups
let response = client.list_deployment_groups()
.send()
.await;Sourcepub fn create_deployment_group(&self) -> CreateDeploymentGroup<'_>
pub fn create_deployment_group(&self) -> CreateDeploymentGroup<'_>
Sends a POST request to /v1/deployment-groups
let response = client.create_deployment_group()
.body(body)
.send()
.await;Sourcepub fn get_deployment_group(&self) -> GetDeploymentGroup<'_>
pub fn get_deployment_group(&self) -> GetDeploymentGroup<'_>
Sends a GET request to /v1/deployment-groups/{id}
Arguments:
id: Deployment group ID
let response = client.get_deployment_group()
.id(id)
.send()
.await;Sourcepub fn create_deployment_group_token(&self) -> CreateDeploymentGroupToken<'_>
pub fn create_deployment_group_token(&self) -> CreateDeploymentGroupToken<'_>
Sends a POST request to /v1/deployment-groups/{id}/tokens
Arguments:
id: Deployment group ID
let response = client.create_deployment_group_token()
.id(id)
.send()
.await;Sourcepub fn list_deployments(&self) -> ListDeployments<'_>
pub fn list_deployments(&self) -> ListDeployments<'_>
Sends a GET request to /v1/deployments
Arguments:
deployment_group_id: Filter by deployment group IDinclude: Include related resources (e.g. deploymentGroup)
let response = client.list_deployments()
.deployment_group_id(deployment_group_id)
.include(include)
.send()
.await;Sourcepub fn create_deployment(&self) -> CreateDeployment<'_>
pub fn create_deployment(&self) -> CreateDeployment<'_>
Sends a POST request to /v1/deployments
let response = client.create_deployment()
.body(body)
.send()
.await;Sourcepub fn get_deployment(&self) -> GetDeployment<'_>
pub fn get_deployment(&self) -> GetDeployment<'_>
Sends a GET request to /v1/deployments/{id}
Arguments:
id: Deployment ID
let response = client.get_deployment()
.id(id)
.send()
.await;Sourcepub fn delete_deployment(&self) -> DeleteDeployment<'_>
pub fn delete_deployment(&self) -> DeleteDeployment<'_>
Sends a DELETE request to /v1/deployments/{id}
Arguments:
id: Deployment IDforce: Force delete without running cleanup (immediately removes record)
let response = client.delete_deployment()
.id(id)
.force(force)
.send()
.await;Sourcepub fn get_deployment_info(&self) -> GetDeploymentInfo<'_>
pub fn get_deployment_info(&self) -> GetDeploymentInfo<'_>
Sends a GET request to /v1/deployments/{id}/info
Arguments:
id: Deployment ID
let response = client.get_deployment_info()
.id(id)
.send()
.await;Sourcepub fn redeploy(&self) -> Redeploy<'_>
pub fn redeploy(&self) -> Redeploy<'_>
Sends a POST request to /v1/deployments/{id}/redeploy
Arguments:
id: Deployment ID
let response = client.redeploy()
.id(id)
.send()
.await;Sourcepub fn retry_deployment(&self) -> RetryDeployment<'_>
pub fn retry_deployment(&self) -> RetryDeployment<'_>
Sends a POST request to /v1/deployments/{id}/retry
Arguments:
id: Deployment ID
let response = client.retry_deployment()
.id(id)
.send()
.await;Sourcepub fn initialize(&self) -> Initialize<'_>
pub fn initialize(&self) -> Initialize<'_>
Sends a POST request to /v1/initialize
let response = client.initialize()
.body(body)
.send()
.await;Sourcepub fn create_release(&self) -> CreateRelease<'_>
pub fn create_release(&self) -> CreateRelease<'_>
Sends a POST request to /v1/releases
let response = client.create_release()
.body(body)
.send()
.await;Sourcepub fn get_latest_release(&self) -> GetLatestRelease<'_>
pub fn get_latest_release(&self) -> GetLatestRelease<'_>
Sends a GET request to /v1/releases/latest
let response = client.get_latest_release()
.send()
.await;Sourcepub fn get_release(&self) -> GetRelease<'_>
pub fn get_release(&self) -> GetRelease<'_>
Sends a GET request to /v1/releases/{id}
Arguments:
id: Release ID
let response = client.get_release()
.id(id)
.send()
.await;Sourcepub fn resolve_credentials(&self) -> ResolveCredentials<'_>
pub fn resolve_credentials(&self) -> ResolveCredentials<'_>
Sends a POST request to /v1/resolve-credentials
let response = client.resolve_credentials()
.body(body)
.send()
.await;Sourcepub fn agent_sync(&self) -> AgentSync<'_>
pub fn agent_sync(&self) -> AgentSync<'_>
Sends a POST request to /v1/sync
let response = client.agent_sync()
.body(body)
.send()
.await;Sourcepub fn acquire(&self) -> Acquire<'_>
pub fn acquire(&self) -> Acquire<'_>
Sends a POST request to /v1/sync/acquire
let response = client.acquire()
.body(body)
.send()
.await;Sourcepub fn reconcile(&self) -> Reconcile<'_>
pub fn reconcile(&self) -> Reconcile<'_>
Sends a POST request to /v1/sync/reconcile
let response = client.reconcile()
.body(body)
.send()
.await;