Bahariye API
Ye endpoint doosre applications aur integrations dwara istemal ke liye design kiye gaye hain, misaal ke taur par Homepage.
Samagra Saar Prapt Karen - /api/summary
-
Endpoint:
/api/summary -
Method: GET
-
Description: Sabhi servers par sabhi backup operations ka ek saar prapt karta hai.
-
Response:
{"totalServers": 3,"totalBackupsRuns": 9,"totalBackups": 9,"totalUploadedSize": 2397229507,"totalStorageUsed": 43346796938,"totalBackupSize": 126089687807,"overdueBackupsCount": 2,"secondsSinceLastBackup": 7200} -
Truti Responses:
500: Saar data prapt karne mein server truti
-
Notes:
- Sanskaran 0.5.x mein, field
totalBackupedSizekototalBackupSizese badla gaya tha - Sanskaran 0.7.x mein, field
totalMachineskototalServersse badla gaya tha - Field
overdueBackupsCountabhi overdue backups ki sankhya dikhata hai - Field
secondsSinceLastBackupsabhi servers par antim backup ke baad ka samay seconds mein dikhata hai - Data prapt karne mein vifalta hone par zeros ke saath fallback response deta hai
- Note: Aantarik dashboard istemal ke liye,
/api/dashboardka istemal karne par vichar karen jo is data ke saath atirikt jaankaaree bhi shamil karta hai
- Sanskaran 0.5.x mein, field
Antim Backup Prapt Karen - /api/lastbackup/:serverId
- Endpoint:
/api/lastbackup/:serverId - Method: GET
- Description: Ek vishisht server ke liye antim backup jaankaaree prapt karta hai.
- Parameters:
serverId: server identifier (ID ya naam)
Note
Server identifier URL Encoded hona chahiye.
-
Response:
{"server": {"id": "unique-server-id","name": "Server Name","backup_name": "Backup Name","backup_id": "backup-id","created_at": "2024-03-20T10:00:00Z"},"latest_backup": {"id": "backup-id","server_id": "unique-server-id","name": "Backup Name","date": "2024-03-20T10:00:00Z","status": "Success","warnings": 0,"errors": 0,"messages": 150,"fileCount": 249426,"fileSize": 113395849938,"uploadedSize": 331318892,"duration": "00:38:31","duration_seconds": 2311.6018052,"durationInMinutes": 38.52669675333333,"knownFileSize": 27203688543,"backup_list_count": 10,"messages_array": ["message1", "message2"],"warnings_array": ["warning1"],"errors_array": [],"available_backups": ["v1", "v2", "v3"]},"status": 200} -
Truti Responses:
404: Server nahi mila500: Antarik server truti
-
Notes:
- Sanskaran 0.7.x mein, response object key
machineseservermein badal gaya tha - Server identifier ID ya naam ho sakta hai
- Agar koi backup nahi hai to antim_backup ke liye null deta hai
- Caching rokne ke liye cache control headers shamil hain
- Sanskaran 0.7.x mein, response object key
Antim Backups Prapt Karen - /api/lastbackups/:serverId
- Endpoint:
/api/lastbackups/:serverId - Method: GET
- Description: Ek vishisht server par sabhi configure kiye gaye backups (jaise 'File', 'Database') ke liye antim backup jaankaaree prapt karta hai.
- Parameters:
serverId: server identifier (ID ya naam)
Note
Server identifier URL Encoded hona chahiye.
-
Response:
{"server": {"id": "unique-server-id","name": "Server Name","backup_name": "Default Backup","backup_id": "backup-id","created_at": "2024-03-20T10:00:00Z"},"latest_backups": [{"id": "backup1","server_id": "unique-server-id","name": "Files","date": "2024-03-20T10:00:00Z","status": "Success","warnings": 0,"errors": 0,"messages": 150,"fileCount": 249426,"fileSize": 113395849938,"uploadedSize": 331318892,"duration": "00:38:31","duration_seconds": 2311.6018052,"durationInMinutes": 38.52669675333333,"knownFileSize": 27203688543,"backup_list_count": 10,"messages_array": "[\"message1\", \"message2\"]","warnings_array": "[\"warning1\"]","errors_array": "[]","available_backups": ["v1", "v2", "v3"]},{"id": "backup2","server_id": "unique-server-id","name": "Databases","date": "2024-03-20T11:00:00Z","status": "Success","warnings": 1,"errors": 0,"messages": 75,"fileCount": 125000,"fileSize": 56789012345,"uploadedSize": 123456789,"duration": "00:25:15","duration_seconds": 1515.1234567,"durationInMinutes": 25.25205761166667,"knownFileSize": 12345678901,"backup_list_count": 5,"messages_array": ["message1"],"warnings_array": ["warning1"],"errors_array": [],"available_backups": ["v1", "v2"]}],"backup_jobs_count": 2,"backup_names": ["Files", "Databases"],"status": 200} -
Truti Responses:
404: Server nahi mila500: Antarik server truti
-
Notes:
- Sanskaran 0.7.x mein, response object key
machineseservermein badal gaya tha, aur fieldbackup_types_countka naam badalkarbackup_jobs_countkar diya gaya tha - Server identifier ID ya naam ho sakta hai
- Server ke paas har backup job (backup_name) ke liye antim backup deta hai
/api/lastbackup/:serverIdke vipreet, jo server ka kewal sabse haal hi mein ek backup deta hai (backup job se swatantra)- Caching rokne ke liye cache control headers shamil hain
- Sanskaran 0.7.x mein, response object key
Backup Data Upload Karen - /api/upload
-
Endpoint:
/api/upload -
Method: POST
-
Description: Ek server ke liye backup operation data upload karta hai. Duplicate backup run detection ka samarthan karta hai aur suchnaayein bhejta hai.
-
Request Body: Duplicati dwara bheja gaya JSON nimnalikhit options ke saath:
--send-http-url=http://my.local.server:9666/api/upload--send-http-result-output-format=Json--send-http-log-level=Information -
Response:
{"success": true} -
Truti Responses:
400: Extra ya Data sections mein avashyak fields nahi hain, ya avaidh MainOperation409: Duplicate backup data (andekha kiya gaya)500: Backup data process karne mein server truti
-
Dhyaan Dein:
- Keval backup operations process karta hai (MainOperation "Backup" hona chahiye)
- Extra section mein avashyak fields validate karta hai: machine-id, machine-name, backup-name, backup-id
- Data section mein avashyak fields validate karta hai: ParsedResult, BeginTime, Avadhi
- Duplicate backup runs ko automatically detect karta hai aur 409 stithi return karta hai
- Safal backup insertion ke baad suchnaayein bhejta hai (agar configure kiya gaya ho)
- Development mode mein project ke root mein
datadirectory mein debugging ke liye request data ko ek file mein log karta hai - Data consistency ke liye transaction ka upyog karta hai