In June 2024, Axcient announced a public API for their x360Recover backup product is in early access.
Currently Axcient is accepting requests for access to the production environment, and offers a mock / dev environment, Swagger Editor and OpenAPI schema at https://developer.axcient.com/.
Version 0.4.0 updated October 19, 2024. Aligns with version 0.3.1 of API.
Version 0.4.0 adds new endpoints and resolves several issues.
Manual and automated testing against the mock and prod environments is successful. Please raise issues as found.
Compatibility: PowerShell 7 Core. OS Agnostic, works in Windows console, PS Core / Azure Function Apps
Install-Module AxcientAPI
or Install-PSResource AxcientAPI
PS > Import-Module AxcientAPI
PS > Initialize-AxcientAPI -ApiKey 'yourlongkey' # -MockServer if testing against the Mock endpoint
PS > Get-Organization
id_ : 26
name : Spacely Sprockets
active : True
brand_id : SPACELY
salesforce_id : 8675309
objectschema : organization
Function | Synopsis |
---|---|
Get-Appliance | Get information about an Appliance. |
Get-BackupJob | Get backup job information for a device. |
Get-BackupJobHistory | Get history of runs for a backup job. |
Get-Client | Retrieves information on a client or clients |
Get-D2CAgentToken | Gets a Direct-to-Cloud (D2C) agent token for a client and vault. |
Get-Device | Retrieves information about devices. |
Get-DeviceAutoVerify | Retrieves auto-verify information for one or more devices. |
Get-DeviceRestorePoint | Retrieves restore points for a device. |
Get-Organization | Retrieves information about the partner organization. |
Get-Vault | Get information about vaults |
Get-VaultThreshold | Retrieves a threshold value for a vault. |
Initialize-AxcientAPI | Sets API key, server URL, and error handling for AxcientAPI module functions. |
Set-VaultThreshold | Sets a threshold value for a vault. |
Due to limitations in the API (as of the July 2024 release) two sets of custom properties are included in objects handled by this module.
- objectschema identifies the type of object to improve error-catching and pipeline compatibility.
- parent_id adds properties to identify the parents of an object, when available (e.g.
client_id
,device_id
).
You can read more about the implementation of each at the links above.
- Devices do not carry client ID in the object, making them hard to pipe Currently implemented by the module, not the API
- Consider custom objects / classes
- Testing with Pester [Core testing complete]