Available REST API methods
Authorization method
Login method (POST) Login to the Management Service. The generated access token should be used for authorization during subsequent queries.
Address POST https://server_address/account/login
Method parameters
Specifies whether to remember the session
Body(JSON example):
Copy {
"email":"test@test.test",
"password":"Password123!",
"rememberMe":true
}
Response
Copy {
"userId":"a4ac78431-30c2-4d65-bd3e-eb6416784c", "accessToken":"yMDA1LzA1L2lka4acXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6ImZiODZiNDMxLTMwYzItNGQ2NS1iZDNlLWViNjQxzL25hbWUiOiJhjm1lbG9uQHhvcGVyby5jb20iLCJodHRwOhjvc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2a4aclbWFpbGFkZHJlc3MiOiJtLm1lbG9uQHhvcGVyby5jb20iLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOlsiU3l50IiwiVXNlck1hbmFnZW1lbnQiXSwiZXhwIjoxNjU0NjkwNhj4LCJpc3MiOiJodHRa4acxob3N0OjUwMDAiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0OjUwMDAifQ.eHVRw1KqYi3SOqN-AJUXoEIFKxGVokhoMp910L1LkzA"
}
GitOrganizationController
Get many
Address POST https://server_address/git/organizations/getmany
Method parameters
Number of repository per page
The field followed by the sort
JSON example
Copy {
"limit": 2,
"orderby": "Name",
"ordertype": "asc",
"Page": 2
}
Response
Copy {
"currentPage": 2,
"pageCount": 2,
"totalEntries": 4,
"result": [
{
"id": "a4ac2cd0-ed2f-4ced-be39-60c631e033ff",
"driver": 1,
"name": "OrgName",
"apiUrl": null,
"isReadOnly": false,
"protectedRepositories": 43,
"totalRepositories": 58,
"missingLicences": 58,
"removedRepositories": 15,
"defaultWorkerId": "a4ac11eb-bbe7-406e-b3da-24fb4df5642a",
"isCreatedByMarketplace": false,
"synchronizationInProgress": false,
"plans": [
{
"id": "a4acff69-266e-4771-b47b-fd5e4fae6a40",
"name": "name1",
"backupType": 5,
"includeMetadata": true,
"repoCount": 1,
"lastStatus": {
"successes": 0,
"warnings": 0,
"errors": 1
},
"planFinishedTime": 1643754961233,
"isRunning": false
},
{
"id": "a4ac8dd-6bf4-4c6c-8bc3-7305a9cc4dad",
"name": "name2",
"backupType": 5,
"includeMetadata": true,
"repoCount": 1,
"lastStatus": {
"successes": 0,
"warnings": 0,
"errors": 1
},
"planFinishedTime": 1643754482141,
"isRunning": false
},
{
"id": "a4ac8001-1d3f-45ae-bb7a-49e86286ad6b",
"name": "name3",
"backupType": 5,
"includeMetadata": true,
"repoCount": 1,
"lastStatus": {
"successes": 0,
"warnings": 0,
"errors": 1
},
"planFinishedTime": 1643754482453,
"isRunning": false
}
]
},
{
"id": "a4ac6bff8-0000-0000-0000-000000000000",
"driver": 2,
"name": "xopero",
"apiUrl": null,
"isReadOnly": false,
"protectedRepositories": 1,
"totalRepositories": 775,
"missingLicences": 676,
"removedRepositories": 0,
"defaultWorkerId": "a4ac0f30-6641-a4ac7-ac26-fd7e47abf8f3",
"isCreatedByMarketplace": false,
"synchronizationInProgress": false,
"plans": [
{
"id": "3a4ac5-fdd1-4a4ac1-9415-66d0fbedb0e0",
"name": "name1",
"backupType": 5,
"includeMetadata": true,
"repoCount": 1,
"lastStatus": {
"successes": 1,
"warnings": 0,
"errors": 0
},
"planFinishedTime": 1645136722019,
"isRunning": false
},
{
"id": "a4aca5252-2d02-a4ac-8a24-e2be4598c8ce",
"name": "name2",
"backupType": 5,
"includeMetadata": true,
"repoCount": 1,
"lastStatus": {
"successes": 0,
"warnings": 1,
"errors": 0
},
"planFinishedTime": 1645115366992,
"isRunning": false
},
{
"id": "a4acb8c-7b2a-a4ac83-8167-44a9a1e14272",
"name": "name3",
"backupType": 5,
"includeMetadata": true,
"repoCount": 1,
"lastStatus": {
"successes": 0,
"warnings": 1,
"errors": 0
},
"planFinishedTime": 1645115380587,
"isRunning": false
}
]
}
]
}
Plans Controller
Attach Git Repository
AttachGitRepository method (POST) Adds a repository to the plan if the given repository and plan exist. Authorization required.
Address POST https://server_address/plans/attachgitrepository
Method parameters
JSON example
Copy {
"planid":"hjkhkj60b-baac-4564-a92d-918e6940b136",
"repositoryid":"ca4ac8f1c-a425-4869-8757-32c6567gc9aeb"
}
Response
Detach Git Repository
DetachGitRepository method (POST) Detaches the repository from the plan. Authorization required.
Address POST https://server_address/plans/detachgitrepository
Method parameters
Copy {
"planid":"hjkhkj60b-baac-4564-a92d-918e6940b136",
"repositoryid":"a4ac8f1c-a425-48hj-8757-32hj567gchjeb"
}
Response
List Assigned To Organization
ListAssignedToOrganization method (POST) Returns a list of plans to which the organization's repositories are pinned. Authorization required.
Address POST https://server_address/plans/listassignedtoorganization
Method parameters
Number of elements on the page
JSON example
Copy {
"limit":5,
"page":5,
"organizationid":"a4a4acgd0-eg78f-4a4ac-kl39-99ka4ac1e777ff"
}
Response
Copy {
"currentPage": 5,
"pageCount": 5,
"totalEntries": 23,
"result": [
{
"id": "ea6a260b-a4ac-4204-a92d-918e6940b136",
"name": "example1",
"includeAllRepositories": false,
"repositoryIds": [
"c1961c1c-a425-a4ac-8757-32d5b6fc9aeb"
]
},
{
"id": "fba158dd-6bf4-a4ac-8bc3-7305a9cc4dad",
"name": "example2",
"includeAllRepositories": false,
"repositoryIds": [
"de5c5995-b422-43c4-90b7-7ee182480dbb"
]
},
{
"id": "fdb48001-1d3f-45ae-bb7a-49e86286ad6b",
"name": "example3",
"includeAllRepositories": false,
"repositoryIds": [
"a4ac5995-b422-43c4-a4ac-7ee182480dbb"
]
}
]
}
Modify Git Plan
ModifyGitPlan method (POST) Editing a GIT backup plan. Authorization required.
Address POST https://server_address/plans/modifygitplan
Method parameters
Method parameters
Description
Type
Backup type (if the plan type is backup)
Identifier of the device performing the operation
Dictionary[string, string]
If true, it ignores selected repositories and takes all of them from the organization
bool
If true, it performs a metadata backup
JSON example
Copy {
"id":"a4acc15-b08b-40cb-a4ac-5e40ea4ac54",
"isActive":true,
"name":"example",
"backupType":5,
"schedule":{
"id":"a4ac21-6da6-4c8c-a4ac5-f2ffca4ac516",
"scheme":3,
"delay":0,
"preventSystemSleep":false,
"options":[
{
"type":1,
"trigger":1,
"frequency":1,
"days":[
1
],
"startAt":[
{
"hour":17,
"minute":25
}
],
"interval":0,
"nthDayOfWeek":0
},
{
"type":3,
"trigger":1,
"frequency":3,
"days":[
1,
2,
3,
4,
5
],
"startAt":[
{
"hour":17,
"minute":25
}
],
"interval":0,
"nthDayOfWeek":0
}
],
"backupWindow":
[
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
],
"retention":{
"id":"00000000-0000-0000-0000-000000000000",
"rule":1,
"options":null,
"order":0
}
},
"compressionSettings":{
"codec":2,
"level":2
},
"encryptionSettings":null,
"customActions":{
"preBackupAction":null,
"postSnapshotAction":null,
"postBackupAction":null
},
"advancedOptions":{
"useVss":"True",
"maxTaskRetriesCount":"3",
"taskRetriesFrequency":"60000",
"maxConcurrentTasks":"5",
"processorProperties_PartSize":"1048576"
},
"deltaSettings":null,
"workerId":"a4ac1eb-bbe7-a4ac-b3da-a4acf5642a",
"filteringSettings":null,
"organizationId":"a4ac2cd0-ea4ac-4ced-be39-6a4ace033ff",
"repositoriesIds":[
"c1961c1c-a425-4769-8757-32d5b6fc9aeb"
],
"includeAllRepositories":false,
"includeMetadata":true,
"storageId":"a4ac74ac-7a4ac-4fec-9448-a4ace9267d7"
}
Response
GitRepositoryController
Activate
Activate method (POST) Activates licenses for selected repositories. Requires authorization with a user account with the following roles:
DataRemoveManagement
GitManagement
Address POST https://server_address/git/repositories/activate
Method parameters
Repository IDs to activate
JSON example
Copy {
"Ids":[
"a4ac979e-0000-0000-0000-000000000000",
"a4acca07-0000-0000-0000-000000000000",
"a4ac7c5-0000-0000-0000-000000000000",
"a4ac9d7a-0000-0000-0000-000000000000",
"1a4ac9bc9-0000-0000-0000-000000000000",
"a4ac79fe9-0000-0000-0000-000000000000",
"a4ac3f220-0000-0000-0000-000000000000",
"a4aca817-0000-0000-0000-000000000000"
]
}
Response
Copy {
"success": [],
"error": [
{
"id": "a4ac7979e-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4acdca07-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4ac797c5-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4ac79d7a-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4ac79bc9-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4ac79fe9-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4ac3f220-0000-0000-0000-000000000000",
"errorCode": "LI5020"
},
{
"id": "a4acea817-0000-0000-0000-000000000000",
"errorCode": "LI5020"
}
]
}
Deactivate
Deactivate method (POST) Deactivates licenses for selected repositories. Requires authorization with a user account with the following roles:
Address POST https://server_address/git/repositories/deactivate
Method parameters
Repository IDs to be deactivated
JSON example
Copy {
"Ids":[
"a4ac7979e-0000-0000-0000-000000000000",
"a4acdca07-0000-0000-0000-000000000000",
"a4ac797c5-0000-0000-0000-000000000000",
"a4ac79d7a-0000-0000-0000-000000000000",
"a4ac79bc9-0000-0000-0000-000000000000",
"a4ac79fe9-0000-0000-0000-000000000000",
"a4ac3f220-0000-0000-0000-000000000000",
"a4acea817-0000-0000-0000-000000000000"
]
}
Response
Copy {
"success": [],
"error": [
{
"id": "a4ac7979e-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4acdca07-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4ac797c5-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4ac79d7a-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4ac79bc9-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4ac79fe9-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4ac3f220-0000-0000-0000-000000000000",
"errorCode": "GT1001"
},
{
"id": "a4acea817-0000-0000-0000-000000000000",
"errorCode": "GT1001"
}
]
}
Get Many
GetMany method (POST) Gets a list of the organization's repositories. Authorization required.
Address POST https://server_address/git/repositories/getmany
Method parameters
Number of repositories per page
The name of the field followed by sorting
JSON example
Copy {
"id": "a4ac2cd0-a4ac-4ced-be39-a4ac31e033ff",
"limit": 2,
"orderby": "Name",
"ordertype": "asc",
"page": 1,
"filters":[
{
"operator": "eq",
"value": true,
"property": "IsRemoved"
}
]
}
Response
Copy {
"currentPage": 1,
"pageCount": 1,
"totalEntries": 2,
"result": {
"synchronizationInProgress": false,
"lastSynchronizationRepositoriesStartTime": 1645546071481,
"repositories": [
{
"id": "a4ac3ac7d-99e4-a4ac-b5a4-a4acdeee5",
"serverId": "a4acac7d-99e4-a4ac-b5a4-ea4ac2deee5",
"name": "org/repo1",
"lastBackup": 0,
"lastSuccessfulBackup": 0,
"nextBackup": 0,
"isProtected": true,
"isRemoved": true,
"status": 2,
"lastBackupTaskStatus": 0,
"isPublic": false
},
{
"id": "a4acf294-b30e-a4ac-aabb-6a4ac6578686",
"serverId": "a4ac294-b30e-a4ac-aabb-63a4ac578686",
"name": "org/repo2",
"lastBackup": 0,
"lastSuccessfulBackup": 0,
"nextBackup": 1645556400000,
"isProtected": true,
"isRemoved": true,
"status": 2,
"lastBackupTaskStatus": 0,
"isPublic": false
}
],
"removedRepositories": 15
}
Remove
Remove method (POST) Deletes repository data from the system. Requires authorization with a user account with the following roles:
Address POST https://server_address/git/repositories/remove
Method parameters
The repository IDs to be deleted
JSON example
Copy {
"id": "a4acd28-eee0-404a-a4ac0-6ca4ac260ca",
"removedata": true
}
Response
Copy {
"succeededIds": [
"a4ac8d28-eee0-a4ac-a070-6a4ac76260ca"
],
"failedIds": [],
"errors": []
}
Sync
Sync Method (POST) Runs synchronization for your organization. Authorization required.
Address POST https://server_address/git/repositories/sync
Method parameters
JSON example
Copy {
"id": "a4ac2cd0-a4ac-4ced-a4ac-60ca4ac3ff"
}
Response