Skip to content

Instantly share code, notes, and snippets.

@Alex0007
Created July 17, 2020 19:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Alex0007/1da683e083950e71f04a513d11b20611 to your computer and use it in GitHub Desktop.
Save Alex0007/1da683e083950e71f04a513d11b20611 to your computer and use it in GitHub Desktop.
openapi: 3.0.0
info:
title: 'Webdock API'
description: 'Webdock awesome API!'
version: 1.0.0
servers:
-
url: 'https://api.webdock.localhost'
description: 'Webdock API parameters'
paths:
/account/publicKeys:
get:
tags:
- publicKeys
summary: 'Get a list of public keys'
description: 'Get a list of public keys for the user account'
operationId: getPublicKeys
responses:
'200':
description: 'List of public keys'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PublicKeyDTO'
security:
-
webdock_auth:
- 'read:account'
post:
tags:
- publicKeys
summary: 'Add a new public key'
description: 'Add a new public key to the user account'
operationId: postPublicKeys
requestBody:
$ref: '#/components/requestBodies/CreatePublicKeyModel'
responses:
'200':
description: 'Created PublicKey'
content:
application/json:
schema:
$ref: '#/components/schemas/PublicKeyDTO'
'400':
description: 'Bad request'
security:
-
webdock_auth:
- 'write:account'
'/account/publicKeys/{id}':
delete:
tags:
- publicKeys
summary: 'Deletes a PublicKey'
operationId: deletePublicKey
parameters:
-
name: id
in: path
description: 'PublicKey ID to delete'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'PublicKey deleted succesfully'
'404':
description: 'PublicKey not found'
security:
-
webdock_auth:
- 'write:account'
/account/scripts:
get:
tags:
- userScripts
summary: 'Get a list of user scripts'
description: 'Get a list of user scripts'
operationId: getUserScripts
responses:
'200':
description: 'List of user scripts'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ScriptDTO'
security:
-
webdock_auth:
- 'read:account'
post:
tags:
- userScripts
summary: 'Create a user script'
description: 'Create a user script'
operationId: createUserScript
requestBody:
$ref: '#/components/requestBodies/CreateUserScriptModel'
responses:
'200':
description: 'The newly created user script'
content:
application/json:
schema:
$ref: '#/components/schemas/ScriptDTO'
'400':
description: 'Bad request'
security:
-
webdock_auth:
- 'write:account'
'/account/scripts/{scriptId}':
get:
tags:
- userScripts
summary: 'Get a user script by ID'
description: 'Get a user script by ID'
operationId: getUserScriptById
parameters:
-
name: scriptId
in: path
description: 'ID of the script'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'A user script'
content:
application/json:
schema:
$ref: '#/components/schemas/ScriptDTO'
'404':
description: 'Script not found'
security:
-
webdock_auth:
- 'read:account'
delete:
tags:
- userScripts
summary: 'Delete a user script'
description: 'Delete a user script'
operationId: deleteUserScript
parameters:
-
name: scriptId
in: path
description: 'ID of the script'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'User script deleted sucessfully'
'404':
description: 'Script not found'
security:
-
webdock_auth:
- 'write:account'
patch:
tags:
- userScripts
summary: 'Update a user script'
description: 'Update a user script'
operationId: patchUserScript
parameters:
-
name: scriptId
in: path
description: 'ID of the script'
required: true
schema:
type: integer
format: int64
requestBody:
$ref: '#/components/requestBodies/CreateUserScriptModel'
responses:
'200':
description: 'The updated user script'
content:
application/json:
schema:
$ref: '#/components/schemas/ScriptDTO'
'400':
description: 'Bad request'
'404':
description: 'Script not found'
security:
-
webdock_auth:
- 'write:account'
/hooks:
get:
tags:
- hooks
summary: 'Get a list of event hooks'
description: 'Get a list of event hooks'
operationId: getHooks
responses:
'200':
description: 'List of hooks'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/HookDTO'
security:
-
webdock_auth:
- 'read:account'
post:
tags:
- hooks
summary: 'Creates an event hooks'
description: 'Creates an event hooks'
operationId: creteHook
requestBody:
$ref: '#/components/requestBodies/CreateEventHookModelDTO'
responses:
'200':
description: Hook
content:
application/json:
schema:
$ref: '#/components/schemas/HookDTO'
'400':
description: 'Bad request'
security:
-
webdock_auth:
- 'write:account'
'/hooks/{hookId}':
get:
tags:
- hooks
summary: 'Get a event hooks'
description: 'Get a event hooks'
operationId: getHookById
parameters:
-
name: hookId
in: path
description: 'ID of the hook'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: Hook
content:
application/json:
schema:
$ref: '#/components/schemas/HookDTO'
'400':
description: 'Bad request'
'404':
description: 'Hook not found'
security:
-
webdock_auth:
- 'read:account'
delete:
tags:
- hooks
summary: 'Deletes a event hooks'
description: 'Deletes a event hooks'
operationId: deleteHookById
parameters:
-
name: hookId
in: path
description: 'ID of the hook'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'Hook deleted'
'404':
description: 'Hook not found'
security:
-
webdock_auth:
- 'write:account'
/ping:
get:
tags:
- ping
summary: 'Send a ping request to the server'
description: 'Send a ping request to the server and get a response back'
operationId: getPing
responses:
'200':
description: 'Ping response'
content:
application/json:
schema:
$ref: '#/components/schemas/Ping'
/scripts:
get:
tags:
- scripts
summary: 'Get a list of public scripts'
description: 'Get a list of public scripts'
operationId: getScripts
responses:
'200':
description: 'List of public scripts'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ScriptDTO'
security:
-
webdock_auth:
- 'read:account'
/servers:
get:
tags:
- server
summary: 'Get a list of servers'
description: 'Get a list of servers'
operationId: getServers
parameters:
-
name: status
in: query
description: 'Status of the server'
required: false
schema:
format: string
default: all
enum:
- all
- suspended
- active
responses:
'200':
description: 'List of servers'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServerDTO'
security:
-
webdock_auth:
- 'read:servers'
'/servers/{serverSlug}':
get:
tags:
- server
summary: 'Get a server by slug'
description: 'Get a server by slug'
operationId: getServerBySlug
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
responses:
'200':
description: 'List of servers'
content:
application/json:
schema:
$ref: '#/components/schemas/ServerDTO'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'read:servers'
patch:
tags:
- server
summary: 'Update a server'
description: 'Update a server'
operationId: patchServer
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/PatchServerModel'
responses:
'200':
description: Server
content:
application/json:
schema:
$ref: '#/components/schemas/CallbackDTO'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/scripts':
get:
tags:
- serverScripts
summary: 'Get a list of server scripts'
description: 'Get a list of server scripts'
operationId: getServerScripts
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
responses:
'200':
description: 'List of server scripts'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServerScriptDTO'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'read:servers'
post:
tags:
- serverScripts
summary: 'Create a server script'
description: 'Create a server script'
operationId: createServerScript
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/CreateServerScriptModel'
responses:
'200':
description: 'Newly created server script'
content:
application/json:
schema:
$ref: '#/components/schemas/ServerScriptDTO'
'400':
description: 'Bad request'
'404':
description: 'Server or script not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/scripts/{scriptId}':
get:
tags:
- serverScripts
summary: 'Get a server script'
description: 'Get a server script'
operationId: getServerScriptById
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: scriptId
in: path
description: 'ID of the script'
required: true
schema:
type: int
responses:
'200':
description: 'Server script'
content:
application/json:
schema:
$ref: '#/components/schemas/ServerScriptDTO'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'read:servers'
delete:
tags:
- serverScripts
summary: 'Deletes a server script'
description: 'Deletes a server script'
operationId: deleteServerScriptById
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: scriptId
in: path
description: 'ID of the script'
required: true
schema:
type: int
responses:
'200':
description: 'Server script deleted'
'404':
description: 'Server or script not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/scripts/{scriptId}/execute':
post:
tags:
- serverScripts
summary: 'Executes a server script'
description: 'Executes a server script'
operationId: executeServerScript
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: scriptId
in: path
description: 'ID of the script'
required: true
schema:
type: int
responses:
'200':
description: 'Server script ran'
content:
application/json:
schema:
$ref: '#/components/schemas/CallbackDTO'
'404':
description: 'Server or script not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/shellUsers':
get:
tags:
- serverShellUsers
summary: 'Get a list of shell users from a server'
description: 'Get a list of shell users from a server'
operationId: getServerShellUsers
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
responses:
'200':
description: 'List of shell users'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ShellUserDTO'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'read:servers'
post:
tags:
- serverShellUsers
summary: 'Create a shell user for a server'
description: 'Create a shell user for a server'
operationId: postServerShellUsers
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/CreateShellUserModel'
responses:
'200':
description: 'Created shell user'
content:
application/json:
schema:
$ref: '#/components/schemas/ShellUserDTO'
'400':
description: 'Bad request'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/shellUsers/{shellUserId}':
delete:
tags:
- serverShellUsers
summary: 'Deletes a shell user'
operationId: deleteShellUser
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: shellUserId
in: path
description: 'Shell user ID to delete'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'Shell user deleted succesfully'
'404':
description: 'Server or shell user not found'
security:
-
webdock_auth:
- 'write:servers'
patch:
tags:
- serverShellUsers
summary: 'Update a shell user for a server'
description: 'Update a shell user for a server'
operationId: patchServerShellUsers
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: shellUserId
in: path
description: 'Shell user ID to delete'
required: true
schema:
type: integer
format: int64
requestBody:
$ref: '#/components/requestBodies/PatchShellUserModelDTO'
responses:
'200':
description: 'Updated shell user'
content:
application/json:
schema:
$ref: '#/components/schemas/ShellUserDTO'
'400':
description: 'Bad request'
'404':
description: 'Server or shell user not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/snapshots':
get:
tags:
- serverSnapshots
summary: 'Get a list of snapshots for a server'
description: 'Get a list of snapshots for a server'
operationId: getServerSnapshots
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
responses:
'200':
description: 'List of snapshots'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/SnapshotDTO'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'read:servers'
post:
tags:
- serverSnapshots
summary: 'Create a snapshots for a server'
description: 'Create a snapshots for a server'
operationId: createServerSnapshot
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/CreateServerSnapshotModel'
responses:
'200':
description: 'Created snapshots'
content:
application/json:
schema:
$ref: '#/components/schemas/SnapshotDTO'
'400':
description: 'Bad request'
'404':
description: 'Server not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/snapshots/{snapshotId}':
get:
tags:
- serverSnapshots
summary: 'Get a snapshot by ID for a server'
description: 'Get a snapshot by ID for a server'
operationId: getServerSnapshotById
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: snapshotId
in: path
description: 'Snapshot ID'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: Snapshots
content:
application/json:
schema:
$ref: '#/components/schemas/SnapshotDTO'
'404':
description: 'Server or snapshot not found'
security:
-
webdock_auth:
- 'read:servers'
delete:
tags:
- serverSnapshots
summary: 'Delets a snapshot by ID for a server'
description: 'Delets a snapshot by ID for a server'
operationId: deleteServerSnapshotById
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: snapshotId
in: path
description: 'Snapshot ID'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'Snapshot deletes'
'404':
description: 'Server or snapshot not found'
security:
-
webdock_auth:
- 'write:servers'
'/servers/{serverSlug}/snapshots/{snapshotId}/restore':
delete:
tags:
- serverSnapshots
summary: 'Restores the server to a snapshot'
description: 'Restores the server to a snapshot'
operationId: restoreServerToSnapshot
parameters:
-
name: serverSlug
in: path
description: 'Slug of the server'
required: true
schema:
type: string
-
name: snapshotId
in: path
description: 'Snapshot ID'
required: true
schema:
type: integer
format: int64
responses:
'200':
description: 'Callback information'
content:
application/json:
schema:
$ref: '#/components/schemas/CallbackDTO'
'400':
description: 'Bad request'
'404':
description: 'Server or snapshot not found'
security:
-
webdock_auth:
- 'write:servers'
/locations:
get:
tags:
- serversConfigurations
summary: 'Possible server location'
description: 'Get a list of possible server locations'
operationId: getServersLocations
responses:
'200':
description: 'List of locations'
content:
application/json:
schema:
$ref: '#/components/schemas/ServerLocationDTO'
/profiles:
get:
tags:
- serversConfigurations
summary: 'Possible server profiles'
description: 'Get a list of possible server profiles'
operationId: getServersProfiles
parameters:
-
name: locationId
in: query
description: 'Location of the profile'
required: false
schema:
format: string
responses:
'200':
description: 'List of configurations'
content:
application/json:
schema:
$ref: '#/components/schemas/ServerProfileDTO'
/images:
get:
tags:
- serversConfigurations
summary: 'Possible server images'
description: 'Get a list of possible server images'
operationId: getServersImages
responses:
'200':
description: 'List of configurations'
content:
application/json:
schema:
$ref: '#/components/schemas/ServerImageDTO'
components:
schemas:
PublicKeyDTO:
title: PublicKeyDTO
description: 'PublicKey model'
properties:
id:
description: 'PublicKey ID'
type: integer
format: int64
name:
description: 'PublicKey name'
type: string
format: string
key:
description: 'PublicKey content'
type: string
format: string
date:
description: 'PublicKey creation datetime'
type: string
format: datetime
type: object
ScriptDTO:
title: ScriptDTO
description: 'Script model'
properties:
id:
description: 'Script ID'
type: integer
format: int64
name:
description: 'Script name'
type: string
format: string
description:
description: 'Script description'
type: string
format: string
filename:
description: 'Script filename'
type: string
format: string
content:
description: 'Script content'
type: string
format: string
type: object
CallbackDTO:
title: CallbackDTO
description: 'Callback model'
properties:
callbackId:
description: 'Callback ID'
type: integer
format: int64
type: object
HookDTO:
title: HookDTO
description: 'Hook model'
properties:
id:
description: 'Hook ID'
type: integer
format: int64
callbackUrl:
description: 'Callback URL'
type: string
format: string
filters:
description: 'Event filters'
type: array
format: string
items:
$ref: '#/components/schemas/HookFilterDTO'
type: object
HookFilterDTO:
title: HookFilterDTO
description: 'Hook Filter model'
properties:
type:
description: 'Filter type'
type: string
format: string
value:
description: 'Filter Value'
type: string
format: string
type: object
Ping:
title: 'Ping model'
description: 'Ping model'
properties:
class:
title: 'Class name'
description: 'Class name'
type: string
format: string
method:
title: 'Method name'
description: 'Method name'
type: string
format: string
type: object
PriceDTO:
title: Price
description: 'Price model'
properties:
amount:
description: 'Price amount'
type: integer
format: int64
currency:
description: 'Price currency'
type: string
format: string
enum:
- EUR
- DKK
- USD
type: object
ServerDTO:
title: ServerDTO
description: 'Server model'
properties:
slug:
description: 'Server slug'
type: string
format: string
name:
description: 'Server name'
type: string
format: string
location:
description: 'Location ID of the server'
type: string
format: string
nullable: 'true'
image:
description: 'Server image'
type: string
format: string
profile:
description: 'Server profile'
type: string
format: string
nullable: 'true'
ipv4:
description: 'IPv4 address'
type: string
format: string
nullable: 'true'
ipv6:
description: 'IPv6 address'
type: string
format: string
nullable: 'true'
status:
description: 'Server status'
type: string
format: string
enum:
- stopped
- working
- running
webServer:
description: 'Webserver type'
type: string
format: string
aliases:
description: Aliases
type: array
items:
type: string
snapshotRunTime:
description: 'Last known snapshot runtime (seconds)'
type: integer
format: int64
installed:
description: 'What''s installed'
type: string
items:
type: string
wordPressLockDown:
description: 'Wordpress lockdown status'
type: boolean
format: int64
default: 'false'
notes:
description: Notes
type: string
format: string
date:
description: 'Creation date/time'
type: string
format: datetime
type: object
ServerScriptDTO:
title: ServerScriptDTO
description: 'ServerScript model'
properties:
id:
description: 'Script ID'
type: integer
format: int64
name:
description: 'Script name'
type: string
format: string
path:
description: 'Script path'
type: string
format: string
lastRun:
description: 'Date/time of the last run'
type: string
format: datetime
nullable: 'true'
lastRunCallbackId:
description: 'Callback ID of the last script run'
type: string
format: string
nullable: 'true'
created:
description: 'Creation date/time'
type: string
format: datetime
type: object
ShellUserDTO:
title: ShellUserDTO
description: 'Shell user model'
properties:
id:
description: 'Shell user ID'
type: integer
format: int64
username:
description: Username
type: string
format: string
group:
description: 'Shell user group'
type: string
format: string
shell:
description: Shell
type: string
format: string
publicKeys:
description: Shell
type: array
format: string
items:
$ref: '#/components/schemas/PublicKeyDTO'
date:
description: 'Shell user creation datetime'
type: string
format: datetime
type: object
SnapshotDTO:
title: Snapshot
description: 'Snapshot model'
properties:
id:
description: ID
type: integer
format: string
name:
description: Name
type: string
format: string
date:
description: 'Creation date/time'
type: string
format: datetime
type:
description: 'Snapshot type'
type: string
format: string
enum:
- daily
- weekly
- monthly
completed:
description: 'Snapshot completed'
type: boolean
format: int64
default: 'false'
callbackId:
description: 'Callback ID'
type: string
format: string
nullable: 'true'
deletable:
description: 'Can the snapshot be deleted'
type: boolean
default: 'false'
type: object
CPUDTO:
title: CPU
description: 'CPU model'
properties:
cores:
description: 'Number of cores'
type: integer
format: int64
threads:
description: 'Number of threads'
type: integer
format: int64
type: object
ServerImageDTO:
title: ServerImage
description: 'ServerImage model'
properties:
slug:
description: 'Image slug'
type: string
format: string
name:
description: 'Image name'
type: string
format: string
webServer:
description: 'Web server type'
type: string
format: string
enum:
- null
- Apache
- Nginx
phpVersion:
description: 'PHP Version'
type: string
format: string
type: object
ServerLocationDTO:
title: ServerLocation
description: 'ServerLocation model'
properties:
id:
description: 'Location ID'
type: string
format: string
name:
description: 'Location Name'
type: string
format: string
type: object
ServerProfileDTO:
title: ServerProfile
description: 'ServerProfile model'
properties:
slug:
description: 'Profile slug'
type: string
format: string
name:
description: 'Profile name'
type: string
format: string
ram:
description: 'RAM memory(in Mb)'
type: integer
format: int64
disk:
description: 'Disk size(in Mb)'
type: integer
format: int64
cpu:
$ref: '#/components/schemas/CPUDTO'
price:
$ref: '#/components/schemas/PriceDTO'
type: object
CreateEventHookModelDTO:
title: CreateEventHookModelDTO
description: 'Event hook model'
properties:
callbackUrl:
description: 'Callback URL'
type: string
format: uri
callbackId:
description: '(Optional) Callback ID'
type: string
format: string
nullable: true
eventType:
description: '(Optional) Event Type'
type: string
format: string
enum:
- provision
nullable: true
type: object
CreatePublicKeyModelDTO:
title: CreatePublicKeyModelDTO
description: 'PublicKey model'
properties:
name:
description: 'PublicKey name'
type: string
format: string
publicKey:
description: PublicKey
type: string
format: string
type: object
CreateServerScriptModelDTO:
title: CreateServerScriptModelDTO
description: 'Server script model'
properties:
scriptId:
description: 'ID of the user script to be deployed'
type: integer
path:
description: 'Path of deployment'
type: string
format: string
makeScriptExecutable:
description: 'If script file should be made executable'
type: boolean
format: boolean
default: false
executeImmediately:
description: 'If script should be executed immiditaly after deploy'
type: boolean
format: boolean
default: false
type: object
CreateServerSnapshotModelDTO:
title: CreateServerSnapshotModelDTO
description: 'Create Server Snapshot model'
properties:
name:
description: 'Name of the snapshot'
type: string
format: string
type: object
CreateShellUserModelDTO:
title: CreateShellUserModelDTO
description: 'Shell user model'
properties:
username:
description: 'Shell username'
type: string
format: string
password:
description: 'Password for the shell user'
type: string
format: string
group:
description: 'Group for the shell user'
type: string
format: string
default: sudo
shell:
description: 'Shell for the shell user'
type: string
format: string
default: /bin/bash
publicKeys:
description: 'List of PublicKeys IDs to the assigned to the shell user'
type: array
items:
description: 'PublicKey ID'
type: integer
format: int64
type: object
CreateUserScriptModelDTO:
title: CreateUserScriptModelDTO
description: 'User script model'
properties:
name:
description: 'Name of the script'
type: string
format: string
filename:
description: 'Filename of the script'
type: string
format: string
content:
description: 'The script'
type: string
format: string
type: object
PatchServerModelDTO:
title: PatchServerModelDTO
description: 'PatchServer model'
properties:
status:
type: string
format: string
default: ''
enum:
- running
- stopped
type: object
PatchShellUserModelDTO:
title: PatchShellUserModelDTO
description: 'Shell user model'
properties:
publicKeys:
description: 'List of PublicKeys IDs to the assigned to the shell user'
type: array
items:
description: 'PublicKey ID'
type: integer
format: int64
type: object
requestBodies:
CreateEventHookModelDTO:
description: 'Create an event hook'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEventHookModelDTO'
CreatePublicKeyModel:
description: 'PublicKey that will be added'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreatePublicKeyModelDTO'
CreateServerScriptModel:
description: 'User script to be created'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateServerScriptModelDTO'
CreateServerSnapshotModel:
description: 'User script to be created'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateServerSnapshotModelDTO'
CreateShellUserModel:
description: 'Shell user that will be added to the server'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateShellUserModelDTO'
CreateUserScriptModel:
description: 'User script to be created'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateUserScriptModelDTO'
PatchServerModel:
description: 'Patch server model'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PatchServerModelDTO'
PatchShellUserModelDTO:
description: 'Updated to be made to the shell user'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PatchShellUserModelDTO'
securitySchemes:
webdock_auth:
type: oauth2
flows:
implicit:
authorizationUrl: 'https://webdock.io/oauth/dialog'
scopes:
'read:provision': 'read provisions'
'write:provision': 'provision and remove provision'
'read:servers': 'read your servers'
'write:servers': 'modify servers in your account'
'read:account': 'read account data'
'write:account': 'modify account data'
'read:billing': 'read billing data'
'write:billing': 'modify billing data'
tags:
-
name: ping
description: 'Pings the API. Tests that the connection is fine'
-
name: server
description: 'API endpoint for servers'
-
name: serversConfigurations
description: 'API endpoint for possible server configurations'
-
name: publicKeys
description: 'API endpoint for Public Keys associated to a user'
-
name: serverShellUsers
description: 'API endpoint for shell users'
-
name: userScripts
description: 'API endpoint for user scripts'
-
name: scripts
description: 'API endpoint for public scripts'
-
name: serverScripts
description: 'API endpoint for server scripts'
-
name: serverSnapshots
description: 'API endpoint for server snapshots'
-
name: hooks
description: 'API endpoint for event webhooks'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment