Axcient
Overview
Axcient is a backup, DR, and SaaS-protection vendor for MSPs. Bumblebee connects to two Axcient product APIs through a single API key:
- x360Cloud — SaaS backup for Microsoft 365 and Google Workspace (mailboxes, drives, sites, shared drives, backup statuses)
- x360Recover — image-based backup, disaster recovery, and replication (appliances, vaults, devices, restore points, jobs)
The integration exposes one generic axcient_cloud_request and
axcient_recover_request tool. The agent picks the endpoint (e.g.
/client, /vault, /device/{id}/restore_point) and query parameters
based on the request. Both APIs are read-only for normal workflows.
Prerequisites & Setup
Before setting up the Axcient integration, you need:
- An Axcient partner portal account
- Portal access with permission to manage API keys
Create an API Key in the Axcient Portal
- Sign in to your Axcient partner portal
- Open Settings → API Keys (Dashboard → API Keys)
- Click + Add API Key, give it a descriptive name (e.g. Bumblebee)
- Copy the value immediately — Axcient masks it after creation
Vendor documentation:
- Public APIs overview: axcient.com/blog/axcient-public-apis
- x360Cloud API reference: help.axcient.com/Axcient-x360Cloud/x360cloud-public-api
- x360Recover API reference: help.axcient.com/en_US/115000502027-Axcient-x360Recover
Configure in Bumblebee
- Go to the Integrations page in Bumblebee
- Select Axcient
- Paste your API Key
- Save the configuration
Available Tools
Core (2 tools)
- axcient_cloud_request — Thin wrapper around the X360Cloud REST API.
Required: method (str, e.g.
"GET"), path (str, e.g."/client"). Optional: query_params (object), body (object). - axcient_recover_request — Thin wrapper around the X360Recover REST API. Same signature.
The agent selects the endpoint and parameters based on the workflow.
X360Cloud endpoints
| Resource | List | Get-by-id | Notable filters |
|---|---|---|---|
| Client orgs | /client | /client/{clientId} | type, backup_status |
| Backup status | /client/{clientId}/backup_status | — | backup_status, from, to |
| Users (all orgs) | /client/users | — | status, selected_for_protection, email_contains |
| Users (per org) | /client/{clientId}/user | /client/{clientId}/user/{userId} | — |
| Shared resources (all orgs) | /client/shared-resources | — | resource_type, status, url_contains |
| Shared resources (per org) | /client/{clientId}/shared_resource | /client/{clientId}/shared_resource/{id} | — |
Pagination: page (0-indexed) + page_size (default 20).
X360Recover endpoints
| Resource | List | Get-by-id | Notable filters |
|---|---|---|---|
| Organization | /organization | — | — |
| Clients | /client | /client/{client_id} | — |
| Vaults | /vault | /vault/{vault_id} | — |
| Vault thresholds | — | /vault/{vault_id}/threshold/connectivity | (also POST to set) |
| Appliances | /appliance | /appliance/{appliance_id} | include_devices |
| Appliances (per client) | /client/{client_id}/appliance | — | — |
| Devices | /device | /device/{device_id} | localPsId, limit, offset |
| Devices (per client) | /client/{client_id}/device | — | serviceId, d2c_only |
| Restore points | /device/{device_id}/restore_point | — | max_timestamp, limit |
| Restore points (ASIO) | /device/asio_endpoint_id/{id}/restore_point | — | max_timestamp, limit |
| AutoVerify | /device/{device_id}/autoverify | — | — |
| Jobs (per device) | /client/{client_id}/device/{device_id}/job | /client/{cid}/device/{did}/job/{job_id} | — |
| Job history | /client/{cid}/device/{did}/job/{job_id}/history | — | limit, offset, starttime_begin, status |
| Client usage | /client/{client_id}/usage | — | — |
| Users | /user | /user/{user_id} | — |
Pagination: limit (max 500) + offset for paginated endpoints. List
endpoints like /vault and /client are not paginated.
Example calls
# X360Cloud — configured client organizations
axcient_cloud_request("GET", "/client", {"type": "Configured", "page": 0, "page_size": 20})
# X360Cloud — backup statuses for one client between two dates
axcient_cloud_request("GET", "/client/sandmanandpartners/backup_status",
{"from": "2024-12-01", "to": "2025-01-01"})
# X360Recover — vaults in the org
axcient_recover_request("GET", "/vault")
# X360Recover — recent restore points for a device
axcient_recover_request("GET", "/device/456/restore_point", {"limit": 10})
# X360Recover — failed jobs in the last week
axcient_recover_request("GET",
"/client/789/device/456/job/JOB-1/history",
{"status": "failed", "starttime_begin": 1730281189})