Restore Hub API

Embed
Preview of the card
<a href="https://restorehub.net/docs/restore-hub-api"><img src="https://restorehub.net/docs/_api/public/orgs/02205afa-581f-4b8b-b2a5-8aa1a06b0a65/spaces/3b58c1c8-7c23-44ef-9ff3-f4a5c899d9ac/pages/d0a666b5-4eba-4af4-bfa0-216fae5b5685/social-card.svg?v=3e7ae33eec8b" alt="Restore Hub API" width="600" height="315"></a>
POSThttps://api.restorehub.net/api/v1/servers/{id}/backups/{backupId}/restore

Restore a backup

Required scope: backups:restore

Parameters

idstringpathrequired
backupIdstringpathrequired

Request body

application/json
optionsobject
Restore options (channels, roles, etc.)
{
  "options": {}
}

Code samples

cURL
curl -X POST "https://api.restorehub.net/api/v1/servers/{id}/backups/{backupId}/restore" \
  -H "Content-Type: application/json" \
  -d '{"options":{}}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
GEThttps://api.restorehub.net/api/v1/servers/{id}/backups/{backupId}

Get a single backup (full snapshot)

Required scope: backups:read

Parameters

idstringpathrequired
backupIdstringpathrequired

Code samples

cURL
curl -X GET "https://api.restorehub.net/api/v1/servers/{id}/backups/{backupId}"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
DELETEhttps://api.restorehub.net/api/v1/servers/{id}/backups/{backupId}

Delete a backup

Required scope: backups:write

Parameters

idstringpathrequired
backupIdstringpathrequired

Code samples

cURL
curl -X DELETE "https://api.restorehub.net/api/v1/servers/{id}/backups/{backupId}"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
GEThttps://api.restorehub.net/api/v1/servers/{id}/backup-schedule

Get the backup schedule for this server

Required scope: backups:read

Parameters

idstringpathrequired

Code samples

cURL
curl -X GET "https://api.restorehub.net/api/v1/servers/{id}/backup-schedule"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
POSThttps://api.restorehub.net/api/v1/servers/{id}/backup-schedule

Create or replace the backup schedule (Premium+ required)

Required scope: backups:write

Parameters

idstringpathrequired

Request body

application/json
intervalDaysintegerrequired
maxBackupsintegerrequired
isActiveboolean
{
  "intervalDays": 0,
  "maxBackups": 0,
  "isActive": true
}

Code samples

cURL
curl -X POST "https://api.restorehub.net/api/v1/servers/{id}/backup-schedule" \
  -H "Content-Type: application/json" \
  -d '{"intervalDays":0,"maxBackups":0,"isActive":true}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
PUThttps://api.restorehub.net/api/v1/servers/{id}/backup-schedule/{scheduleId}

Update the backup schedule

Required scope: backups:write

Parameters

idstringpathrequired
scheduleIdstringpathrequired

Request body

application/json
intervalDaysinteger
maxBackupsinteger
isActiveboolean
{
  "intervalDays": 0,
  "maxBackups": 0,
  "isActive": true
}

Code samples

cURL
curl -X PUT "https://api.restorehub.net/api/v1/servers/{id}/backup-schedule/{scheduleId}" \
  -H "Content-Type: application/json" \
  -d '{"intervalDays":0,"maxBackups":0,"isActive":true}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
DELETEhttps://api.restorehub.net/api/v1/servers/{id}/backup-schedule/{scheduleId}

Delete the backup schedule

Required scope: backups:write

Parameters

idstringpathrequired
scheduleIdstringpathrequired

Code samples

cURL
curl -X DELETE "https://api.restorehub.net/api/v1/servers/{id}/backup-schedule/{scheduleId}"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}

Templates

GEThttps://api.restorehub.net/api/v1/templates

List your templates

Required scope: templates:read

Code samples

cURL
curl -X GET "https://api.restorehub.net/api/v1/templates"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
POSThttps://api.restorehub.net/api/v1/templates

Create a template

Required scope: templates:write

Request body

application/json
namestringrequired
descriptionstring
dataobjectrequired
Template body (channels, roles, ...)
isPublicboolean
{
  "name": "string",
  "description": "string",
  "data": {},
  "isPublic": true
}

Code samples

cURL
curl -X POST "https://api.restorehub.net/api/v1/templates" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","description":"string","data":{},"isPublic":true}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
POSThttps://api.restorehub.net/api/v1/templates/from-backup

Create a template from an existing backup

Required scope: templates:write

Request body

application/json
backupIdstringrequired
namestringrequired
descriptionstring
isPublicboolean
{
  "backupId": "string",
  "name": "string",
  "description": "string",
  "isPublic": true
}

Code samples

cURL
curl -X POST "https://api.restorehub.net/api/v1/templates/from-backup" \
  -H "Content-Type: application/json" \
  -d '{"backupId":"string","name":"string","description":"string","isPublic":true}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
GEThttps://api.restorehub.net/api/v1/templates/{id}

Get a template

Required scope: templates:read

Parameters

idstringpathrequired

Code samples

cURL
curl -X GET "https://api.restorehub.net/api/v1/templates/{id}"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 OK
{}
400 Validation failed
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
401 Unauthorized — missing or invalid API key
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
403 Forbidden — missing required scope
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
404 Not found
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}
429 Rate limit exceeded
{
  "error": "string",
  "code": "string",
  "details": {},
  "requiredScope": "string",
  "yourScopes": [
    "string"
  ]
}

Updated