API reference
Swagger Spec based reference
- GET /1.0/services
List services
- Status Codes:
200 OK – Services
204 No Content – No content
- Response JSON Object:
[].instances[] (string)
[].plans[] (string)
[].service (string)
[].service_instances[].apps[] (string)
[].service_instances[].bound_units[].app_name (string)
[].service_instances[].bound_units[].id (string)
[].service_instances[].bound_units[].ip (string)
[].service_instances[].description (string)
[].service_instances[].id (integer)
[].service_instances[].jobs[] (string)
[].service_instances[].name (string)
[].service_instances[].parameters (object)
[].service_instances[].plan_name (string)
[].service_instances[].pool (string)
[].service_instances[].service_name (string)
[].service_instances[].tags[] (string)
[].service_instances[].team_owner (string)
[].service_instances[].teams[] (string)
- POST /1.0/services
Creates a new service
- Request JSON Object:
endpoint (string)
id (string)
multi-cluster (string)
password (string)
team (string)
username (string)
- Status Codes:
201 Created – Services
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Service not found
- GET /1.0/services/{name}
Information on a service
- Parameters:
name (string) – Service name.
- Status Codes:
200 OK – Service removed
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Service not found
- Response JSON Object:
[].apps[] (string)
[].id (string)
[].info (object)
[].jobs[] (string)
[].name (string)
[].planname (string)
[].pool (string)
[].servicename (string)
[].teamowner (string)
[].teams[] (string)
- PUT /1.0/services/{name}
Updates a service
- Parameters:
name (string) – Service name.
- Request JSON Object:
endpoint (string)
id (string)
multi-cluster (string)
password (string)
team (string)
username (string)
- Status Codes:
200 OK – Service Updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Service not found
- DELETE /1.0/services/{name}
Delete a service
- Parameters:
name (string) – Service name.
- Status Codes:
200 OK – Service removed
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Service not found
- GET /1.0/services/{name}/plans
Plans for a service
- Parameters:
name (string) – Service name.
- Query Parameters:
pool (string)
- Status Codes:
200 OK – Service plans
401 Unauthorized – Unauthorized
404 Not Found – Service not found
- Response JSON Object:
[].description (string)
[].name (string)
- GET /1.0/services/{name}/doc
Documentation on a service
- Parameters:
name (string) – Service name.
- Status Codes:
200 OK – Service docs
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Service not found
- PUT /1.0/services/{name}/doc
Documentation on a service
- Parameters:
name (string) – Service name.
- Request JSON Object:
doc (string)
- Status Codes:
200 OK – Service docs added
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
- PUT /1.0/services/{service}/team/{team}
Grant access to team for the service
- Parameters:
service (string) – Service name.
team (string) – Team name
- Status Codes:
200 OK – Team access granted
400 Bad Request – Team not found
401 Unauthorized – Unauthorized
404 Not Found – Service not found
409 Conflict – Team already has access to this service
- DELETE /1.0/services/{service}/team/{team}
Revoke access to team for the service
- Parameters:
service (string) – Service name.
team (string) – Team name
- Status Codes:
200 OK – Team access revoked
400 Bad Request – Team not found
401 Unauthorized – Unauthorized
404 Not Found – Service not found
409 Conflict – Team does not has access to this service
- GET /1.0/services/instances
List service instances
- Query Parameters:
app (string) – Filter instances by app name
- Status Codes:
200 OK – Service instances
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].instances[] (string)
[].plans[] (string)
[].service (string)
[].service_instances[].apps[] (string)
[].service_instances[].bound_units[].app_name (string)
[].service_instances[].bound_units[].id (string)
[].service_instances[].bound_units[].ip (string)
[].service_instances[].description (string)
[].service_instances[].id (integer)
[].service_instances[].jobs[] (string)
[].service_instances[].name (string)
[].service_instances[].parameters (object)
[].service_instances[].plan_name (string)
[].service_instances[].pool (string)
[].service_instances[].service_name (string)
[].service_instances[].tags[] (string)
[].service_instances[].team_owner (string)
[].service_instances[].teams[] (string)
- POST /1.0/services/{service}/instances
Create a service instance
- Parameters:
service (string) – Service name.
- Request JSON Object:
apps[] (string)
bound_units[].app_name (string)
bound_units[].id (string)
bound_units[].ip (string)
description (string)
id (integer)
jobs[] (string)
name (string)
parameters (object)
plan_name (string)
pool (string)
service_name (string)
tags[] (string)
team_owner (string)
teams[] (string)
- Status Codes:
200 OK – Service instance created
401 Unauthorized – Unauthorized
404 Not Found – Service not found
- GET /1.0/services/{service}/instances/{instance}
Get service instance information
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
- Status Codes:
200 OK – Service instance
401 Unauthorized – Unauthorized
404 Not Found – Service instance not found
- Response JSON Object:
apps[] (string)
custominfo (object)
description (string)
jobs[] (string)
parameters (object)
plandescription (string)
planname (string)
pool (string)
tags[] (string)
teamowner (string)
teams[] (string)
- PUT /1.0/services/{service}/instances/{instance}
Update a service instance
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
- Request JSON Object:
description (string)
parameters (object)
plan (string)
tags[] (string)
teamowner (string)
- Status Codes:
200 OK – Service instance updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Service instance not found
- DELETE /1.0/services/{service}/instances/{instance}
Remove service instance
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
- Query Parameters:
unbindall (boolean) – Remove current binds to this instance
- Status Codes:
200 OK – Service removed
400 Bad Request – Bad request
401 Unauthorized – Unauthorized
404 Not Found – Service instance not found
- PUT /1.0/services/{service}/instances/{instance}/{app}
Bind the service instance to app
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
app (string) – App name.
- Request JSON Object:
noRestart (boolean)
parameters (object)
- Status Codes:
200 OK – Instance bound to the app.
401 Unauthorized – Unauthorized
- DELETE /1.0/services/{service}/instances/{instance}/{app}
Unbind the service instance from app
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
app (string) – App name.
- Request JSON Object:
force (boolean)
noRestart (boolean)
- Status Codes:
200 OK – Instance has been unbound from the app.
401 Unauthorized – Unauthorized
- GET /1.0/services/{service}/instances/{instance}/status
Status for service instance
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
- Status Codes:
200 OK – Instance has been unbound from the app.
401 Unauthorized – Unauthorized
404 Not Found – Service instance or team not found
- PUT /1.0/services/{service}/instances/permission/{instance}/{team}
Grant access to team for this service instance
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
team (string) – Team name.
- Status Codes:
200 OK – Access granted
401 Unauthorized – Unauthorized
404 Not Found – Service instance or team not found
- DELETE /1.0/services/{service}/instances/permission/{instance}/{team}
Revoke access to team for this service instance
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
team (string) – Team name.
- Status Codes:
200 OK – Access revoked
401 Unauthorized – Unauthorized
404 Not Found – Service instance or team not found
- PUT /1.13/services/{service}/instances/{instance}/apps/{app}
Bind the service instance to app
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
app (string) – App name.
- Request JSON Object:
noRestart (boolean)
parameters (object)
- Status Codes:
200 OK – Instance bound to the app.
401 Unauthorized – Unauthorized
404 Not Found – App not found.
- DELETE /1.13/services/{service}/instances/{instance}/apps/{app}
Unbind the service instance from app
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
app (string) – App name.
- Request JSON Object:
force (boolean)
noRestart (boolean)
- Status Codes:
200 OK – Instance has been unbound from the app.
401 Unauthorized – Unauthorized
404 Not Found – App not found.
- PUT /1.13/services/{service}/instances/{instance}/jobs/{job}
Bind the service instance to job
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
job (string) – Job name.
- Request JSON Object:
parameters (object)
- Status Codes:
200 OK – Instance bound to the job.
401 Unauthorized – Unauthorized
404 Not Found – Job not found.
- DELETE /1.13/services/{service}/instances/{instance}/jobs/{job}
Unbind the service instance from job
- Parameters:
service (string) – Service name.
instance (string) – Instance name.
job (string) – Job name.
- Request JSON Object:
force (boolean)
- Status Codes:
200 OK – Instance has been unbound from the job.
401 Unauthorized – Unauthorized
404 Not Found – Job not found.
- GET /1.7/brokers
List service brokers
- Status Codes:
200 OK – List service brokers
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
brokers[].Config (any)
brokers[].Name (string)
brokers[].URL (string)
- POST /1.7/brokers
Create service broker
- Request JSON Object:
Config (any)
Name (string)
URL (string)
- Status Codes:
200 OK – Service Broker created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
409 Conflict – Service Broker already exists.
- DELETE /1.7/brokers/{name}
- Parameters:
name (string) – Service Broker name.
- Status Codes:
200 OK – Service Broker deleted.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
404 Not Found – Service Broker not found.
- PUT /1.7/brokers/{name}
Update service broker
- Parameters:
name (string) – Service Broker name.
- Request JSON Object:
Config (any)
Name (string)
URL (string)
- Status Codes:
200 OK – Service Broker updated.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
404 Not Found – Service Broker not found.
- GET /1.0/plans
List plans.
- Status Codes:
200 OK – Plans list
204 No Content – No content
- Response JSON Object:
[].cpuBurst.default (number)
[].cpuBurst.maxAllowed (number)
[].cpumilli (integer)
[].default (boolean)
[].memory (integer)
[].name (string)
[].override.cpuBurst (number)
[].override.cpumilli (integer)
[].override.memory (integer)
- POST /1.0/plans
Create a new plan
- Request JSON Object:
cpuBurst.default (number)
cpuBurst.maxAllowed (number)
cpumilli (integer)
default (boolean)
memory (integer)
name (string)
override.cpuBurst (number)
override.cpumilli (integer)
override.memory (integer)
- Status Codes:
201 Created – Plan created
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
409 Conflict – Plan already exists
- Response JSON Object:
cpuBurst.default (number)
cpuBurst.maxAllowed (number)
cpumilli (integer)
default (boolean)
memory (integer)
name (string)
override.cpuBurst (number)
override.cpumilli (integer)
override.memory (integer)
- DELETE /1.0/plans/{plan}
Remove a plan
- Parameters:
plan (string) – Remove current plan
- Status Codes:
200 OK – Plan removed
401 Unauthorized – Unauthorized
404 Not Found – Plan not found
- GET /1.0/apps
List apps.
- Query Parameters:
locked (boolean) – Filter applications by lock status.
name (string) – Filter applications by name.
owner (string) – Filter applications by owner.
platform (string) – Filter applications by platform.
pool (string) – Filter applications by pool.
status (string) – Filter applications by unit status.
tag (array) – Filter applications by tag.
teamOwner (string) – Filter applications by team owner.
simplified (boolean) – Returns applications without units list.
- Status Codes:
200 OK – List apps
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].cname[] (string)
[].error (string)
[].ip (string)
[].lock.acquireDate (string)
[].lock.locked (boolean)
[].lock.owner (string)
[].lock.reason (string)
[].name (string)
[].plan.cpuBurst.default (number)
[].plan.cpuBurst.maxAllowed (number)
[].plan.cpumilli (integer)
[].plan.default (boolean)
[].plan.memory (integer)
[].plan.name (string)
[].plan.override.cpuBurst (number)
[].plan.override.cpumilli (integer)
[].plan.override.memory (integer)
[].pool (string)
[].routers[].address (string)
[].routers[].name (string)
[].routers[].opts (object)
[].routers[].status (string)
[].routers[].status-detail (string)
[].routers[].type (string)
[].tags[] (string)
[].teamOwner (string)
[].units[].address.host (string)
[].units[].address.scheme (string)
[].units[].appname (string)
[].units[].createdAt (string)
[].units[].id (string)
[].units[].ip (string)
[].units[].name (string)
[].units[].processname (string)
[].units[].ready (boolean)
[].units[].restarts (integer)
[].units[].routable (boolean)
[].units[].status (string)
[].units[].type (string)
[].units[].version (integer)
- POST /1.0/apps
Create a new app.
- Request JSON Object:
description (string) – App description.
metadata.annotations[].delete (boolean)
metadata.annotations[].name (string)
metadata.annotations[].value (string)
metadata.labels[].delete (boolean)
metadata.labels[].name (string)
metadata.labels[].value (string)
name (string) – App name. (required)
plan (string) – App plan name.
platform (string) – App platform.
pool (string) – App pool name.
router (string) – App router name.
routeropts (object) – Custom router options.
tags[] (string)
teamOwner (string) – Team that owns the app.
- Status Codes:
201 Created – App created
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Quota exceeded
409 Conflict – App already exists
- Response JSON Object:
ip (string)
repository_url (string)
status (string)
- GET /1.0/apps/{app}
Get info about a tsuru app.
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – App info
401 Unauthorized – Unauthorized.
404 Not Found – App not found.
- Response JSON Object:
autoscaleRecommendation[].process (string)
autoscaleRecommendation[].recommendations[].cpu (string)
autoscaleRecommendation[].recommendations[].memory (string)
autoscaleRecommendation[].recommendations[].type (string)
autoscale[].averageCPU (string)
autoscale[].maxUnits (integer)
autoscale[].minUnits (integer)
autoscale[].process (string)
autoscale[].version (integer)
cluster (string) – Cluster name
cname[] (string)
deploys (integer) – Number of Deploys
description (string) – App description.
error (string) – Errors during AppGet
internalAddresses[].Domain (string)
internalAddresses[].Port (integer)
internalAddresses[].Process (string)
internalAddresses[].Protocol (string)
internalAddresses[].Version (string)
ip (string)
lock.acquireDate (string)
lock.locked (boolean)
lock.owner (string)
lock.reason (string)
metadata.annotations[].delete (boolean)
metadata.annotations[].name (string)
metadata.annotations[].value (string)
metadata.labels[].delete (boolean)
metadata.labels[].name (string)
metadata.labels[].value (string)
name (string) – App name. (required)
owner (string)
plan.cpuBurst.default (number)
plan.cpuBurst.maxAllowed (number)
plan.cpumilli (integer)
plan.default (boolean)
plan.memory (integer)
plan.name (string)
plan.override.cpuBurst (number)
plan.override.cpumilli (integer)
plan.override.memory (integer)
platform (string) – App platform.
pool (string) – App pool.
provisioner (string) – App provisioner.
quota.inuse (integer)
quota.limit (integer)
router (string) – App router.
routeropts (object) – Custom router options.
routers[].addresses[] (string)
routers[].name (string)
routers[].opts (object)
serviceInstanceBinds[].instance (string)
serviceInstanceBinds[].plan (string)
serviceInstanceBinds[].service (string)
tags[] (string)
teamOwner (string) – Team that owns the app.
teams[] (string)
unitsMetrics[].cpu (string)
unitsMetrics[].id (string)
unitsMetrics[].memory (string)
units[].address.host (string)
units[].address.scheme (string)
units[].appname (string)
units[].createdAt (string)
units[].id (string)
units[].ip (string)
units[].name (string)
units[].processname (string)
units[].ready (boolean)
units[].restarts (integer)
units[].routable (boolean)
units[].status (string)
units[].type (string)
units[].version (integer)
volumeBinds[].ID.App (string)
volumeBinds[].ID.MountPoint (string)
volumeBinds[].ID.Volume (string)
volumeBinds[].ReadOnly (boolean)
- DELETE /1.0/apps/{app}
Delete a tsuru app.
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – App removed.
401 Unauthorized – Unauthorized.
404 Not Found – App not found.
- PUT /1.0/apps/{app}
Update a tsuru app.
- Parameters:
app (string) – App name.
- Request JSON Object:
description (string) – App description.
imageReset (boolean) – Reset app image to platform base image.
metadata.annotations[].delete (boolean)
metadata.annotations[].name (string)
metadata.annotations[].value (string)
metadata.labels[].delete (boolean)
metadata.labels[].name (string)
metadata.labels[].value (string)
noRestart (boolean) – Prevent app restart.
plan (string) – App plan name.
planoverride.cpuBurst (number)
planoverride.cpumilli (integer)
planoverride.memory (integer)
platform (string) – App platform.
pool (string) – App pool name.
tags[] (string)
teamOwner (string) – Team that owns the app.
- Status Codes:
200 OK – App updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Not found
- PUT /1.0/apps/{app}/certificate
Create a certificate
- Parameters:
app (string) – App name.
- Request JSON Object:
certificate (string)
cname (string)
key (string)
- Status Codes:
201 Created – Certificate created
401 Unauthorized – Unauthorized
409 Conflict – Certificate already exists
- DELETE /1.0/apps/{app}/certificate
Unset app certificate.
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – Certificate deleted
401 Unauthorized – Unauthorized
403 Forbidden – Unauthorized
404 Not Found – Certificate not found
- POST /1.5/apps/{app}/build
Build a Tsuru app image (a regular container image) following the deploy’s workflow but don’t roll it out to the provisioner. That ends up with a container image that can be pulled by the user or used to deploy the app later.
- Parameters:
app (string) – Application name
- Status Codes:
200 OK – Build finished successfully
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
- POST /1.0/apps/{app}/deploy
Build a new Tsuru app image and roll it out to the provisioner.
- Parameters:
app (string) – Application name
- Status Codes:
200 OK – Deploy finished successfully
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- POST /1.0/apps/{app}/cname
adds a cname to app
- Parameters:
app (string) – App name.
- Request JSON Object:
cname[] (string)
- Status Codes:
200 OK – Cname added
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- DELETE /1.0/apps/{app}/cname
remove cname from app
- Parameters:
app (string) – App name.
- Request JSON Object:
cname[] (string)
- Status Codes:
200 OK – Cname removed
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- POST /1.0/apps/{app}/run
run commands inside an app
- Parameters:
app (string) – App name.
- Request JSON Object:
command (string)
isolated (boolean)
once (boolean)
- Status Codes:
200 OK – Envs updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- POST /1.0/apps/{app}/env
Set new environment variable.
- Parameters:
app (string) – App name.
- Request JSON Object:
envs[].alias (string)
envs[].managedBy (string)
envs[].name (string)
envs[].private (boolean)
envs[].value (string)
managedBy (string)
norestart (boolean)
private (boolean)
pruneUnused (boolean)
- Status Codes:
200 OK – Envs updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- GET /1.0/apps/{app}/env
Get app environment variables.
- Parameters:
app (string) – App name.
- Query Parameters:
env (string) – Environment variable name.
- Status Codes:
200 OK – Environment variables
401 Unauthorized – Unauthorized
404 Not Found – App not found
- Response JSON Object:
[].alias (string)
[].managedBy (string)
[].name (string)
[].public (boolean)
[].value (string)
- DELETE /1.0/apps/{app}/env
Unset app environment variables.
- Parameters:
app (string) – App name.
- Query Parameters:
env (array)
norestart (boolean)
- Status Codes:
200 OK – Envs deleted
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- GET /1.0/apps/{app}/quota
Shows app usage info and its quota limit.
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
404 Not Found – App not found
- Response JSON Object:
inuse (integer)
limit (integer)
- PUT /1.0/apps/{app}/quota
Changes the maximum limit of units allowed for use.
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – Quota updated
401 Unauthorized – Unauthorized
403 Forbidden – Limit lower than allocated
404 Not Found – App not found
- POST /1.0/apps/{app}/start
Start App.
- Parameters:
app (string) – App name.
- Request JSON Object:
process (string)
version (string)
- Status Codes:
200 OK – App started
401 Unauthorized – Unauthorized
404 Not Found – App not found
- POST /1.0/apps/{app}/stop
Stop App.
- Parameters:
app (string) – App name.
- Request JSON Object:
process (string)
version (string)
- Status Codes:
200 OK – App stopped
401 Unauthorized – Unauthorized
404 Not Found – App not found
- POST /1.0/apps/{app}/restart
Restart App.
- Parameters:
app (string) – App name.
- Request JSON Object:
process (string)
version (string)
- Status Codes:
200 OK – App restarted
401 Unauthorized – Unauthorized
404 Not Found – App not found
- POST /1.8/apps/{app}/routable
Sets a version as routable.
- Parameters:
app (string) – App name.
- Request JSON Object:
isRoutable (boolean)
version (string)
- Status Codes:
200 OK – App updated
400 Bad Request – Invalid arguments
401 Unauthorized – Unauthorized
404 Not Found – App not found
- GET /1.5/apps/{app}/routers
list routers from an app
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – Routers list
204 No Content – No content
401 Unauthorized – Unauthorized
404 Not Found – App not found
- Response JSON Object:
[].address (string)
[].addresses[] (string)
[].name (string)
[].opts (object)
[].status (string)
[].status-detail (string)
[].type (string)
- POST /1.5/apps/{app}/routers
adds a router to app
- Parameters:
app (string) – App name.
- Request JSON Object:
address (string)
addresses[] (string)
name (string)
opts (object)
status (string)
status-detail (string)
type (string)
- Status Codes:
200 OK – Router added
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- PUT /1.5/apps/{app}/routers/{router}
update a router
- Parameters:
app (string) – App name.
router (string) – Router name
- Request JSON Object:
address (string)
addresses[] (string)
name (string)
opts (object)
status (string)
status-detail (string)
type (string)
- Status Codes:
200 OK – Router updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- DELETE /1.5/apps/{app}/routers/{router}
Delete a tsuru app.
- Parameters:
app (string) – App name.
router (string) – Router name
- Status Codes:
200 OK – App removed.
401 Unauthorized – Unauthorized.
404 Not Found – App not found.
- PUT /1.0/apps/{app}/teams/{team}
grant access to a team
- Parameters:
app (string) – App name.
team (string) – Team name
- Status Codes:
200 OK – Access granted
401 Unauthorized – Unauthorized
404 Not Found – App or team not found
409 Conflict – Grant already exists
- DELETE /1.0/apps/{app}/teams/{team}
grant access to a team
- Parameters:
app (string) – App name.
team (string) – Team name
- Status Codes:
200 OK – Access revoked
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – App or team not found
- PUT /1.0/apps/{app}/units
Add units to app
- Parameters:
app (string) – App name.
- Request JSON Object:
process (string)
units (string)
version (string)
- Status Codes:
200 OK – Access revoked
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – App or team not found
- DELETE /1.0/apps/{app}/units
Remove units from app
- Parameters:
app (string) – App name.
- Request JSON Object:
process (string)
units (string)
version (string)
- Status Codes:
200 OK – Access revoked
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – App or team not found
- GET /1.9/apps/{app}/units/autoscale
List autoscales for app.
- Parameters:
app (string) – App name.
- Status Codes:
200 OK – AutoScale info
401 Unauthorized – Unauthorized
403 Forbidden – Unauthorized
404 Not Found – App not found
- Response JSON Object:
[].averageCPU (string)
[].maxUnits (integer)
[].minUnits (integer)
[].process (string)
[].version (integer)
- POST /1.9/apps/{app}/units/autoscale
Add new unit autoscale spec.
- Parameters:
app (string) – App name.
- Request JSON Object:
averageCPU (string)
maxUnits (integer)
minUnits (integer)
process (string)
version (integer)
- Status Codes:
200 OK – AutoScale updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – App not found
- DELETE /1.9/apps/{app}/units/autoscale
Remove unit autoscale spec.
- Parameters:
app (string) – App name.
- Query Parameters:
process (string)
- Status Codes:
200 OK – AutoScale removed
401 Unauthorized – Unauthorized
404 Not Found – App not found
- DELETE /1.0/platforms/{platform}
Delete platform.
- Parameters:
platform (string) – Platform name.
- Status Codes:
200 OK – Platform removed
401 Unauthorized – Unauthorized
404 Not Found – Not found
- PUT /1.0/platforms/{platform}
Update platform.
- Parameters:
platform (string) – Platform name.
- Status Codes:
200 OK – Platform updated
401 Unauthorized – Unauthorized
404 Not Found – Not found
- GET /1.0/platforms
List platforms.
- Status Codes:
200 OK – Platform list
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].disabled (boolean)
[].name (string)
- POST /1.0/platforms
Add new platform.
- Status Codes:
200 OK – Platform created
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
- GET /1.6/platforms/{platform}
Platform info.
- Parameters:
platform (string) – Platform info.
- Status Codes:
200 OK – Platform info
401 Unauthorized – Unauthorized
404 Not Found – Not found
- Response JSON Object:
images[] (string)
platform.disabled (boolean)
platform.name (string)
- POST /1.6/platforms/{platform}/rollback
Platform rollback.
- Parameters:
platform (string) – Platform name.
- Query Parameters:
image (string)
- Status Codes:
200 OK – Ok
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Not found
- GET /1.0/teams
List teams.
- Status Codes:
200 OK – Team list.
204 No Content – No content.
401 Unauthorized – Unauthorized
- Response JSON Object:
[].name (string)
[].permissions[] (string)
[].tags[] (string)
- POST /1.0/teams
Create a team.
- Request JSON Object:
name (string)
tags[] (string)
- Status Codes:
201 Created – Team created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
409 Conflict – Team already exists
- DELETE /1.0/teams/{team}
Delete a team.
- Parameters:
team (string) – Team name.
- Status Codes:
200 OK – Team removed.
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Team not found
- GET /1.4/teams/{team}
Get a team.
- Parameters:
team (string) – Team name.
- Status Codes:
200 OK – Team data
401 Unauthorized – Unauthorized
404 Not Found – Team not found
- Response JSON Object:
apps[].autoscaleRecommendation[].process (string)
apps[].autoscaleRecommendation[].recommendations[].cpu (string)
apps[].autoscaleRecommendation[].recommendations[].memory (string)
apps[].autoscaleRecommendation[].recommendations[].type (string)
apps[].autoscale[].averageCPU (string)
apps[].autoscale[].maxUnits (integer)
apps[].autoscale[].minUnits (integer)
apps[].autoscale[].process (string)
apps[].autoscale[].version (integer)
apps[].cluster (string) – Cluster name
apps[].cname[] (string)
apps[].deploys (integer) – Number of Deploys
apps[].description (string) – App description.
apps[].error (string) – Errors during AppGet
apps[].internalAddresses[].Domain (string)
apps[].internalAddresses[].Port (integer)
apps[].internalAddresses[].Process (string)
apps[].internalAddresses[].Protocol (string)
apps[].internalAddresses[].Version (string)
apps[].ip (string)
apps[].lock.acquireDate (string)
apps[].lock.locked (boolean)
apps[].lock.owner (string)
apps[].lock.reason (string)
apps[].metadata.annotations[].delete (boolean)
apps[].metadata.annotations[].name (string)
apps[].metadata.annotations[].value (string)
apps[].metadata.labels[].delete (boolean)
apps[].metadata.labels[].name (string)
apps[].metadata.labels[].value (string)
apps[].name (string) – App name. (required)
apps[].owner (string)
apps[].plan.cpuBurst.default (number)
apps[].plan.cpuBurst.maxAllowed (number)
apps[].plan.cpumilli (integer)
apps[].plan.default (boolean)
apps[].plan.memory (integer)
apps[].plan.name (string)
apps[].plan.override.cpuBurst (number)
apps[].plan.override.cpumilli (integer)
apps[].plan.override.memory (integer)
apps[].platform (string) – App platform.
apps[].pool (string) – App pool.
apps[].provisioner (string) – App provisioner.
apps[].quota.inuse (integer)
apps[].quota.limit (integer)
apps[].router (string) – App router.
apps[].routeropts (object) – Custom router options.
apps[].routers[].addresses[] (string)
apps[].routers[].name (string)
apps[].routers[].opts (object)
apps[].serviceInstanceBinds[].instance (string)
apps[].serviceInstanceBinds[].plan (string)
apps[].serviceInstanceBinds[].service (string)
apps[].tags[] (string)
apps[].teamOwner (string) – Team that owns the app.
apps[].teams[] (string)
apps[].unitsMetrics[].cpu (string)
apps[].unitsMetrics[].id (string)
apps[].unitsMetrics[].memory (string)
apps[].units[].address.host (string)
apps[].units[].address.scheme (string)
apps[].units[].appname (string)
apps[].units[].createdAt (string)
apps[].units[].id (string)
apps[].units[].ip (string)
apps[].units[].name (string)
apps[].units[].processname (string)
apps[].units[].ready (boolean)
apps[].units[].restarts (integer)
apps[].units[].routable (boolean)
apps[].units[].status (string)
apps[].units[].type (string)
apps[].units[].version (integer)
apps[].volumeBinds[].ID.App (string)
apps[].volumeBinds[].ID.MountPoint (string)
apps[].volumeBinds[].ID.Volume (string)
apps[].volumeBinds[].ReadOnly (boolean)
name (string)
pools[].allowed (object)
pools[].default (boolean)
pools[].labels (object)
pools[].name (string)
pools[].provisioner (string)
pools[].public (boolean)
pools[].teams[] (string)
tags[] (string)
users[].email (string)
users[].groups[] (string)
users[].permissions[].contexttype (string)
users[].permissions[].contextvalue (string)
users[].permissions[].group (string)
users[].permissions[].name (string)
users[].roles[].contexttype (string)
users[].roles[].contextvalue (string)
users[].roles[].group (string)
users[].roles[].name (string)
- GET /1.17/teams/{team}/users
Get users of a team
- Parameters:
team (string) – Team name.
- Status Codes:
200 OK – User list
401 Unauthorized – Unauthorized
404 Not Found – Team not found
- Response JSON Object:
[].email (string)
[].roles[] (string)
- GET /1.17/teams/{team}/groups
Get groups of a team
- Parameters:
team (string) – Team name.
- Status Codes:
200 OK – Group list
401 Unauthorized – Unauthorized
404 Not Found – Team not found
- Response JSON Object:
[].group (string)
[].roles[] (string)
- PUT /1.6/teams/{team}
Update a team.
- Parameters:
team (string) – Team name.
- Request JSON Object:
newname (string)
tags[] (string)
- Status Codes:
200 OK – Team updated
400 Bad Request – Unauthorized
401 Unauthorized – Invalid data
404 Not Found – Team not found
- GET /1.12/teams/{team}/quota
Get quota of a team.
- Parameters:
team (string) – Team name.
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
404 Not Found – Team not found
- Response JSON Object:
inuse (integer)
limit (integer)
- PUT /1.12/teams/{team}/quota
Changes the team’s apps limit.
- Parameters:
team (string) – Team name.
- Status Codes:
200 OK – Quota updated
401 Unauthorized – Unauthorized
403 Forbidden – Limit lower than allocated
404 Not Found – Team not found
- GET /1.0/users
List users.
- Query Parameters:
userEmail (string)
role (string)
context (string)
- Status Codes:
200 OK – List users.
401 Unauthorized – Unauthorized
- Response JSON Object:
[].email (string)
[].groups[] (string)
[].permissions[].contexttype (string)
[].permissions[].contextvalue (string)
[].permissions[].group (string)
[].permissions[].name (string)
[].roles[].contexttype (string)
[].roles[].contextvalue (string)
[].roles[].group (string)
[].roles[].name (string)
- POST /1.0/users
Create a new user.
- Request JSON Object:
email (string)
password (string)
- Status Codes:
201 Created – User created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
409 Conflict – User already exists
- DELETE /1.0/users
Delete an user.
- Query Parameters:
email (string) – User e-mail.
- Status Codes:
200 OK – User removed
401 Unauthorized – Unauthorized
404 Not Found – Not found
- GET /1.0/users/api-key
Show the API token of an user.
- Query Parameters:
email (string)
- Status Codes:
200 OK – API TOKEN
401 Unauthorized – Unauthorized
404 Not Found – User not found
- POST /1.0/users/api-key
Regenerate the API Token of an user.
- Query Parameters:
email (string)
- Status Codes:
200 OK – API TOKEN
401 Unauthorized – Unauthorized
404 Not Found – User not found
- GET /1.0/users/keys
Show the list of the ssh keys of logged user.
- Status Codes:
200 OK – OK
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
- Response JSON Object:
keyname (string) – keyvalue
- POST /1.0/users/keys
Add SSH key to logged user.
- Request JSON Object:
force (boolean)
key (string)
keyname (string)
- Status Codes:
200 OK – Ok
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
409 Conflict – Key already exists
- DELETE /1.0/users/keys/{key}
Delete one ssh key of logged user.
- Parameters:
key (string)
- Status Codes:
200 OK – Ok
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Not found
- GET /1.0/users/info
Get information on logged user.
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
- Response JSON Object:
email (string)
groups[] (string)
permissions[].contexttype (string)
permissions[].contextvalue (string)
permissions[].group (string)
permissions[].name (string)
roles[].contexttype (string)
roles[].contextvalue (string)
roles[].group (string)
roles[].name (string)
- GET /1.0/users/{email}/quota
Get quota of an user.
- Parameters:
email (string) – User e-mail.
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
404 Not Found – User not found
- Response JSON Object:
inuse (integer)
limit (integer)
- PUT /1.0/users/{email}/quota
Change quota of an user.
- Parameters:
email (string) – User e-mail.
- Query Parameters:
limit (integer) – User new quota.
- Status Codes:
200 OK – Quota successfully updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – User not found
- PUT /1.0/users/password
Change password of logged user.
- Request JSON Object:
confirm (string)
new (string)
old (string)
- Status Codes:
200 OK – Ok
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not found
- POST /1.0/users/{email}/password
Reset password of an user.
- Parameters:
email (string)
- Status Codes:
200 OK – Ok
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not found
- GET /1.2/node
List nodes.
- Status Codes:
200 OK – Nodes List.
204 No Content – No content.
- Response JSON Object:
machines[].address (string)
machines[].creationparams (object)
machines[].iaas (string)
machines[].id (string)
machines[].port (integer)
machines[].protocol (string)
nodes[].address (string)
nodes[].iaasid (string)
nodes[].metadata (object)
nodes[].pool (string)
nodes[].provisioner (string)
nodes[].status (string)
- POST /1.2/node
Add a node.
- Request JSON Object:
address (string)
cacert (string) – Docker API CA certificate.
clientcert (string) – Docker API client certificate.
clientkey (string) – Docker API client key.
metadata (object)
register (boolean) – Register an existing node.
waitto (integer) – Timeout in nanoseconds.
- Status Codes:
201 Created – Ok
400 Bad Request – Invalid parameters
401 Unauthorized – Unauthorized
- PUT /1.2/node
Update node.
- Request JSON Object:
address (string)
disable (boolean)
enable (boolean)
metadata (object)
pool (string)
- Status Codes:
200 OK – Ok
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Not found
- DELETE /1.2/node/{address}
Remove node.
- Parameters:
address (string) – Node address.
- Query Parameters:
no-rebalance (boolean) – Trigger node rebalance.
remove-iaas (boolean) – Remove machine from IaaS.
- Status Codes:
200 OK – Ok
401 Unauthorized – Unauthorized
404 Not Found – Not found
- GET /1.2/node/{address}
Get node information.
- Parameters:
address (string) – Node address.
- Status Codes:
200 OK – Ok
401 Unauthorized – Unauthorized
404 Not Found – Not found
- Response JSON Object:
node.address (string)
node.iaasid (string)
node.metadata (object)
node.pool (string)
node.provisioner (string)
node.status (string)
status.address (string)
status.checks[].checks[].err (string)
status.checks[].checks[].name (string)
status.checks[].checks[].successful (boolean)
status.checks[].time (string)
status.lastsuccess (string)
status.lastupdate (string)
units.address.host (string)
units.address.scheme (string)
units.appname (string)
units.createdAt (string)
units.id (string)
units.ip (string)
units.name (string)
units.processname (string)
units.ready (boolean)
units.restarts (integer)
units.routable (boolean)
units.status (string)
units.type (string)
units.version (integer)
- GET /1.4/volumes
List volumes.
- Status Codes:
200 OK – List volumes
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].binds[].id.app (string) – App the volume is bound to.
[].binds[].id.mountpoint (string) – Volume mountpoint.
[].binds[].id.volume (string) – Volume name.
[].binds[].readonly (boolean) – Volume is read-only.
[].name (string) – Volume name.
[].opts (object) – Custom volume options.
[].plan.name (string) – Volume plan name.
[].plan.opts (object) – Volume plan opts.
[].pool (string) – Volume pool.
[].status (string) – Volume status.
[].teamOwner (string) – Team that owns the volume.
- POST /1.4/volumes
Create volume.
- Request JSON Object:
binds[].id.app (string) – App the volume is bound to.
binds[].id.mountpoint (string) – Volume mountpoint.
binds[].id.volume (string) – Volume name.
binds[].readonly (boolean) – Volume is read-only.
name (string) – Volume name.
opts (object) – Custom volume options.
plan.name (string) – Volume plan name.
plan.opts (object) – Volume plan opts.
pool (string) – Volume pool.
status (string) – Volume status.
teamOwner (string) – Team that owns the volume.
- Status Codes:
201 Created – Volume created
401 Unauthorized – Unauthorized
409 Conflict – Volume already exists
- GET /1.0/pools
List pools.
- Status Codes:
200 OK – Pools list
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].allowed (object)
[].default (boolean)
[].labels (object)
[].name (string)
[].provisioner (string)
[].public (boolean)
[].teams[] (string)
- POST /1.0/pools
Creates a pool.
- Request JSON Object:
default (boolean)
force (boolean)
labels (object)
name (string)
provisioner (string)
public (boolean)
- Status Codes:
201 Created – Pool created
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
409 Conflict – Pool already exists
- GET /pools/{pool}
Get pool information
- Parameters:
pool (string)
- Status Codes:
200 OK – Pool data
401 Unauthorized – Unauthorized
404 Not Found – Pool not found
- Response JSON Object:
allowed (object)
default (boolean)
labels (object)
name (string)
provisioner (string)
public (boolean)
teams[] (string)
- DELETE /pools/{pool}
Deletes a pool.
- Parameters:
pool (string)
- Status Codes:
200 OK – Pool deleted
401 Unauthorized – Unauthorized
403 Forbidden – Pool still has apps
404 Not Found – Pool not found
- PUT /pools/{pool}
Updates a pool.
- Parameters:
pool (string)
- Request JSON Object:
default (boolean)
force (boolean)
labels (object)
public (boolean)
- Status Codes:
200 OK – Pool updated
401 Unauthorized – Unauthorized
404 Not Found – Pool not found
409 Conflict – Default pool already defined
- GET /1.3/provisioner/clusters
List cluster
- Status Codes:
200 OK – Cluster
401 Unauthorized – Unauthorized
404 Not Found – Cluster not found
- Response JSON Object:
[].addresses[] (string)
[].cacert (string)
[].clientcert (string)
[].clientkey (string)
[].custom_data (object)
[].default (boolean)
[].httpProxy (string)
[].kubeConfig.cluster.certificate-authority-data (string)
[].kubeConfig.cluster.insecure-skip-tls-verify (boolean)
[].kubeConfig.cluster.server (string) – (required)
[].kubeConfig.cluster.tls-server-name (string)
[].kubeConfig.user.auth-provider.config (object)
[].kubeConfig.user.auth-provider.name (string)
[].kubeConfig.user.client-certificate-data (string)
[].kubeConfig.user.client-key-data (string)
[].kubeConfig.user.exec.apiVersion (string)
[].kubeConfig.user.exec.args[] (string)
[].kubeConfig.user.exec.command (string)
[].kubeConfig.user.exec.env[].name (string)
[].kubeConfig.user.exec.env[].value (string)
[].kubeConfig.user.password (string)
[].kubeConfig.user.token (string)
[].kubeConfig.user.username (string)
[].local (boolean)
[].name (string)
[].pools[] (string)
[].provisioner (string)
- POST /1.3/provisioner/clusters
Create cluster.
- Request JSON Object:
addresses[] (string)
cacert (string)
clientcert (string)
clientkey (string)
custom_data (object)
default (boolean)
httpProxy (string)
kubeConfig.cluster.certificate-authority-data (string)
kubeConfig.cluster.insecure-skip-tls-verify (boolean)
kubeConfig.cluster.server (string) – (required)
kubeConfig.cluster.tls-server-name (string)
kubeConfig.user.auth-provider.config (object)
kubeConfig.user.auth-provider.name (string)
kubeConfig.user.client-certificate-data (string)
kubeConfig.user.client-key-data (string)
kubeConfig.user.exec.apiVersion (string)
kubeConfig.user.exec.args[] (string)
kubeConfig.user.exec.command (string)
kubeConfig.user.exec.env[].name (string)
kubeConfig.user.exec.env[].value (string)
kubeConfig.user.password (string)
kubeConfig.user.token (string)
kubeConfig.user.username (string)
local (boolean)
name (string)
pools[] (string)
provisioner (string)
- Status Codes:
200 OK – Cluster created
401 Unauthorized – Unauthorized
404 Not Found – Cluster not found
- DELETE /1.3/provisioner/clusters/{cluster_name}
Delete cluster.
- Parameters:
cluster_name (string) – Cluster name.
- Status Codes:
200 OK – Cluster deleted
401 Unauthorized – Unauthorized
404 Not Found – Cluster not found
- POST /1.4/provisioner/clusters/{cluster_name}
Update cluster.
- Parameters:
cluster_name (string) – Cluster name.
- Request JSON Object:
addresses[] (string)
cacert (string)
clientcert (string)
clientkey (string)
custom_data (object)
default (boolean)
httpProxy (string)
kubeConfig.cluster.certificate-authority-data (string)
kubeConfig.cluster.insecure-skip-tls-verify (boolean)
kubeConfig.cluster.server (string) – (required)
kubeConfig.cluster.tls-server-name (string)
kubeConfig.user.auth-provider.config (object)
kubeConfig.user.auth-provider.name (string)
kubeConfig.user.client-certificate-data (string)
kubeConfig.user.client-key-data (string)
kubeConfig.user.exec.apiVersion (string)
kubeConfig.user.exec.args[] (string)
kubeConfig.user.exec.command (string)
kubeConfig.user.exec.env[].name (string)
kubeConfig.user.exec.env[].value (string)
kubeConfig.user.password (string)
kubeConfig.user.token (string)
kubeConfig.user.username (string)
local (boolean)
name (string)
pools[] (string)
provisioner (string)
- Status Codes:
200 OK – Cluster updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Cluster not found
- GET /1.8/provisioner/clusters/{cluster_name}
Cluster info
- Parameters:
cluster_name (string) – Cluster name.
- Status Codes:
200 OK – Cluster
401 Unauthorized – Unauthorized
404 Not Found – Cluster not found
- Response JSON Object:
addresses[] (string)
cacert (string)
clientcert (string)
clientkey (string)
custom_data (object)
default (boolean)
httpProxy (string)
kubeConfig.cluster.certificate-authority-data (string)
kubeConfig.cluster.insecure-skip-tls-verify (boolean)
kubeConfig.cluster.server (string) – (required)
kubeConfig.cluster.tls-server-name (string)
kubeConfig.user.auth-provider.config (object)
kubeConfig.user.auth-provider.name (string)
kubeConfig.user.client-certificate-data (string)
kubeConfig.user.client-key-data (string)
kubeConfig.user.exec.apiVersion (string)
kubeConfig.user.exec.args[] (string)
kubeConfig.user.exec.command (string)
kubeConfig.user.exec.env[].name (string)
kubeConfig.user.exec.env[].value (string)
kubeConfig.user.password (string)
kubeConfig.user.token (string)
kubeConfig.user.username (string)
local (boolean)
name (string)
pools[] (string)
provisioner (string)
- DELETE /1.4/volumes/{volume}
Delete volume.
- Parameters:
volume (string) – Volume name.
- Status Codes:
200 OK – Volume deleted
401 Unauthorized – Unauthorized
404 Not Found – Volume not found
- PUT /1.4/volumes/{volume}
Update volume.
- Parameters:
volume (string) – Volume name.
- Request JSON Object:
name (string) – Volume name.
opts (object) – Custom volume options.
plan.name (string) – Volume plan name.
plan.opts (object) – Volume plan opts.
pool (string) – Volume pool.
status (string) – Volume status.
teamOwner (string) – Team that owns the volume.
- Status Codes:
200 OK – Volume updated
401 Unauthorized – Unauthorized
404 Not Found – Volume not found
- GET /1.4/volumes/{volume}
Get a volume.
- Parameters:
volume (string) – Volume name.
- Status Codes:
200 OK – Volume
401 Unauthorized – Unauthorized
409 Conflict – Volume already exists
- Response JSON Object:
binds[].id.app (string) – App the volume is bound to.
binds[].id.mountpoint (string) – Volume mountpoint.
binds[].id.volume (string) – Volume name.
binds[].readonly (boolean) – Volume is read-only.
name (string) – Volume name.
opts (object) – Custom volume options.
plan.name (string) – Volume plan name.
plan.opts (object) – Volume plan opts.
pool (string) – Volume pool.
status (string) – Volume status.
teamOwner (string) – Team that owns the volume.
- POST /1.4/volumes/{volume}/bind
Bind volume.
- Parameters:
volume (string) – Volume name.
- Request JSON Object:
app (string)
mountpoint (string)
norestart (boolean)
readonly (boolean)
- Status Codes:
200 OK – Volume bind
401 Unauthorized – Unauthorized
404 Not Found – Volume not found
409 Conflict – Volume bind already exists
- DELETE /1.4/volumes/{volume}/bind
Unbind volume.
- Parameters:
volume (string) – Volume name.
- Request JSON Object:
app (string)
mountpoint (string)
norestart (boolean)
readonly (boolean)
- Status Codes:
200 OK – Volume unbinded
401 Unauthorized – Unauthorized
404 Not Found – Volume not found
- GET /1.4/volumeplans
List volume plans.
- Status Codes:
200 OK – Volume plans list
401 Unauthorized – Unauthorized
- POST /1.0/roles
create a role
- Request JSON Object:
contexttype (string)
description (string)
name (string)
- Status Codes:
201 Created – Role created
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
409 Conflict – Role already exists
- PUT /1.0/roles
update a role
- Request JSON Object:
contextType (string)
description (string)
name (string)
newName (string)
- Status Codes:
201 Created – Role updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
- DELETE /1.0/roles/{role_name}
delete a role
- Parameters:
role_name (string)
- Status Codes:
200 OK – Role deleted.
401 Unauthorized – Unauthorized.
404 Not Found – Role not found
- POST /1.0/roles/{role_name}/permissions
add a permission
- Parameters:
role_name (string)
- Request JSON Object:
name (string)
permission[] (string)
- Status Codes:
200 OK – Permission created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
409 Conflict – Permission not a allowed
- DELETE /1.0/roles{role_name}/permissions/{permission}
remove a permission
- Parameters:
role_name (string)
permission (string)
- Status Codes:
200 OK – Permission removed.
401 Unauthorized – Unauthorized.
404 Not Found – Not found
- POST /1,0/roles/{role_name}/user
assign a role
- Parameters:
role_name (string)
- Request JSON Object:
contextvalue (string)
name (string)
roletarget (string)
sufix (string)
version (string)
- Status Codes:
200 OK – Role assigned.
400 Bad Request – Invalid data.
401 Unauthorized – Unauthorized.
404 Not Found – Role not found
- DELETE /1.0/roles/{role_name}/user/{email}
Dissociate a role from user
- Parameters:
role_name (string)
email (string)
- Status Codes:
200 OK – Role dissociated.
400 Bad Request – Invalid data.
401 Unauthorized – Unauthorized.
404 Not Found – Role or token not found
- POST /1.0/role/default
add a default role
- Request JSON Object:
rolesmap (object)
- Status Codes:
200 OK – Default role created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
- DELETE /1.0/role/default
Delete a Default role
- Status Codes:
200 OK – Default role deleted.
400 Bad Request – Invalid data.
401 Unauthorized – Unauthorized.
- POST /1.6/roles/{role_name}/token
Assigns a role to a team token.
- Parameters:
role_name (string)
- Request JSON Object:
context (string)
token_id (string)
- Status Codes:
200 OK – Role assigned.
401 Unauthorized – Unauthorized.
404 Not Found – Role or token not found
- DELETE /1.6/roles/{role_name}/token/{token_id}
Dissociates a role from a team token.
- Parameters:
role_name (string)
token_id (string)
- Query Parameters:
context (string)
- Status Codes:
200 OK – Role dissociated.
401 Unauthorized – Unauthorized.
404 Not Found – Role or token not found
- GET /1.6/tokens
List team tokens.
- Status Codes:
200 OK – Team tokens list.
204 No Content – No content.
401 Unauthorized – Unauthorized.
- Response JSON Object:
[].created_at (string)
[].creator_email (string)
[].description (string)
[].expires_at (string)
[].last_access (string)
[].roles[].contextvalue (string)
[].roles[].name (string)
[].team (string)
[].token (string)
[].token_id (string)
- POST /1.6/tokens
Creates a team token.
- Request JSON Object:
description (string)
expires_in (integer) – Expire time in seconds.
team (string)
token_id (string)
- Status Codes:
201 Created – Team token created.
401 Unauthorized – Unauthorized.
409 Conflict – Token with the same ID already exists.
- Response JSON Object:
created_at (string)
creator_email (string)
description (string)
expires_at (string)
last_access (string)
roles[].contextvalue (string)
roles[].name (string)
team (string)
token (string)
token_id (string)
- DELETE /1.6/tokens/{token_id}
Deletes a team token.
- Parameters:
token_id (string) – Token ID.
- Status Codes:
200 OK – Team token deleted.
401 Unauthorized – Unauthorized.
404 Not Found – Team token not found.
- PUT /1.6/tokens/{token_id}
Updates a team token.
- Parameters:
token_id (string) – Token ID.
- Status Codes:
200 OK – Team token updated.
401 Unauthorized – Unauthorized.
404 Not Found – Team token not found.
- Response JSON Object:
created_at (string)
creator_email (string)
description (string)
expires_at (string)
last_access (string)
roles[].contextvalue (string)
roles[].name (string)
team (string)
token (string)
token_id (string)
- GET /1.7/tokens/{token_id}
Shows information about a specific token.
- Parameters:
token_id (string) – Token ID.
- Status Codes:
200 OK – Team token info.
401 Unauthorized – Unauthorized.
404 Not Found – Team token not found.
- Response JSON Object:
created_at (string)
creator_email (string)
description (string)
expires_at (string)
last_access (string)
roles[].contextvalue (string)
roles[].name (string)
team (string)
token (string)
token_id (string)
- GET /1.1/events/{eventid}
- Parameters:
eventid (string)
- Status Codes:
200 OK – Event info.
401 Unauthorized – Unauthorized.
404 Not Found – Team token not found.
- Response JSON Object:
EndCustomData.Data (string)
EndCustomData.Kind (number)
EndTime (string)
Error (string)
Log (string)
OtherCustomData.Data (string)
OtherCustomData.Kind (number)
Running (boolean)
StartCustomData.Data (string)
StartCustomData.Kind (number)
StartTime (string)
Target.Type (string)
Target.Value (string)
UniqueID (string)
- POST /1.1/events/{eventid}/cancel
- Parameters:
eventid (string)
- Request JSON Object:
reason (string)
- Status Codes:
204 No Content – Event cancellation requested.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
404 Not Found – Event not found
- GET /1.6/events/webhooks
- Status Codes:
200 OK – Webhooks list.
204 No Content – No content.
- Response JSON Object:
[].body (string)
[].description (string)
[].event_filter.error_only (boolean)
[].event_filter.kind_names[] (string)
[].event_filter.kind_types[] (string)
[].event_filter.success_only (boolean)
[].event_filter.target_types[] (string)
[].event_filter.target_values[] (string)
[].headers (object)
[].insecure (boolean)
[].method (string)
[].name (string)
[].proxy_url (string)
[].team_owner (string)
[].url (string)
- POST /1.6/events/webhooks
- Request JSON Object:
body (string)
description (string)
event_filter.error_only (boolean)
event_filter.kind_names[] (string)
event_filter.kind_types[] (string)
event_filter.success_only (boolean)
event_filter.target_types[] (string)
event_filter.target_values[] (string)
headers (object)
insecure (boolean)
method (string)
name (string)
proxy_url (string)
team_owner (string)
url (string)
- Status Codes:
200 OK – Webhook created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
409 Conflict – Webhook already exists.
- GET /1.6/events/webhooks/{name}
- Parameters:
name (string) – Webhook name.
- Status Codes:
200 OK – Webhook.
401 Unauthorized – Unauthorized.
404 Not Found – Not founds.
- Response JSON Object:
body (string)
description (string)
event_filter.error_only (boolean)
event_filter.kind_names[] (string)
event_filter.kind_types[] (string)
event_filter.success_only (boolean)
event_filter.target_types[] (string)
event_filter.target_values[] (string)
headers (object)
insecure (boolean)
method (string)
name (string)
proxy_url (string)
team_owner (string)
url (string)
- PUT /1.6/events/webhooks/{name}
- Parameters:
name (string) – Webhook name.
- Request JSON Object:
body (string)
description (string)
event_filter.error_only (boolean)
event_filter.kind_names[] (string)
event_filter.kind_types[] (string)
event_filter.success_only (boolean)
event_filter.target_types[] (string)
event_filter.target_values[] (string)
headers (object)
insecure (boolean)
method (string)
name (string)
proxy_url (string)
team_owner (string)
url (string)
- Status Codes:
200 OK – Webhook updated.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
404 Not Found – Webhook not found.
- DELETE /1.6/events/webhooks/{name}
- Parameters:
name (string) – Webhook name.
- Status Codes:
200 OK – Webhook created.
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized.
404 Not Found – Webhook not found.
- GET /1.7/provisioner
List provisioners
- Status Codes:
200 OK – Provisioner
401 Unauthorized – Unauthorized
- Response JSON Object:
[].cluster_help.create_data_help (object)
[].cluster_help.custom_data_help (object)
[].cluster_help.provisioner_help (string)
[].name (string)
- GET /1.3/constraints
List pool constraints
- Status Codes:
200 OK – PoolConstraints
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].Blacklist (boolean)
[].Field (string)
[].PoolExpr (string)
[].Values[] (string)
- PUT /1.3/constraints
Update a service instance
- Request JSON Object:
Blacklist (boolean)
Field (string)
PoolExpr (string)
Values[] (string)
append (boolean)
- Status Codes:
200 OK – Pool constraint set
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
- GET /1.3/routers
List available routers
- Status Codes:
200 OK – Routers
204 No Content – No content
401 Unauthorized – Unauthorized
- Response JSON Object:
[].config (object)
[].default (boolean)
[].dynamic (boolean)
[].info (object)
[].name (string)
[].readinessGates[] (string)
[].type (string)
- POST /1.8/routers
Adds a new dynamic router
- Request JSON Object:
config (object)
name (string)
readinessGates[] (string)
type (string)
- Status Codes:
201 Created – Dynamic router added
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
- PUT /1.8/routers/{name}
Updates a dynamic router
- Parameters:
name (string) – Dynamic router name.
- Request JSON Object:
config (object)
name (string)
readinessGates[] (string)
type (string)
- Status Codes:
200 OK – Dynamic router updated
401 Unauthorized – Unauthorized.
404 Not Found – Dynamic router not found
- DELETE /1.8/routers/{name}
Deletes a dynamic router
- Parameters:
name (string) – Dynamic router name.
- Status Codes:
200 OK – Dynamic router deleted
401 Unauthorized – Unauthorized.
404 Not Found – Dynamic router not found
- POST /1.2/nodecontainers
Creates container that runs on every node
- Request JSON Object:
config.env[] (string)
name (string) – (required)
pool (string)
- Status Codes:
200 OK – Node container created
400 Bad Request – Wrong configuration
401 Unauthorized – Unauthorized.
- POST /1.9/roles/{role_name}/group
Assigns a role to a group.
- Parameters:
role_name (string)
- Request JSON Object:
context (string)
group_name (string)
- Status Codes:
200 OK – Role assigned.
401 Unauthorized – Unauthorized.
404 Not Found – Role not found
- DELETE /1.6/roles/{role_name}/group/{group_name}
Dissociates a role from a group.
- Parameters:
role_name (string)
group_name (string)
- Query Parameters:
context (string)
- Status Codes:
200 OK – Role dissociated.
401 Unauthorized – Unauthorized.
404 Not Found – Role not found
- POST /1.13/jobs
Create a job that runs periodically
- Request JSON Object:
activeDeadlineSeconds (integer) – job active deadline seconds.
container.command[] (string)
container.envs[].alias (string)
container.envs[].managedBy (string)
container.envs[].name (string)
container.envs[].public (boolean)
container.envs[].value (string)
container.image (string)
description (string) – job description.
manual (boolean) – create a manual job.
metadata.annotations[].delete (boolean)
metadata.annotations[].name (string)
metadata.annotations[].value (string)
metadata.labels[].delete (boolean)
metadata.labels[].name (string)
metadata.labels[].value (string)
name (string) – Job name. (required)
plan (string) – job plan name.
pool (string) – job pool name.
schedule (string) – how often this job will run.
tags[] (string)
teamOwner (string) – Team that owns the job.
- Status Codes:
201 Created – Job created
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Quota exceeded
409 Conflict – App already exists
- GET /1.13/jobs
List jobs that runs periodically
- Status Codes:
200 OK – JobList.
401 Unauthorized – Unauthorized.
404 Not Found – Not founds.
- Response JSON Object:
[].description (string) – job description.
[].metadata.annotations[].delete (boolean)
[].metadata.annotations[].name (string)
[].metadata.annotations[].value (string)
[].metadata.labels[].delete (boolean)
[].metadata.labels[].name (string)
[].metadata.labels[].value (string)
[].name (string) – Job name.
[].owner (string) – who created this job.
[].plan.cpuBurst.default (number)
[].plan.cpuBurst.maxAllowed (number)
[].plan.cpumilli (integer)
[].plan.default (boolean)
[].plan.memory (integer)
[].plan.name (string)
[].plan.override.cpuBurst (number)
[].plan.override.cpumilli (integer)
[].plan.override.memory (integer)
[].pool (string) – job pool name.
[].spec.activeDeadlineSeconds (integer) – job active deadline seconds.
[].spec.container.command[] (string)
[].spec.container.envs[].alias (string)
[].spec.container.envs[].managedBy (string)
[].spec.container.envs[].name (string)
[].spec.container.envs[].public (boolean)
[].spec.container.envs[].value (string)
[].spec.container.image (string)
[].spec.manual (boolean)
[].spec.schedule (string)
[].teamOwner (string) – Team that owns the job.
[].teams[] (string)
- GET /1.13/jobs/{name}
Get a job that runs periodically
- Parameters:
name (string) – Name of job
- Status Codes:
200 OK – JobInfo.
401 Unauthorized – Unauthorized.
404 Not Found – Not founds.
- Response JSON Object:
job.description (string) – job description.
job.metadata.annotations[].delete (boolean)
job.metadata.annotations[].name (string)
job.metadata.annotations[].value (string)
job.metadata.labels[].delete (boolean)
job.metadata.labels[].name (string)
job.metadata.labels[].value (string)
job.name (string) – Job name.
job.owner (string) – who created this job.
job.plan.cpuBurst.default (number)
job.plan.cpuBurst.maxAllowed (number)
job.plan.cpumilli (integer)
job.plan.default (boolean)
job.plan.memory (integer)
job.plan.name (string)
job.plan.override.cpuBurst (number)
job.plan.override.cpumilli (integer)
job.plan.override.memory (integer)
job.pool (string) – job pool name.
job.spec.activeDeadlineSeconds (integer) – job active deadline seconds.
job.spec.container.command[] (string)
job.spec.container.envs[].alias (string)
job.spec.container.envs[].managedBy (string)
job.spec.container.envs[].name (string)
job.spec.container.envs[].public (boolean)
job.spec.container.envs[].value (string)
job.spec.container.image (string)
job.spec.manual (boolean)
job.spec.schedule (string)
job.teamOwner (string) – Team that owns the job.
job.teams[] (string)
serviceInstanceBinds[].instance (string)
serviceInstanceBinds[].plan (string)
serviceInstanceBinds[].service (string)
units[].address.host (string)
units[].address.scheme (string)
units[].appname (string)
units[].createdAt (string)
units[].id (string)
units[].ip (string)
units[].name (string)
units[].processname (string)
units[].ready (boolean)
units[].restarts (integer)
units[].routable (boolean)
units[].status (string)
units[].type (string)
units[].version (integer)
- PUT /1.13/jobs/{name}
Update a job that runs periodically
- Parameters:
name (string) – Name of job
- Request JSON Object:
activeDeadlineSeconds (integer) – job active deadline seconds.
container.command[] (string)
container.envs[].alias (string)
container.envs[].managedBy (string)
container.envs[].name (string)
container.envs[].public (boolean)
container.envs[].value (string)
container.image (string)
description (string) – job description.
manual (boolean) – create a manual job.
metadata.annotations[].delete (boolean)
metadata.annotations[].name (string)
metadata.annotations[].value (string)
metadata.labels[].delete (boolean)
metadata.labels[].name (string)
metadata.labels[].value (string)
name (string) – Job name. (required)
plan (string) – job plan name.
pool (string) – job pool name.
schedule (string) – how often this job will run.
tags[] (string)
teamOwner (string) – Team that owns the job.
- Status Codes:
200 OK – Job Updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
403 Forbidden – Quota exceeded
409 Conflict – App already exists
- DELETE /1.13/jobs/{name}
Remove a job
- Parameters:
name (string) – Name of job
- Status Codes:
200 OK – Job removed
401 Unauthorized – Unauthorized
404 Not Found – Plan not found
- POST /1.13/jobs/{name}/trigger
Trigger a job
- Parameters:
name (string) – Name of job
- Status Codes:
200 OK – Job triggered
401 Unauthorized – Unauthorized
404 Not Found – Plan not found
- GET /1.13/jobs/{name}/log
Retrieve logs from a job
- Parameters:
name (string) – Name of job
- Query Parameters:
follow (boolean) – attach logs to tty
- Status Codes:
200 OK – OK
400 Bad Request – Invalid data
403 Forbidden – Forbidden
404 Not Found – Job not found
- POST /1.13/jobs/{name}/env
Set new environment variable.
- Parameters:
name (string) – Job name.
- Request JSON Object:
envs[].alias (string)
envs[].managedBy (string)
envs[].name (string)
envs[].private (boolean)
envs[].value (string)
managedBy (string)
norestart (boolean)
private (boolean)
pruneUnused (boolean)
- Status Codes:
200 OK – Envs updated
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Job not found
- DELETE /1.13/jobs/{name}/env
Unset job environment variables.
- Parameters:
name (string) – Job name.
- Query Parameters:
env (array)
- Status Codes:
200 OK – Envs deleted
400 Bad Request – Invalid data
401 Unauthorized – Unauthorized
404 Not Found – Job not found
- GET /1.16/jobs/{name}/env
Get job environment variables.
- Parameters:
name (string) – Job name.
- Query Parameters:
env (string) – Environment variable name.
- Status Codes:
200 OK – Environment variables
401 Unauthorized – Unauthorized
404 Not Found – Job not found
- Response JSON Object:
[].alias (string)
[].managedBy (string)
[].name (string)
[].public (boolean)
[].value (string)