REST API Endpoints
Routes are registered by plg_webservices_mokosuitebackup and are wire-compatible with the mcp_mokosuitebackup MCP server. The API Application and the Web Services plugin must be enabled. All routes require authentication — send a Joomla API token in the X-Joomla-Token header (or a Bearer token):
X-Joomla-Token: <your-api-token>
Accept: application/jsonBase URL: /api/index.php/v1/mokosuitebackup/.... Each action also enforces a component ACL permission; a failed check returns HTTP 403.
Backup Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /mokosuitebackup/backup | Start a backup (body: profile + description, both optional) |
| GET | /mokosuitebackup/backups | List backup records |
| GET | /mokosuitebackup/backups/:id | Get a single record |
| DELETE | /mokosuitebackup/backup/:id | Delete a backup record + archive |
| GET | /mokosuitebackup/backup/:id/download | Download the archive (binary stream) |
| GET | /mokosuitebackup/profiles | List backup profiles (credentials masked) |
Snapshot Endpoints
Content snapshots capture selected content types (articles, categories, modules) as portable JSON. All require the mokosuitebackup.snapshot.manage permission.
| Method | Endpoint | Description |
|---|---|---|
| GET | /mokosuitebackup/snapshots | List snapshots (paginated) |
| POST | /mokosuitebackup/snapshot | Create a snapshot |
| POST | /mokosuitebackup/snapshot/:id/restore | Restore from a snapshot |
| POST | /mokosuitebackup/snapshot/inject | Inject a payload directly (master → slave) |
| DELETE | /mokosuitebackup/snapshot/:id | Delete a snapshot + its data file |
| GET | /mokosuitebackup/snapshot/:id/download | Download the snapshot JSON |
MCP Server
The mcp_mokosuitebackup MCP server is wire-compatible with these endpoints, so an AI assistant can start backups, list records, manage profiles, and create or inject content snapshots remotely.
CLI
php cli/joomla.php mokosuitebackup:run --profile=1
php cli/joomla.php mokosuitebackup:run --profile=2 --description="Pre-deploy"