• Applicable Software: MokonyxBackup
  • Min Version Number: 01.00.01
  • Max Version Number: Not Applicable

Drive MokonyxBackup remotely over a token-authenticated REST API that's wire-compatible with the mcp_mokonyxbackup MCP server. Start backups, list and download records, manage profiles and backup destinations, and create or inject content snapshots — from your own tooling or straight from an AI assistant.

REST API Endpoints

Routes are registered by plg_webservices_mokonyxbackup and are wire-compatible with the mcp_mokonyxbackup 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/json

Base URL: /api/index.php/v1/mokonyxbackup/.... Each action also enforces a component ACL permission; a failed check returns HTTP 403.

Backup Endpoints

MethodEndpointDescription
POST/mokonyxbackup/backupStart a backup (body: profile + description, both optional)
GET/mokonyxbackup/backupsList backup records
GET/mokonyxbackup/backups/:idGet a single record
DELETE/mokonyxbackup/backup/:idDelete a backup record + archive
GET/mokonyxbackup/backup/:id/downloadDownload the archive (binary stream)
GET/mokonyxbackup/profilesList backup profiles (credentials masked)

Backup records also expose remote_results (the per-destination delivery outcome), base_record_id (the differential-backup base link), and checksum (archive integrity).

Destination Endpoints

Manage a profile's Destinations — the local and remote backup targets stored in #__mokonyxbackup_remotes (previously admin-only, now fully scriptable). Transport secrets (FTP/SFTP/S3/Google Drive passwords, keys, tokens) are masked on output and merge-preserved on update (echoing back the ******** mask can't blank them). All destination routes require the core.manage permission.

MethodEndpointDescription
GET/mokonyxbackup/destinations?profile=:idList a profile's destinations
GET/mokonyxbackup/destination/:idGet a single destination
POST/mokonyxbackup/destinationCreate a destination
PATCH/mokonyxbackup/destination/:idUpdate a destination
DELETE/mokonyxbackup/destination/:idDelete a destination
POST/mokonyxbackup/destination/:id/toggleEnable / disable a destination
POST/mokonyxbackup/destination/:id/restore-scriptDeploy the standalone restore.php through this destination

Snapshot Endpoints

Content snapshots capture selected content types (articles, categories, modules) as portable JSON. All require the mokonyxbackup.snapshot.manage permission.

MethodEndpointDescription
GET/mokonyxbackup/snapshotsList snapshots (paginated)
POST/mokonyxbackup/snapshotCreate a snapshot
POST/mokonyxbackup/snapshot/:id/restoreRestore from a snapshot
POST/mokonyxbackup/snapshot/injectInject a payload directly (master → slave)
DELETE/mokonyxbackup/snapshot/:idDelete a snapshot + its data file
GET/mokonyxbackup/snapshot/:id/downloadDownload the snapshot JSON

MCP Server

The mcp_mokonyxbackup MCP server is wire-compatible with these endpoints, so an AI assistant can start backups, list records, manage profiles and destinations, and create or inject content snapshots remotely.

CLI

php cli/joomla.php mokonyxbackup:run --profile=1
php cli/joomla.php mokonyxbackup:run --profile=2 --description="Pre-deploy"