18. Digital Rebar Provision API

All API calls are available under /api/v3 based on the Digital Rebar API convention.

18.1. Example API Documentation

Below is a list of example documentation articles on how to use the API.

18.2. API Call Documentation (swagger.json)

Digital Rebar API documentation is dynamically generated an with each Digital Rebar endpoint in the form of a swagger.json file.

The Swagger specification file is introspectable for clients via [endpoint url]/swagger.json and for humans via the Swagger UX built into all DRP endpoints at [endpoint url]/swagger-ui.

For more details, see Swagger UI.

18.3. API PUT vs PATCH

RackN strongly recommends API consumers to use PATCH wherever possible instead of PUT. PATCH allows API calls to change specific object fields and may include tests to prevent race conditions.

For example, the Digital Rebar CLI (drpcli) and RackN UX use JSON PATCH (https://tools.ietf.org/html/rfc6902) instead of PUT extensively. PATCH allows atomic field-level updates by including tests in the update. This means that simulataneous upates do not create “last in” race conditions. Instead, the update will fail in a predictable way that can be used in scripts.

The DRPCLI facilitates use of PATCH for atomic operations by allowing scripts to pass in a reference (aka pre-modified) object. If the -r reference object does not match then the update will be rejected.

18.4. API Filters

The API includes index driven filters for large deployments that can be used to pre-filter requests from the API.

The list of available indexes is provided by the /api/v3/indexes and /api/v3/indexes/[model] calls. These objects provide a list of all keys that can be used for filters with some additional metadata. Additionally, the Meta data field on objects can be used in filters as welll, e.g. Meta.color=pink.

To use the index, simply include one or more indexes and values on the request URI. For example:

/api/v3/machines?Runnable=true&Available=true

The filter specification allows more complex filters using functions:

  • Equal (either works)

    • =

    • Eq(Value)

  • Less Than: Lt(Value)

  • Less or Equal: Lte(Value)

  • Greater Than: Gt(Value)

  • Greater or Equal: Gte(Value)

  • Not Equal: Ne(Value)

  • Regular Expression: Re(Value)

  • Ranges:

    • Between(Value1,Value2) (edited)

    • Except(Value1,Value2)

The query string applies ALL parameters are to be applied (as implied by the & separator). All must match to be returned.

18.5. Filtering by Param Value

The API includes specialized filter behavior for Params that allows deep searching models for Param values.

To filter Machines or Profiles by Param values, pass the Param name and value using the normal Field filter specification. When the Field is not found, the backend will search model’s Params keys and evalute the filter against the Param value.

18.6. Filtering by Aggregated Param Value

By default, the API does NOT aggregate the values of the parameters through the attached profiles or global profile. By adding the aggregate=true string to the Query string in the URL, the API will apply the filter against an aggregated set of parameters when searching for the object. Additionally, the Param field of the object will contain an aggregated set of parameters as well.

18.7. Filtering with Template Expansion

The API can also use Template functions to enhance searches. Using the raw=<filter string>, a raw filter string can be sent to the server for expansion and processing. The raw field will be additive to the other query string filters sent. Multiple filter elements can be sent in a space delimited format. Here are some examples:

18.8. Leveraging Multi-Site Proxy Forwarding

In the Manager Architecture, API calls to a DRP manager for remote objects are automatically forwarded to the correct attached endpoint. This allows operators to make API calls to remote endpoints from a centralized manager without knowing the actual owner of the object. The owning endpoint can be determined for any object by inspecting its Endpoint property.

For most cases, no additional information or API notation is required to leverage this functionality. The exception is creating objects on attached endpoints. The create (aka POST) case requires API callers to specify the target remote endpoint (the endpoint must be registered or the request will be rejected) to the manager.

To make an explicit API proxy call, prefix the path of the request with the endpoint identity. For example:

/[target endpoint id]/api/v3/machines

This pattern is also invoked by with the -u flag in the DRPCLI.

NOTE: Multi-site is a licensed feature available in DRP v4.5+ and must be enabled for the endpoint.

18.9. Payload Reduction (slim)

Since Params and Meta may contain a lot of data, the API supports the ?slim=[Params,Meta] option to allow requests to leave these fields unpopulated. If this data is needed, operators will have to request the full object or object’s Params or Meta in secondary calls.

/api/v3/machines?slim=Params,Meta

Only endpoints that offer the slim-objects feature flag (v3.9+) will accept this flag.

18.10. Exploration with Curl

You can also interact with the API using curl. The general pattern is:

# option 1: basic auth user:password
curl -X <method> -k -u <username>:<password> -H 'Content-Type: application/json' -H 'Accept: application/json' https://<endpoint addr>:<port>/api/v3/<opject type>/<object ID>

# option 2: basic auth with token
export RS_TOKEN=$(drpcli -P <password> users token <username>)
curl -X <method> -k --header 'Authorization: Bearer $RS_TOKEN' -H 'Content-Type: application/json' -H 'Accept: application/json' https://<endpoint addr>:<port>/api/v3/<opject type>/<object ID>

In the remainder of this section, <object type> refers to the lower case, pluralized version of the type of object. This is bootenvs for boot environments, workflows for workflows, machines for machines, and so on. <object id> refers to the unique identifier for this object, which is generally the Name, ID or Uuid field of an object. You can also use any unique index in this field, in the form of <index name>:<value>. A common one to use is Name:machine.name for Machine objects instead of the Uuid.

The API follows the usual REST guidelines:

  • HEAD /api/v3/<object type> gets you headers containing basic information about how many of <object type> are present in the system. You can use filters on this request.

  • GET /api/v3/<object type> lists all of the objects of the requested type. The result is a JSON array. You can use filters on this request.

  • POST /api/v3/<object type> is a request to create a new object. The body of the payload should be valid JSON for the object type.

  • GET /api/v3/<object type>/<object id> fetches the request object.

  • HEAD /spi/v3/<object type>/<object id> tests to see if the requested object exists.

18.11. API Exception & Deprecation Notes

There are times when the API and models have exceptions or changes that do not follow the normal pattern. This section is designed to provide a reference for those exceptions.

This section is intended to provide general information about and functional of the API. We maintain this section for legacy operators, when possible avoid using deprecated features!

Machines.Profile (deprecated by flag: profileless-machine)

What would otherwise be Machine.Params is actually embedded under Machines.Profile.Params. This deprecated composition simplifies that precedence calculation for Params by making Machines the top of the Profiles stack. All the other fields in the Machines.Profile are ignored.

18.11.1. Methods

18.11.1.1. BootEnvs

GET /bootenvs

Lists BootEnvs filtered by some parameters.

  • Description: This will show all BootEnvs by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean OnlyUnknown = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

OnlyUnknown

query

string

Name

query

string

Responses

Code

Type

200

BootEnvsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /bootenvs

Create a BootEnv

  • Description: Create a BootEnv from the provided object

Parameters

Name

Position

Description

Type

Body*

body

BootEnv

Responses

Code

Type

201

BootEnvResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /bootenvs

Stats of the List BootEnvs filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean OnlyUnknown = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

OnlyUnknown

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /bootenvs/{name}

Get a BootEnv

  • Description: Get the BootEnv specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

BootEnvResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /bootenvs/{name}

Put a BootEnv

  • Description: Update a BootEnv specified by {name} using a JSON BootEnv

Parameters

Name

Position

Description

Type

Body*

body

BootEnv

name*

path

string

Responses

Code

Type

200

BootEnvResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /bootenvs/{name}

Delete a BootEnv

  • Description: Delete a BootEnv specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

BootEnvResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /bootenvs/{name}

See if a BootEnv exists

  • Description: Return 200 if the BootEnv specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /bootenvs/{name}

Patch a BootEnv

  • Description: Update a BootEnv specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

BootEnvResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /bootenvs/{name}/actions

List bootenv actions BootEnv

  • Description: List BootEnv actions for a BootEnv specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /bootenvs/{name}/actions/{cmd}

List specific action for a bootenv BootEnv

  • Description: List specific {cmd} action for a BootEnv specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /bootenvs/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /bootenvs/{name}/purgeLocal

Purge local install files (ISOS and install trees) for a bootenv

  • Description: Purges ISO files and local install files for a bootenv on an arch by arch basis.

Parameters

Name

Position

Description

Type

Body*

body

array of string

reexplodeIsos

query

boolean

Responses

Code

Type

200

PurgeLocalResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

18.11.1.2. Templates

GET /templates

Lists Templates filtered by some parameters.

  • Description: This will show all Templates by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

ID

query

string

Responses

Code

Type

200

TemplatesResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /templates

Create a Template

  • Description: Create a Template from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Template

Responses

Code

Type

201

TemplateResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /templates

Stats of the List Templates filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

ID

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /templates/{id}

Get a Template

  • Description: Get the Template specified by {id} or return NotFound.

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

TemplateResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /templates/{id}

Put a Template

  • Description: Update a Template specified by {id} using a JSON Template

Parameters

Name

Position

Description

Type

Body*

body

Template

id*

path

string

Responses

Code

Type

200

TemplateResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /templates/{id}

Delete a Template

  • Description: Delete a Template specified by {id}

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

TemplateResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /templates/{id}

See if a Template exists

  • Description: Return 200 if the Template specifiec by {id} exists, or return NotFound.

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /templates/{id}

Patch a Template

  • Description: Update a Template specified by {id} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

id*

path

string

Responses

Code

Type

200

TemplateResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /templates/{id}/actions

List template actions Template

  • Description: List Template actions for a Template specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /templates/{id}/actions/{cmd}

List specific action for a template Template

  • Description: List specific {cmd} action for a Template specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /templates/{id}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.3. Files

GET /files

Lists files in files directory or subdirectory per query parameter

  • Description: Lists the files in a directory under /files. path=<path to return> Path defaults to /

Parameters

Name

Position

Description

Type

path

query

string

all

query

boolean

Responses

Code

Type

200

FilesResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /files/{path}

Get a specific File with {path}

  • Description: Get a specific file specified by {path} under files.

  • Produces: [‘application/octet-stream’, ‘application/json’]

Parameters

Name

Position

Description

Type

path*

path

string

explode

query

in: explode

string

Responses

Code

Type

200

FileResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /files/{path}

Upload a file to a specific {path} in the tree under files.

  • Description: The file will be uploaded to the {path} in /files. The {path} will be created.

  • Consumes: [‘application/octet-stream’]

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

path*

path

string

explode

query

in: explode

string

Body

body

Raw Octet Stream

Responses

Code

Type

201

FileInfoResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

DELETE /files/{path}

Delete a file to a specific {path} in the tree under files.

  • Description: The file will be removed from the {path} in /files.

Parameters

Name

Position

Description

Type

path*

path

string

explode

query

in: explode

string

Responses

Code

Type

204

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /files/{path}

See if a file exists and return a checksum in the header

  • Description: Return 200 if the file specified by {path} exists, or return NotFound.

Parameters

Name

Position

Description

Type

path*

path

string

explode

query

in: explode

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

HEAD /isos/{path}

See if a iso exists and return a checksum in the header

  • Description: Return 200 if the iso specified by {path} exists, or return NotFound.

Parameters

Name

Position

Description

Type

path*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

18.11.1.4. Interfaces

GET /interfaces

  • Description: Lists possible interfaces on the system to serve DHCP

  • Produces: [‘application/json’]

Responses

Code

Type

200

InterfacesResponse

401

NoContentResponse

403

NoContentResponse

500

ErrorResponse

GET /interfaces/{name}

Get a specific interface with {name}

  • Description: Get a specific interface specified by {name}.

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

InterfaceResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.5. Isos

GET /isos

Lists isos in isos directory

  • Description: Lists the isos in a directory under /isos.

Responses

Code

Type

200

IsosResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /isos/{path}

Get a specific Iso with {path}

  • Description: Get a specific iso specified by {path} under isos.

  • Produces: [‘application/octet-stream’, ‘application/json’]

Parameters

Name

Position

Description

Type

path*

path

string

Responses

Code

Type

200

IsoResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /isos/{path}

Upload an iso to a specific {path} in the tree under isos.

  • Description: The iso will be uploaded to the {path} in /isos. The {path} will be created.

  • Consumes: [‘application/octet-stream’]

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

path*

path

string

Body

body

Raw Octet Stream

Responses

Code

Type

201

IsoInfoResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

DELETE /isos/{path}

Delete an iso to a specific {path} in the tree under isos.

  • Description: The iso will be removed from the {path} in /isos.

Parameters

Name

Position

Description

Type

path*

path

string

Responses

Code

Type

204

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

18.11.1.6. Subnets

GET /subnets

Lists Subnets filtered by some parameters.

  • Description: This will show all Subnets by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string NextServer = IP Address Subnet = CIDR Address Strategy = string Available = boolean Valid = boolean ReadOnly = boolean Enabled = boolean Proxy = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Strategy

query

string

NextServer

query

string

Subnet

query

string

Name

query

string

Enabled

query

string

Proxy

query

string

Responses

Code

Type

200

SubnetsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /subnets

Create a Subnet

  • Description: Create a Subnet from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Subnet

Responses

Code

Type

201

SubnetResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /subnets

Stats of the List Subnets filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string NextServer = IP Address Subnet = CIDR Address Strategy = string Available = boolean Valid = boolean ReadOnly = boolean Enabled = boolean Proxy = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Strategy

query

string

NextServer

query

string

Subnet

query

string

Name

query

string

Enabled

query

string

Proxy

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /subnets/{name}

Get a Subnet

  • Description: Get the Subnet specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

SubnetResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /subnets/{name}

Put a Subnet

  • Description: Update a Subnet specified by {name} using a JSON Subnet

Parameters

Name

Position

Description

Type

Body*

body

Subnet

name*

path

string

Responses

Code

Type

200

SubnetResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /subnets/{name}

Delete a Subnet

  • Description: Delete a Subnet specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

SubnetResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /subnets/{name}

See if a Subnet exists

  • Description: Return 200 if the Subnet specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /subnets/{name}

Patch a Subnet

  • Description: Update a Subnet specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

SubnetResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /subnets/{name}/actions

List subnet actions Subnet

  • Description: List Subnet actions for a Subnet specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /subnets/{name}/actions/{cmd}

List specific action for a subnet Subnet

  • Description: List specific {cmd} action for a Subnet specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /subnets/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.7. Reservations

GET /reservations

Lists Reservations filtered by some parameters.

  • Description: This will show all Reservations by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Addr = IP Address Token = string Strategy = string NextServer = IP Address Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Addr

query

string

Token

query

string

Strategy

query

string

NextServer

query

string

Responses

Code

Type

200

ReservationsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /reservations

Create a Reservation

  • Description: Create a Reservation from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Reservation

Responses

Code

Type

201

ReservationResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /reservations

Stats of the List Reservations filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Addr = IP Address Token = string Strategy = string NextServer = IP Address Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Addr

query

string

Token

query

string

Strategy

query

string

NextServer

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /reservations/{address}

Get a Reservation

  • Description: Get the Reservation specified by {address} or return NotFound.

Parameters

Name

Position

Description

Type

address*

path

string

Responses

Code

Type

200

ReservationResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /reservations/{address}

Put a Reservation

  • Description: Update a Reservation specified by {address} using a JSON Reservation

Parameters

Name

Position

Description

Type

Body*

body

Reservation

address*

path

string

Responses

Code

Type

200

ReservationResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /reservations/{address}

Delete a Reservation

  • Description: Delete a Reservation specified by {address}

Parameters

Name

Position

Description

Type

address*

path

string

Responses

Code

Type

200

ReservationResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /reservations/{address}

See if a Reservation exists

  • Description: Return 200 if the Reservation specific by {address} exists, or return NotFound.

Parameters

Name

Position

Description

Type

address*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /reservations/{address}

Patch a Reservation

  • Description: Update a Reservation specified by {address} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

address*

path

string

Responses

Code

Type

200

ReservationResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /reservations/{address}/actions

List reservation actions Reservation

  • Description: List Reservation actions for a Reservation specified by {address} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

address*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /reservations/{address}/actions/{cmd}

List specific action for a reservation Reservation

  • Description: List specific {cmd} action for a Reservation specified by {address} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

address*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /reservations/{address}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

address*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.8. Prefs

GET /prefs

Lists Prefs

  • Description: This will show all Prefs by default

Responses

Code

Type

200

PrefsResponse

401

NoContentResponse

403

NoContentResponse

POST /prefs

Create a Pref

  • Description: Create a Pref from the provided object

Parameters

Name

Position

Description

Type

Body

body

map of strings to string

Responses

Code

Type

201

PrefsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

422

ErrorResponse

18.11.1.9. Leases

GET /leases

Lists Leases filtered by some parameters.

  • Description: This will show all Leases by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Addr = IP Address Token = string Strategy = string ExpireTime = Date/Time Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Addr

query

string

Token

query

string

Strategy

query

string

ExpireTime

query

string

Responses

Code

Type

200

LeasesResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

HEAD /leases

Stats of the List Leases filtered by some parameters.

  • Description: This return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Addr = IP Address Token = string Strategy = string ExpireTime = Date/Time Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Addr

query

string

Token

query

string

Strategy

query

string

ExpireTime

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /leases/{address}

Get a Lease

  • Description: Get the Lease specified by {address} or return NotFound.

Parameters

Name

Position

Description

Type

address*

path

string

Responses

Code

Type

200

LeaseResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

DELETE /leases/{address}

Delete a Lease

  • Description: Delete a Lease specified by {address}

Parameters

Name

Position

Description

Type

address*

path

string

Responses

Code

Type

200

LeaseResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /leases/{address}

See if a Lease exists

  • Description: Return 200 if the Lease specifiec by {address} exists, or return NotFound.

Parameters

Name

Position

Description

Type

address*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

GET /leases/{address}/actions

List lease actions Lease

  • Description: List Lease actions for a Lease specified by {address} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

address*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /leases/{address}/actions/{cmd}

List specific action for a lease Lease

  • Description: List specific {cmd} action for a Lease specified by {address} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

address*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /leases/{address}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

address*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.10. Machines

GET /machines

Lists Machines filtered by some parameters.

  • Description: This will show all Machines by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = UUID string Name = string BootEnv = string Address = IP Address Runnable = true/false Available = boolean Valid = boolean ReadOnly = boolean exclude-self = boolean = true means to not include self-runners Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Name

query

string

BootEnv

query

string

Address

query

string

Runnable

query

string

decode

query

boolean

slim

query

boolean

params

query

boolean

exclude-self

query

boolean

Responses

Code

Type

200

MachinesResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /machines

Create a Machine

  • Description: Create a Machine from the provided object

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Machine

Responses

Code

Type

201

MachineResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /machines

Stats of the List Machines filtered by some parameters.

  • Description: This will return headers with the stats of the list. X-DRP-LIST-COUNT - number of objects in the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = UUID string Name = string BootEnv = string Address = IP Address Runnable = true/false Available = boolean Valid = boolean ReadOnly = boolean exclude-self = boolean = true means to not include self-runners Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Name

query

string

BootEnv

query

string

Address

query

string

Runnable

query

string

decode

query

boolean

slim

query

boolean

params

query

boolean

exclude-self

query

boolean

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /machines/{id}/pick/{key}

Pick a workorder for this agent. This can return the current work order.

  • Description: No input. (optional WorkOrder may be provided)

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

WorkOrderResponse

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /machines/{uuid}

Get a Machine

  • Description: Get the Machine specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

MachineResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /machines/{uuid}

Put a Machine

  • Description: Update a Machine specified by {uuid} using a JSON Machine

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Machine

uuid*

path

string

Responses

Code

Type

200

MachineResponse

202

MachineResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /machines/{uuid}

Delete a Machine

  • Description: Delete a Machine specified by {uuid}. If 202 is returned, the on-delete-workflow has been started.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

MachineResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /machines/{uuid}

See if a Machine exists

  • Description: Return 200 if the Machine specifiec by {uuid} exists, or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /machines/{uuid}

Patch a Machine

  • Description: Update a Machine specified by {uuid} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

MachineResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /machines/{uuid}/actions

List machine actions Machine

  • Description: List Machine actions for a Machine specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /machines/{uuid}/actions/{cmd}

List specific action for a machine Machine

  • Description: List specific {cmd} action for a Machine specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /machines/{uuid}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /machines/{uuid}/cleanup

Cleanup a Machine

  • Description: Cleanup Machine specified by {uuid}. If 202 is returned, the on-delete-workflow has been started.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

202

ClusterResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

GET /machines/{uuid}/params

List machine params Machine

  • Description: List Machine parms for a Machine specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

MachineParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /machines/{uuid}/params

  • Description: Sets parameters for a machine specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

map of strings to object

uuid*

path

string

Responses

Code

Type

200

MachineParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /machines/{uuid}/params

  • Description: Update params for Machine {uuid} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

MachineParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /machines/{uuid}/params/{key}

Get a single machine parameter

  • Description: Get a single parameter {key} for a Machine specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

uuid*

path

string

key*

path

string

Responses

Code

Type

200

MachineParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /machines/{uuid}/params/{key}

  • Description: Set as single Parameter {key} for a machine specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

uuid*

path

string

key*

path

string

Responses

Code

Type

200

MachineParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /machines/{uuid}/params/{key}

Delete a single machine parameter

  • Description: Delete a single parameter {key} for a Machine specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

MachineParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /machines/{uuid}/pubkey

Get the public key for secure params on a machine

  • Description: Get the public key for a Machine specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

PATCH /machines/{uuid}/start

Start a Machine

  • Description: Update a Machine specified by {uuid} using a RFC6902 Patch structure after clearing Workflow and Runnable.

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

MachineResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /machines/{uuid}/token

Get a Machine Token

  • Description: Get a Machine Token specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

ttl

query

integer

Responses

Code

Type

200

UserTokenResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.11. Profiles

GET /profiles

Lists Profiles filtered by some parameters.

  • Description: This will show all Profiles by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

ProfilesResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /profiles

Create a Profile

  • Description: Create a Profile from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Profile

Responses

Code

Type

201

ProfileResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /profiles

Stats of the List Profiles filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /profiles/{name}

Get a Profile

  • Description: Get the Profile specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

ProfileResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /profiles/{name}

Put a Profile

  • Description: Update a Profile specified by {name} using a JSON Profile

Parameters

Name

Position

Description

Type

Body*

body

Profile

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

ProfileResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

DELETE /profiles/{name}

Delete a Profile

  • Description: Delete a Profile specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

ProfileResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /profiles/{name}

See if a Profile exists

  • Description: Return 200 if the Profile specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /profiles/{name}

Patch a Profile

  • Description: Update a Profile specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

ProfileResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /profiles/{name}/actions

List profile actions Profile

  • Description: List Profile actions for a Profile specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /profiles/{name}/actions/{cmd}

List specific action for a profile Profile

  • Description: List specific {cmd} action for a Profile specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /profiles/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /profiles/{name}/params

List profile params Profile

  • Description: List Profile parms for a Profile specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

ProfileParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /profiles/{name}/params

  • Description: Sets parameters for a profile specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

ProfileParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /profiles/{name}/params

  • Description: Update params for Profile {name} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

ProfileParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /profiles/{name}/params/{key}

Get a single profile parameter

  • Description: Get a single parameter {key} for a Profile specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

ProfileParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /profiles/{name}/params/{key}

  • Description: Set as single Parameter {key} for a profile specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

key*

path

string

Body*

body

Raw Octet Stream

Responses

Code

Type

200

ProfileParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /profiles/{name}/pubkey

Get the public key for secure params on a profile

  • Description: Get the public key for a Profile specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

DELETE /profiles/{uuid}/params/{key}

Delete a single profile parameter

  • Description: Delete a single parameter {key} for a Profile specified by {uuid}

Parameters

Name

Position

Description

Type

name*

path

string

key*

path

string

Responses

Code

Type

200

ProfileParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.12. Users

GET /users

Lists Users filtered by some parameters.

  • Description: This will show all Users by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexes: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

UsersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /users

Create a User

  • Description: Create a User from the provided object

Parameters

Name

Position

Description

Type

Body*

body

User

Responses

Code

Type

201

UserResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /users

Stats of the List Users filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /users/{name}

Get a User

  • Description: Get the User specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

UserResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /users/{name}

Put a User

  • Description: Update a User specified by {name} using a JSON User

Parameters

Name

Position

Description

Type

Body*

body

User

name*

path

string

Responses

Code

Type

200

UserResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /users/{name}

Delete a User

  • Description: Delete a User specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

UserResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /users/{name}

See if a User exists

  • Description: Return 200 if the User specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /users/{name}

Patch a User

  • Description: Update a User specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

UserResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /users/{name}/actions

List user actions User

  • Description: List User actions for a User specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /users/{name}/actions/{cmd}

List specific action for a user User

  • Description: List specific {cmd} action for a User specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /users/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PUT /users/{name}/password

Set the password for a user.

  • Description: Update a User specified by {name} using a JSON User

Parameters

Name

Position

Description

Type

Body*

body

UserPassword

name*

path

string

Responses

Code

Type

200

UserResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /users/{name}/token

Get a User Token

  • Description: Get a token for the User specified by {name} or return error

Parameters

Name

Position

Description

Type

name*

path

string

ttl

query

integer

roles

query

string

Responses

Code

Type

200

UserTokenResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.13. Roles

GET /roles

Lists Roles filtered by some parameters.

  • Description: This will show all Roles by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

RolesResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /roles

Create a Role

  • Description: Create a Role from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Role

Responses

Code

Type

201

RoleResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /roles

Stats of the List Roles filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /roles/{name}

Get a Role

  • Description: Get the Role specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

RoleResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /roles/{name}

Put a Role

  • Description: Update a Role specified by {name} using a JSON Role

Parameters

Name

Position

Description

Type

Body*

body

Role

name*

path

string

Responses

Code

Type

200

RoleResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /roles/{name}

Delete a Role

  • Description: Delete a Role specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

RoleResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /roles/{name}

See if a Role exists

  • Description: Return 200 if the Role specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /roles/{name}

Patch a Role

  • Description: Update a Role specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

RoleResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /roles/{name}/actions

List role actions Role

  • Description: List Role actions for a Role specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /roles/{name}/actions/{cmd}

List specific action for a role Role

  • Description: List specific {cmd} action for a Role specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /roles/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.14. Tenants

GET /tenants

Lists Tenants filtered by some parameters.

  • Description: This will show all Tenants by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

TenantsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /tenants

Create a Tenant

  • Description: Create a Tenant from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Tenant

Responses

Code

Type

201

TenantResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /tenants

Stats of the List Tenants filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /tenants/{name}

Get a Tenant

  • Description: Get the Tenant specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TenantResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /tenants/{name}

Put a Tenant

  • Description: Update a Tenant specified by {name} using a JSON Tenant

Parameters

Name

Position

Description

Type

Body*

body

Tenant

name*

path

string

Responses

Code

Type

200

TenantResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /tenants/{name}

Delete a Tenant

  • Description: Delete a Tenant specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TenantResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /tenants/{name}

See if a Tenant exists

  • Description: Return 200 if the Tenant specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /tenants/{name}

Patch a Tenant

  • Description: Update a Tenant specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

TenantResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /tenants/{name}/actions

List tenant actions Tenant

  • Description: List Tenant actions for a Tenant specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /tenants/{name}/actions/{cmd}

List specific action for a tenant Tenant

  • Description: List specific {cmd} action for a Tenant specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /tenants/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.15. Params

GET /params

Lists Params filtered by some parameters.

  • Description: This will show all Params by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

ParamsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /params

Create a Param

  • Description: Create a Param from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Param

Responses

Code

Type

201

ParamResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /params

Stats of the List Params filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /params/{name}

Get a Param

  • Description: Get the Param specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

ParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /params/{name}

Put a Param

  • Description: Update a Param specified by {name} using a JSON Param

Parameters

Name

Position

Description

Type

Body*

body

Param

name*

path

string

Responses

Code

Type

200

ParamResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /params/{name}

Delete a Param

  • Description: Delete a Param specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

ParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /params/{name}

See if a Param exists

  • Description: Return 200 if the Param specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /params/{name}

Patch a Param

  • Description: Update a Param specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

ParamResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

18.11.1.16. Tasks

GET /tasks

Lists Tasks filtered by some parameters.

  • Description: This will show all Tasks by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

TasksResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /tasks

Create a Task

  • Description: Create a Task from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Task

Responses

Code

Type

201

TaskResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /tasks

Stats of the List Tasks filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /tasks/{name}

Get a Task

  • Description: Get the Task specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TaskResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /tasks/{name}

Put a Task

  • Description: Update a Task specified by {name} using a JSON Task

Parameters

Name

Position

Description

Type

Body*

body

Task

name*

path

string

Responses

Code

Type

200

TaskResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /tasks/{name}

Delete a Task

  • Description: Delete a Task specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TaskResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /tasks/{name}

See if a Task exists

  • Description: Return 200 if the Task specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /tasks/{name}

Patch a Task

  • Description: Update a Task specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

TaskResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /tasks/{name}/actions

List task actions Task

  • Description: List Task actions for a Task specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /tasks/{name}/actions/{cmd}

List specific action for a task Task

  • Description: List specific {cmd} action for a Task specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /tasks/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.17. Jobs

GET /jobs

Lists Jobs filtered by some parameters.

  • Description: This will show all Jobs by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = string Stage = string Task = string State = string Machine = string Archived = boolean StartTime = datetime EndTime = datetime Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Uuid=fred - returns items named fred Uuid=Lt(fred) - returns items that alphabetically less than fred. Uuid=Lt(fred)&Archived=true - returns items with Uuid less than fred and Archived is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Stage

query

string

Task

query

string

State

query

string

Machine

query

string

Archived

query

string

StartTime

query

string

EndTime

query

string

Responses

Code

Type

200

JobsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /jobs

Create a Job

  • Description: Create a Job from the provided object, Only Machine and UUID are used.

Parameters

Name

Position

Description

Type

Body*

body

Job

Responses

Code

Type

201

JobResponse

202

JobResponse

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

500

ErrorResponse

HEAD /jobs

Stats of the List Jobs filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = string Stage = string Task = string State = string Machine = string Archived = boolean StartTime = datetime EndTime = datetime Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Uuid=fred - returns items named fred Uuid=Lt(fred) - returns items that alphabetically less than fred. Uuid=Lt(fred)&Archived=true - returns items with Uuid less than fred and Archived is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Stage

query

string

Task

query

string

State

query

string

Machine

query

string

Archived

query

string

StartTime

query

string

EndTime

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /jobs/{uuid}

Get a Job

  • Description: Get the Job specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

JobResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /jobs/{uuid}

Put a Job

  • Description: Update a Job specified by {uuid} using a JSON Job

Parameters

Name

Position

Description

Type

Body*

body

Job

uuid*

path

string

Responses

Code

Type

200

JobResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

DELETE /jobs/{uuid}

Delete a Job

  • Description: Delete a Job specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

JobResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /jobs/{uuid}

See if a Job exists

  • Description: Return 200 if the Job specifiec by {uuid} exists, or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /jobs/{uuid}

Patch a Job

  • Description: Update a Job specified by {uuid} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

JobResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

422

ErrorResponse

GET /jobs/{uuid}/actions

Get actions for this job

  • Description: Get actions for the Job specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

plugin

query

string

os

query

string

Responses

Code

Type

200

JobActionsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /jobs/{uuid}/log

Get the log for this job

  • Description: Get log for the Job specified by {uuid} or return NotFound.

  • Produces: [‘application/octet-stream’, ‘application/json’]

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

JobLogResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

PUT /jobs/{uuid}/log

Append the string to the end of the job’s log.

  • Consumes: [‘application/octet-stream’]

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

uuid*

path

string

Responses

Code

Type

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

415

ErrorResponse

500

ErrorResponse

HEAD /jobs/{uuid}/log

Get the log for this job

  • Description: Get log for the Job specified by {uuid} or return NotFound.

  • Produces: [‘application/octet-stream’, ‘application/json’]

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

JobLogResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

GET /jobs/{uuid}/plugin_actions

List job plugin_actions Job

  • Description: List Job plugin_actions for a Job specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

plugin

query

string

os

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /jobs/{uuid}/plugin_actions/{cmd}

List specific action for a job Job

  • Description: List specific {cmd} action for a Job specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /jobs/{uuid}/plugin_actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.18. Logs

GET /logs

  • Description: Return current contents of the log buffer

  • Produces: [‘application/json’]

Responses

Code

Type

200

LogResponse

401

NoContentResponse

403

NoContentResponse

500

ErrorResponse

18.11.1.19. Plugins

GET /plugins

Lists Plugins filtered by some parameters.

  • Description: This will show all Plugins by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexes: Name = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Provider

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

PluginsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /plugins

Create a Plugin

  • Description: Create a Plugin from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Plugin

Responses

Code

Type

201

PluginResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /plugins

Stats of the List Plugins filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Provider

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /plugins/{name}

Get a Plugin

  • Description: Get the Plugin specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PluginResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /plugins/{name}

Put a Plugin

  • Description: Update a Plugin specified by {name} using a JSON Plugin

Parameters

Name

Position

Description

Type

Body*

body

Plugin

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PluginResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /plugins/{name}

Delete a Plugin

  • Description: Delete a Plugin specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PluginResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /plugins/{name}

See if a Plugin exists

  • Description: Return 200 if the Plugin specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /plugins/{name}

Patch a Plugin

  • Description: Update a Plugin specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PluginResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /plugins/{name}/actions

List plugin actions Plugin

  • Description: List Plugin actions for a Plugin specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /plugins/{name}/actions/{cmd}

List specific action for a plugin Plugin

  • Description: List specific {cmd} action for a Plugin specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /plugins/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /plugins/{name}/params

List plugin params Plugin

  • Description: List Plugin parms for a Plugin specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PluginParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /plugins/{name}/params

  • Description: Sets parameters for a plugin specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

PluginParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /plugins/{name}/params

  • Description: Update params for Plugin {name} with the passed-in patch

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PluginParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /plugins/{name}/params/{key}

Get a single plugin parameter

  • Description: Get a single parameter {key} for a Plugin specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

PluginParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /plugins/{name}/params/{key}

  • Description: Set as single Parameter {key} for a plugin specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

key*

path

string

Body*

body

Raw Octet Stream

Responses

Code

Type

200

PluginParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /plugins/{name}/pubkey

Get the public key for secure params on a plugin

  • Description: Get the public key for a Plugin specified by {name}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

DELETE /plugins/{uuid}/params/{key}

Delete a single plugin parameter

  • Description: Delete a single parameter {key} for a Plugin specified by {uuid}

Parameters

Name

Position

Description

Type

name*

path

string

key*

path

string

Responses

Code

Type

200

PluginParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.20. PluginProviders

GET /plugin_providers

  • Description: Lists possible plugin_provider on the system to create plugins

  • Produces: [‘application/json’]

Responses

Code

Type

200

PluginProvidersResponse

401

NoContentResponse

403

NoContentResponse

500

ErrorResponse

HEAD /plugin_providers

  • Description: Stats of the list of plugin_provider on the system to create plugins

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

PluginProvidersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

500

ErrorResponse

GET /plugin_providers/{name}

Get a specific plugin with {name}

  • Description: Get a specific plugin specified by {name}.

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

PluginProviderResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

POST /plugin_providers/{name}

Upload a plugin provider to a specific {name}.

  • Consumes: [‘application/octet-stream’]

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

name*

path

string

replaceWritable

query

string

Body

body

Raw Octet Stream

Responses

Code

Type

201

PluginProviderInfoResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

DELETE /plugin_providers/{name}

Delete a plugin provider

  • Description: The plugin provider will be removed from the system.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

204

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /plugin_providers/{name}

See if a Plugin Provider exists

  • Description: Return 200 if the Plugin Provider specified by {name} exists, or return NotFound.

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

GET /plugin_providers/{name}/binary

Get the binary for a specific plugin provider by {name}

  • Description: Get a specific plugin provider binary specified by {name}

  • Produces: [‘application/octet-stream’, ‘application/json’]

Responses

Code

Type

200

IsoResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.21. Indexes

GET /indexes

  • Description: List all static indexes for objects

  • Produces: [‘application/json’]

Responses

Code

Type

200

IndexesResponse

401

NoContentResponse

403

NoContentResponse

500

ErrorResponse

GET /indexes/{prefix}

  • Description: Get static indexes for a specific object type

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

prefix*

path

string

Responses

Code

Type

200

IndexResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

GET /indexes/{prefix}/{param}

Get information on a specific index for a specific object type.

  • Description: Unlike the other routes, you can probe for parameter-defined indexes using this route.

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

prefix*

path

string

param*

path

string

Responses

Code

Type

200

IndexResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.22. Contents

GET /contents

  • Description: Lists possible contents on the system to serve DHCP

  • Produces: [‘application/json’]

Responses

Code

Type

200

ContentsResponse

401

NoContentResponse

403

NoContentResponse

500

ErrorResponse

POST /contents

  • Description: Create content into Digital Rebar Provision

Parameters

Name

Position

Description

Type

replaceWritable

query

string

Body

body

Content

Responses

Code

Type

201

ContentSummaryResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

422

ErrorResponse

500

ErrorResponse

507

ErrorResponse

GET /contents/{name}

Get a specific content with {name}

  • Description: Get a specific content specified by {name}.

  • Produces: [‘application/json’]

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

ContentResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

PUT /contents/{name}

  • Description: Replace content in Digital Rebar Provision

Parameters

Name

Position

Description

Type

replaceWritable

query

string

Body

body

Content

name*

path

string

Responses

Code

Type

200

ContentSummaryResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

422

ErrorResponse

500

ErrorResponse

507

ErrorResponse

DELETE /contents/{name}

Delete a content set.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

204

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

18.11.1.23. Events

POST /events

Create an Event

  • Description: Create an Event from the provided object

Parameters

Name

Position

Description

Type

Body

body

Event

Responses

Code

Type

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

422

ErrorResponse

18.11.3.27. Info

GET /info

Return current system info.

  • Produces: [‘application/json’]

Responses

Code

Type

200

InfoResponse

401

NoContentResponse

403

NoContentResponse

500

ErrorResponse

18.11.1.25. Stages

GET /stages

Lists Stages filtered by some parameters.

  • Description: This will show all Stages by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Reboot

query

string

BootEnv

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

StagesResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /stages

Create a Stage

  • Description: Create a Stage from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Stage

Responses

Code

Type

201

StageResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /stages

Stats of the List Stages filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Reboot

query

string

BootEnv

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /stages/{name}

Get a Stage

  • Description: Get the Stage specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

StageResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /stages/{name}

Put a Stage

  • Description: Update a Stage specified by {name} using a JSON Stage

Parameters

Name

Position

Description

Type

Body*

body

Stage

name*

path

string

Responses

Code

Type

200

StageResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /stages/{name}

Delete a Stage

  • Description: Delete a Stage specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

StageResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /stages/{name}

See if a Stage exists

  • Description: Return 200 if the Stage specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /stages/{name}

Patch a Stage

  • Description: Update a Stage specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

StageResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /stages/{name}/actions

List stage actions Stage

  • Description: List Stage actions for a Stage specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /stages/{name}/actions/{cmd}

List specific action for a stage Stage

  • Description: List specific {cmd} action for a Stage specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /stages/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /stages/{name}/params

List stage params Stage

  • Description: List Stage parms for a Stage specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

StageParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /stages/{name}/params

  • Description: Sets parameters for a stage specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

StageParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /stages/{name}/params

  • Description: Update params for Stage {name} with the passed-in patch

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

Patch

Responses

Code

Type

200

StageParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /stages/{name}/params/{key}

Get a single stage parameter

  • Description: Get a single parameter {key} for a Stage specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

StageParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /stages/{name}/params/{key}

  • Description: Set as single Parameter {key} for a stage specified by {name}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

name*

path

string

key*

path

string

Responses

Code

Type

200

StageParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /stages/{name}/params/{key}

Delete a single stage parameter

  • Description: Delete a single parameter {key} for a Stage specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

key*

path

string

Responses

Code

Type

200

StageParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /stages/{name}/pubkey

Get the public key for secure params on a stage

  • Description: Get the public key for a Stage specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.26. System

GET /system/actions

List system actions System

  • Description: List System actions Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /system/actions/{cmd}

List specific action for System

  • Description: List specific {cmd} action for System Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /system/actions/{cmd}

Call an action on the system.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

POST /system/upgrade

Upload a file to upgrade the DRP system

  • Description: The file will be uploaded and used to replace the running DRP instance.

  • Consumes: [‘application/octet-stream’]

  • Produces: [‘application/json’]

Responses

Code

Type

202

FileInfoResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

POST /system/upgrade/exec

Execute a previously staged upgrade

  • Description: The system will attempt to replace the current dr-provision and drpcli binaries with the ones staged by /system/upgrade/stage. If the staged upgrade matches the running binary (based on SHA256sums), this will return 204, and no further action will be taken. If the staged upgrade does not match the running binary, this will swap binaries, return 202, and restart 2 seconds after the API call finishes.

  • Produces: [‘application/json’]

Responses

Code

Type

202

NoContentResponse

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

POST /system/upgrade/run

Perform a rolling upgrade of a dr-provision cluster.

  • Description: The upgrade must already be staged. All the nodes of the cluster will be upgraded by calling their /system/upgrade/exec API endpoint and then waiting on that node to restart and update its version in the consensus metadata. Once that happens, the update process will move on to the next node. All other nodes will be updated before the cluster leader.

Responses

Code

Type

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

POST /system/upgrade/stage

Upload a file to perform a staged upgrade of a dr-provision cluster

  • Description: The file will be uploaded and used to replace the running DRP instance.

  • Consumes: [‘application/octet-stream’]

  • Produces: [‘application/json’]

Responses

Code

Type

202

FileInfoResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

DELETE /system/upgrade/stage

Unstage a pending staged update. This will fail if an update us running.

  • Produces: [‘application/json’]

Responses

Code

Type

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

ErrorResponse

404

ErrorResponse

409

ErrorResponse

415

ErrorResponse

507

ErrorResponse

18.11.1.27. Workflows

GET /workflows

Lists Workflows filtered by some parameters.

  • Description: This will show all Workflows by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Reboot

query

string

BootEnv

query

string

Responses

Code

Type

200

WorkflowsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /workflows

Create a Workflow

  • Description: Create a Workflow from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Workflow

Responses

Code

Type

201

WorkflowResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /workflows

Stats of the List Workflows filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Reboot

query

string

BootEnv

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /workflows/{name}

Get a Workflow

  • Description: Get the Workflow specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

WorkflowResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /workflows/{name}

Put a Workflow

  • Description: Update a Workflow specified by {name} using a JSON Workflow

Parameters

Name

Position

Description

Type

Body*

body

Workflow

name*

path

string

Responses

Code

Type

200

WorkflowResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /workflows/{name}

Delete a Workflow

  • Description: Delete a Workflow specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

WorkflowResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /workflows/{name}

See if a Workflow exists

  • Description: Return 200 if the Workflow specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /workflows/{name}

Patch a Workflow

  • Description: Update a Workflow specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

WorkflowResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /workflows/{name}/actions

List workflow actions Workflow

  • Description: List Workflow actions for a Workflow specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /workflows/{name}/actions/{cmd}

List specific action for a workflow Workflow

  • Description: List specific {cmd} action for a Workflow specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /workflows/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.3.40. Meta

GET /meta/{type}/{id}

Get Metadata for an Object of {type} idendified by {id}

  • Description: Get the appropriate Metadata or return NotFound.

Parameters

Name

Position

Description

Type

type*

path

string

id*

path

string

Responses

Code

Type

200

MetaResponse

401

NoContentResponse

403

NoContentResponse

PATCH /meta/{type}/{id}

Patch metadata on an Object of {type} with an ID of {id}

  • Description: Update metadata on a specific Object using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

type*

path

string

id*

path

string

Responses

Code

Type

200

MetaResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

18.11.1.29. Contexts

GET /contexts

Lists Contexts filtered by some parameters.

  • Description: This will show all Contexts by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Reboot

query

string

BootEnv

query

string

Responses

Code

Type

200

ContextsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /contexts

Create a Context

  • Description: Create a Context from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Context

Responses

Code

Type

201

ContextResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /contexts

Stats of the List Contexts filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Reboot

query

string

BootEnv

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /contexts/{name}

Get a Context

  • Description: Get the Context specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

ContextResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /contexts/{name}

Put a Context

  • Description: Update a Context specified by {name} using a JSON Context

Parameters

Name

Position

Description

Type

Body*

body

Context

name*

path

string

Responses

Code

Type

200

ContextResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /contexts/{name}

Delete a Context

  • Description: Delete a Context specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

ContextResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /contexts/{name}

See if a Context exists

  • Description: Return 200 if the Context specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /contexts/{name}

Patch a Context

  • Description: Update a Context specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

ContextResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /contexts/{name}/actions

List context actions Context

  • Description: List Context actions for a Context specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /contexts/{name}/actions/{cmd}

List specific action for a context Context

  • Description: List specific {cmd} action for a Context specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /contexts/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.3.76. Whoami

POST /whoami

Fills a Whoami with the closest matching Machine

  • Description: This will fill the Result section of the passed-in Whoami with the Machine information that most closely matches the Fingerprint and MacAddrs fields. If there were no close enough matches, Score will stay at zero, the Uuid field will not be valid, and no Token will be present.

Parameters

Name

Position

Description

Type

Body

body

Whoami

Responses

Code

Type

201

WhoamiResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

18.11.1.31. Pools

GET /pools

Lists Pools filtered by some parameters.

  • Description: This will show all Pools by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred. ID=Lt(fred)&Available=true - returns items with ID less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

PoolsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /pools

Create a Pool

  • Description: Create a Pool from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Pool

Responses

Code

Type

201

PoolResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /pools

Stats of the List Pools filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred. ID=Lt(fred)&Available=true - returns items with ID less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /pools-active

Lists active Pools

  • Description: Returns the list of active pools

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

PoolsActiveResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /pools/{id}

Get a Pool

  • Description: Get the Pool specified by {id} or return NotFound.

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /pools/{id}

Put a Pool

  • Description: Update a Pool specified by {id} using a JSON Pool

Parameters

Name

Position

Description

Type

Body*

body

Pool

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /pools/{id}

Delete a Pool

  • Description: Delete a Pool specified by {id}

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /pools/{id}

See if a Pool exists

  • Description: Return 200 if the Pool specifiec by {id} exists, or return NotFound.

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /pools/{id}

Patch a Pool

  • Description: Update a Pool specified by {id} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /pools/{id}/actions

List task actions Pool

  • Description: List Pool actions for a Pool specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /pools/{id}/actions/{cmd}

List specific action for a task Pool

  • Description: List specific {cmd} action for a Pool specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /pools/{id}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

POST /pools/{id}/addMachines

Add machines to this pool from default.

  • Description: Input is a map with the following fields. These fields override the pool definitions if they exist on the pool. pool/workflow = workflow of to set on transition pool/add-profiles pool/add-parameters pool/remove-profiles pool/remove-parameters These fields define what to operate. pool/count = how many nodes to change pool/minimum = minimum machnies to allocate or fail pool/filter = list of list-style filters (e.g. Runnable=Eq(true)) pool/wait-timeout = Time to delay in seconds or time string (30m) pool/machine-list - a list of machine UUID or Name:name pool/all-machines - boolean for all machines in pool

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

POST /pools/{id}/allocateMachines

Allocate machines in this pool.

  • Description: Input is a map with the following fields. These fields override the pool definitions if they exist on the pool. pool/workflow = workflow of to set on transition pool/add-profiles pool/add-parameters pool/remove-profiles pool/remove-parameters These fields define what to operate. pool/count = how many nodes to change pool/minimum = minimum machnies to allocate or fail pool/filter = list of list-style filters (e.g. Runnable=Eq(true)) pool/wait-timeout = Time to delay in seconds or time string (30m) pool/machine-list - a list of machine UUID or Name:name pool/all-machines - boolean for all machines in pool

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

POST /pools/{id}/releaseMachines

Release machines in this pool.

  • Description: Input is a map with the following fields. These fields override the pool definitions if they exist on the pool. pool/workflow = workflow of to set on transition pool/add-profiles pool/add-parameters pool/remove-profiles pool/remove-parameters These fields define what to operate. pool/count = how many nodes to change pool/minimum = minimum machnies to allocate or fail pool/filter = list of list-style filters (e.g. Runnable=Eq(true)) pool/wait-timeout = Time to delay in seconds or time string (30m) pool/machine-list - a list of machine UUID or Name:name pool/all-machines - boolean for all machines in pool

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

POST /pools/{id}/removeMachines

Remove machines from this pool to default.

  • Description: Input is a map with the following fields. These fields override the pool definitions if they exist on the pool. pool/workflow = workflow of to set on transition pool/add-profiles pool/add-parameters pool/remove-profiles pool/remove-parameters These fields define what to operate. pool/count = how many nodes to change pool/minimum = minimum machnies to allocate or fail pool/filter = list of list-style filters (e.g. Runnable=Eq(true)) pool/wait-timeout = Time to delay in seconds or time string (30m) pool/machine-list - a list of machine UUID or Name:name pool/all-machines - boolean for all machines in pool

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /pools/{id}/status

  • Description: Returns the status of the machines in the pool

Parameters

Name

Position

Description

Type

force

query

string

source-pool

query

string

id*

path

string

Responses

Code

Type

200

PoolStatusResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.32. Endpoints

GET /endpoints

Lists Endpoints filtered by some parameters.

  • Description: This will show all Endpoints by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

EndpointsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /endpoints

Create a Endpoint

  • Description: Create a Endpoint from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Endpoint

Responses

Code

Type

201

EndpointResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /endpoints

Stats of the List Endpoints filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /endpoints/{id}

Get a Endpoint

  • Description: Get the Endpoint specified by {id} or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

EndpointResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /endpoints/{id}

Put a Endpoint

  • Description: Update a Endpoint specified by {id} using a JSON Endpoint

Parameters

Name

Position

Description

Type

Body*

body

Endpoint

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

EndpointResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

DELETE /endpoints/{id}

Delete a Endpoint

  • Description: Delete a Endpoint specified by {id}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

EndpointResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /endpoints/{id}

See if a Endpoint exists

  • Description: Return 200 if the Endpoint specifiec by {id} exists, or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /endpoints/{id}

Patch a Endpoint

  • Description: Update a Endpoint specified by {id} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

EndpointResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /endpoints/{id}/actions

List endpoint actions Endpoint

  • Description: List Endpoint actions for a Endpoint specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /endpoints/{id}/actions/{cmd}

List specific action for a endpoint Endpoint

  • Description: List specific {cmd} action for a Endpoint specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /endpoints/{id}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /endpoints/{id}/params

List endpoint params Endpoint

  • Description: List Endpoint parms for a Endpoint specified by {id}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

EndpointParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /endpoints/{id}/params

  • Description: Sets parameters for a endpoint specified by {id}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

id*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

EndpointParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /endpoints/{id}/params

  • Description: Update params for Endpoint {id} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

EndpointParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /endpoints/{id}/params/{key}

Get a single endpoint parameter

  • Description: Get a single parameter {key} for a Endpoint specified by {id}

Parameters

Name

Position

Description

Type

decode

query

string

id*

path

string

key*

path

string

Responses

Code

Type

200

EndpointParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /endpoints/{id}/params/{key}

  • Description: Set as single Parameter {key} for a endpoint specified by {id}

Parameters

Name

Position

Description

Type

id*

path

string

key*

path

string

Body*

body

Raw Octet Stream

Responses

Code

Type

200

EndpointParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /endpoints/{id}/pubkey

Get the public key for secure params on a endpoint

  • Description: Get the public key for a Endpoint specified by {id}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

id*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

DELETE /endpoints/{uuid}/params/{key}

Delete a single endpoint parameter

  • Description: Delete a single parameter {key} for a Endpoint specified by {uuid}

Parameters

Name

Position

Description

Type

id*

path

string

key*

path

string

Responses

Code

Type

200

EndpointParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.33. VersionSets

GET /version_sets

Lists VersionSets filtered by some parameters.

  • Description: This will show all VersionSets by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred. ID=Lt(fred)&Available=true - returns items with ID less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

VersionSetsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /version_sets

Create a VersionSet

  • Description: Create a VersionSet from the provided object

Parameters

Name

Position

Description

Type

Body*

body

VersionSet

Responses

Code

Type

201

VersionSetResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /version_sets

Stats of the List VersionSets filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred. ID=Lt(fred)&Available=true - returns items with ID less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /version_sets/{id}

Get a VersionSet

  • Description: Get the VersionSet specified by {id} or return NotFound.

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

VersionSetResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /version_sets/{id}

Put a VersionSet

  • Description: Update a VersionSet specified by {id} using a JSON VersionSet

Parameters

Name

Position

Description

Type

Body*

body

VersionSet

id*

path

string

Responses

Code

Type

200

VersionSetResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /version_sets/{id}

Delete a VersionSet

  • Description: Delete a VersionSet specified by {id}

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

VersionSetResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /version_sets/{id}

See if a VersionSet exists

  • Description: Return 200 if the VersionSet specifiec by {id} exists, or return NotFound.

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /version_sets/{id}

Patch a VersionSet

  • Description: Update a VersionSet specified by {id} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

id*

path

string

Responses

Code

Type

200

VersionSetResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /version_sets/{id}/actions

List task actions VersionSet

  • Description: List VersionSet actions for a VersionSet specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /version_sets/{id}/actions/{cmd}

List specific action for a task VersionSet

  • Description: List specific {cmd} action for a VersionSet specified by {id} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /version_sets/{id}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

id*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.34. CatalogItems

GET /catalog_items

Lists CatalogItems filtered by some parameters.

  • Description: This will show all CatalogItems by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred. ID=Lt(fred)&Available=true - returns items with ID less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

CatalogItemsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /catalog_items

Create a CatalogItem

  • Description: Create a CatalogItem from the provided object

Parameters

Name

Position

Description

Type

Body*

body

CatalogItem

Responses

Code

Type

201

CatalogItemResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /catalog_items

Stats of the List CatalogItems filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: ID = string Provider = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: ID=fred - returns items named fred ID=Lt(fred) - returns items that alphabetically less than fred. ID=Lt(fred)&Available=true - returns items with ID less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Id

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /catalog_items/{id}

Get a CatalogItem

  • Description: Get the CatalogItem specified by {id} or return NotFound.

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

CatalogItemResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /catalog_items/{id}

Put a CatalogItem

  • Description: Update a CatalogItem specified by {id} using a JSON CatalogItem

Parameters

Name

Position

Description

Type

Body*

body

CatalogItem

id*

path

string

Responses

Code

Type

200

CatalogItemResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /catalog_items/{id}

Delete a CatalogItem

  • Description: Delete a CatalogItem specified by {id}

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

CatalogItemResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /catalog_items/{id}

See if a CatalogItem exists

  • Description: Return 200 if the CatalogItem specifiec by {id} exists, or return NotFound.

Parameters

Name

Position

Description

Type

id*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /catalog_items/{id}

Patch a CatalogItem

  • Description: Update a CatalogItem specified by {id} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

id*

path

string

Responses

Code

Type

200

CatalogItemResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

18.11.3.39. MachineFingerprint

18.11.1.36. Objects

GET /objects

  • Description: Lists the object types in the system

Responses

Code

Type

200

ObjectsResponse

401

NoContentResponse

403

NoContentResponse

18.11.1.37. Clusters

GET /clusters

Lists Clusters filtered by some parameters.

  • Description: This will show all Clusters by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = UUID string Name = string BootEnv = string Address = IP Address Runnable = true/false Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Name

query

string

BootEnv

query

string

Address

query

string

Runnable

query

string

decode

query

boolean

slim

query

boolean

params

query

boolean

Responses

Code

Type

200

ClustersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /clusters

Create a Cluster

  • Description: Create a Cluster from the provided object

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Machine

Responses

Code

Type

201

ClusterResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /clusters

Stats of the List Clusters filtered by some parameters.

  • Description: This will return headers with the stats of the list. X-DRP-LIST-COUNT - number of objects in the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = UUID string Name = string BootEnv = string Address = IP Address Runnable = true/false Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Name

query

string

BootEnv

query

string

Address

query

string

Runnable

query

string

decode

query

boolean

slim

query

boolean

params

query

boolean

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /clusters/{uuid}

Get a Cluster

  • Description: Get the Cluster specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /clusters/{uuid}

Put a Cluster

  • Description: Update a Cluster specified by {uuid} using a JSON Cluster

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Machine

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /clusters/{uuid}

Delete a Cluster

  • Description: Delete a Cluster specified by {uuid}.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /clusters/{uuid}

See if a Cluster exists

  • Description: Return 200 if the Cluster specifiec by {uuid} exists, or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /clusters/{uuid}

Patch a Cluster

  • Description: Update a Cluster specified by {uuid} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /clusters/{uuid}/actions

List cluster actions Cluster

  • Description: List Cluster actions for a Cluster specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /clusters/{uuid}/actions/{cmd}

List specific action for a cluster Cluster

  • Description: List specific {cmd} action for a Cluster specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /clusters/{uuid}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /clusters/{uuid}/cleanup

Cleanup a Cluster

  • Description: Cleanup a Cluster specified by {uuid}. If 202 is returned, the on-delete-workflow has been started.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

202

ClusterResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

GET /clusters/{uuid}/group/params

List cluster group profile params Cluster

  • Description: List Cluster params for a Cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

ClusterParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /clusters/{uuid}/group/params

  • Description: Sets parameters for a cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

map of strings to object

uuid*

path

string

Responses

Code

Type

200

ClusterParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /clusters/{uuid}/group/params

  • Description: Update group profile params for Cluster {uuid} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ClusterParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /clusters/{uuid}/group/params/{key}

Get a single cluster group profile parameter

  • Description: Get a single parameter {key} for a Cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ClusterParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /clusters/{uuid}/group/params/{key}

  • Description: Set as single Parameter {key} for a cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ClusterParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /clusters/{uuid}/group/params/{key}

Delete a single cluster group profile parameter

  • Description: Delete a single group profile parameter {key} for a Cluster specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ClusterParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /clusters/{uuid}/group/pubkey

Get the public key for secure params on a cluster group profile

  • Description: Get the public key for a Cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

GET /clusters/{uuid}/params

List cluster group profile params Cluster

  • Description: List Cluster params for a Cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

ClusterParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /clusters/{uuid}/params

  • Description: Sets parameters for a cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

map of strings to object

uuid*

path

string

Responses

Code

Type

200

ClusterParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /clusters/{uuid}/params

  • Description: Update group profile params for Cluster {uuid} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ClusterParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /clusters/{uuid}/params/{key}

Get a single cluster group profile parameter

  • Description: Get a single parameter {key} for a Cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ClusterParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /clusters/{uuid}/params/{key}

  • Description: Set as single Parameter {key} for a cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ClusterParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /clusters/{uuid}/params/{key}

Delete a single cluster group profile parameter

  • Description: Delete a single group profile parameter {key} for a Cluster specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ClusterParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /clusters/{uuid}/pubkey

Get the public key for secure params on a cluster group profile

  • Description: Get the public key for a Cluster group profile specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

PATCH /clusters/{uuid}/start

Start a Cluster

  • Description: Update a Cluster specified by {uuid} using a RFC6902 Patch structure after clearing workflow and runnable.

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ClusterResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /clusters/{uuid}/token

Get a Cluster Token

  • Description: Get a Cluster Token specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

UserTokenResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.38. ResourceBrokers

POST /clusters/{id}/releaseToPool

Releases a resource_broker in this pool.

  • Description: No input.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

POST /machines/{id}/releaseToPool

Releases a resource_broker in this pool.

  • Description: No input.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /resource_brokers

Lists ResourceBrokers filtered by some parameters.

  • Description: This will show all ResourceBrokers by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = UUID string Name = string BootEnv = string Address = IP Address Runnable = true/false Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Name

query

string

BootEnv

query

string

Address

query

string

Runnable

query

string

decode

query

boolean

slim

query

boolean

params

query

boolean

Responses

Code

Type

200

ResourceBrokersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /resource_brokers

Create a ResourceBroker

  • Description: Create a ResourceBroker from the provided object

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Machine

Responses

Code

Type

201

ResourceBrokerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /resource_brokers

Stats of the List ResourceBrokers filtered by some parameters.

  • Description: This will return headers with the stats of the list. X-DRP-LIST-COUNT - number of objects in the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = UUID string Name = string BootEnv = string Address = IP Address Runnable = true/false Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

Name

query

string

BootEnv

query

string

Address

query

string

Runnable

query

string

decode

query

boolean

slim

query

boolean

params

query

boolean

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /resource_brokers/{id}/releaseToPool

Releases a resource_broker in this pool.

  • Description: No input.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PoolResultsResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /resource_brokers/{uuid}

Get a ResourceBroker

  • Description: Get the ResourceBroker specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /resource_brokers/{uuid}

Put a ResourceBroker

  • Description: Update a ResourceBroker specified by {uuid} using a JSON ResourceBroker

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Machine

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /resource_brokers/{uuid}

Delete a ResourceBroker

  • Description: Delete a ResourceBroker specified by {uuid}.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /resource_brokers/{uuid}

See if a ResourceBroker exists

  • Description: Return 200 if the ResourceBroker specifiec by {uuid} exists, or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /resource_brokers/{uuid}

Patch a ResourceBroker

  • Description: Update a ResourceBroker specified by {uuid} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /resource_brokers/{uuid}/actions

List resource_broker actions ResourceBroker

  • Description: List ResourceBroker actions for a ResourceBroker specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /resource_brokers/{uuid}/actions/{cmd}

List specific action for a resource_broker ResourceBroker

  • Description: List specific {cmd} action for a ResourceBroker specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /resource_brokers/{uuid}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /resource_brokers/{uuid}/cleanup

Cleanup a ResourceBroker

  • Description: Cleanup a ResourceBroker specified by {uuid}. If 202 is returned, the on-delete-workflow has been started.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerResponse

202

ResourceBrokerResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

GET /resource_brokers/{uuid}/group/params

List resource_broker group profile params ResourceBroker

  • Description: List ResourceBroker params for a ResourceBroker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /resource_brokers/{uuid}/group/params

  • Description: Sets parameters for a resource_broker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

map of strings to object

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /resource_brokers/{uuid}/group/params

  • Description: Update group profile params for ResourceBroker {uuid} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /resource_brokers/{uuid}/group/params/{key}

Get a single resource_broker group profile parameter

  • Description: Get a single parameter {key} for a ResourceBroker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ResourceBrokerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /resource_brokers/{uuid}/group/params/{key}

  • Description: Set as single Parameter {key} for a resource_broker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ResourceBrokerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /resource_brokers/{uuid}/group/params/{key}

Delete a single resource_broker group profile parameter

  • Description: Delete a single group profile parameter {key} for a ResourceBroker specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ResourceBrokerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /resource_brokers/{uuid}/group/pubkey

Get the public key for secure params on a resource_broker group profile

  • Description: Get the public key for a ResourceBroker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

GET /resource_brokers/{uuid}/params

List resource_broker group profile params ResourceBroker

  • Description: List ResourceBroker params for a ResourceBroker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /resource_brokers/{uuid}/params

  • Description: Sets parameters for a resource_broker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

map of strings to object

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /resource_brokers/{uuid}/params

  • Description: Update group profile params for ResourceBroker {uuid} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /resource_brokers/{uuid}/params/{key}

Get a single resource_broker group profile parameter

  • Description: Get a single parameter {key} for a ResourceBroker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ResourceBrokerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /resource_brokers/{uuid}/params/{key}

  • Description: Set as single Parameter {key} for a resource_broker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ResourceBrokerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /resource_brokers/{uuid}/params/{key}

Delete a single resource_broker group profile parameter

  • Description: Delete a single group profile parameter {key} for a ResourceBroker specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

ResourceBrokerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /resource_brokers/{uuid}/pubkey

Get the public key for secure params on a resource_broker group profile

  • Description: Get the public key for a ResourceBroker group profile specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

PATCH /resource_brokers/{uuid}/start

Start a ResourceBroker

  • Description: Update a ResourceBroker specified by {uuid} using a RFC6902 Patch structure after clearing Workflow and Runnable.

Parameters

Name

Position

Description

Type

force

query

string

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

ResourceBrokerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /resource_brokers/{uuid}/token

Get a ResourceBroker Token

  • Description: Get a ResourceBroker Token specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

UserTokenResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

18.11.1.39. IdentityProviders

GET /identity_providers

Lists IdentityProviders filtered by some parameters.

  • Description: This will show all IdentityProviders by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

IdentityProvidersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /identity_providers

Create a IdentityProvider

  • Description: Create a IdentityProvider from the provided object

Parameters

Name

Position

Description

Type

Body*

body

IdentityProvider

Responses

Code

Type

201

IdentityProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /identity_providers

Stats of the List IdentityProviders filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /identity_providers/{name}

Get a IdentityProvider

  • Description: Get the IdentityProvider specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

IdentityProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /identity_providers/{name}

Put a IdentityProvider

  • Description: Update a IdentityProvider specified by {name} using a JSON IdentityProvider

Parameters

Name

Position

Description

Type

Body*

body

IdentityProvider

name*

path

string

Responses

Code

Type

200

IdentityProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /identity_providers/{name}

Delete a IdentityProvider

  • Description: Delete a IdentityProvider specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

IdentityProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /identity_providers/{name}

See if a IdentityProvider exists

  • Description: Return 200 if the IdentityProvider specific by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /identity_providers/{name}

Patch a IdentityProvider

  • Description: Update a IdentityProvider specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

IdentityProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /identity_providers/{name}/actions

List identity_provider actions IdentityProvider

  • Description: List IdentityProvider actions for a IdentityProvider specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /identity_providers/{name}/actions/{cmd}

List specific action for a identity_provider IdentityProvider

  • Description: List specific {cmd} action for a IdentityProvider specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /identity_providers/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

18.11.1.40. WorkOrders

GET /work_orders

Lists WorkOrders filtered by some parameters.

  • Description: This will show all WorkOrders by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = string State = string Machine = string Archived = boolean StartTime = datetime EndTime = datetime Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Uuid=fred - returns items named fred Uuid=Lt(fred) - returns items that alphabetically less than fred. Uuid=Lt(fred)&Archived=true - returns items with Uuid less than fred and Archived is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

State

query

string

Machine

query

string

Archived

query

string

StartTime

query

string

EndTime

query

string

Responses

Code

Type

200

WorkOrdersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /work_orders

Create a WorkOrder

  • Description: Create a WorkOrder from the provided object, Only Machine and UUID are used. This is a testing endpoint.

Parameters

Name

Position

Description

Type

Body*

body

WorkOrder

Responses

Code

Type

201

JobResponse

202

JobResponse

204

NoContentResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

500

ErrorResponse

HEAD /work_orders

Stats of the List WorkOrders filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Uuid = string Stage = string Task = string State = string Machine = string Archived = boolean StartTime = datetime EndTime = datetime Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Uuid=fred - returns items named fred Uuid=Lt(fred) - returns items that alphabetically less than fred. Uuid=Lt(fred)&Archived=true - returns items with Uuid less than fred and Archived is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

State

query

string

Machine

query

string

Archived

query

string

StartTime

query

string

EndTime

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /work_orders/{uuid}

Get a WorkOrder

  • Description: Get the WorkOrder specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

WorkOrderResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /work_orders/{uuid}

Put a WorkOrder

  • Description: Update a WorkOrder specified by {uuid} using a JSON WorkOrder

Parameters

Name

Position

Description

Type

Body*

body

WorkOrder

uuid*

path

string

Responses

Code

Type

200

WorkOrderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

DELETE /work_orders/{uuid}

Delete a WorkOrder

  • Description: Delete a WorkOrder specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

WorkOrderResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

HEAD /work_orders/{uuid}

See if a WorkOrder exists

  • Description: Return 200 if the WorkOrder specifiec by {uuid} exists, or return NotFound.

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /work_orders/{uuid}

Patch a WorkOrder

  • Description: Update a WorkOrder specified by {uuid} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

uuid*

path

string

Responses

Code

Type

200

WorkOrderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

422

ErrorResponse

GET /work_orders/{uuid}/params

List work_order params WorkOrders

  • Description: List WorkOrder parms for a WorkOrder specified by {uuid}

Responses

Code

Type

200

WorkOrderParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /work_orders/{uuid}/params

  • Description: Sets parameters for a machine specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

WorkOrderParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /work_orders/{uuid}/params

  • Description: Update params for WorkOrder {uuid} with the passed-in patch

Responses

Code

Type

200

WorkOrderParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /work_orders/{uuid}/params/{key}

Get a single machine parameter

  • Description: Get a single parameter {key} for a WorkOrder specified by {uuid}

Responses

Code

Type

200

WorkOrderParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /work_orders/{uuid}/params/{key}

  • Description: Set as single Parameter {key} for a machine specified by {uuid}

Responses

Code

Type

200

WorkOrderParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /work_orders/{uuid}/params/{key}

Delete a single machine parameter

  • Description: Delete a single parameter {key} for a WorkOrder specified by {uuid}

Responses

Code

Type

200

WorkOrderParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /work_orders/{uuid}/plugin_actions

List work_order plugin_actions WorkOrder

  • Description: List WorkOrder plugin_actions for a WorkOrder specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

ActionsResponse

401

NoWorkOrderResponse

403

NoWorkOrderResponse

404

ErrorResponse

GET /work_orders/{uuid}/plugin_actions/{cmd}

List specific action for a work_order WorkOrder

  • Description: List specific {cmd} action for a WorkOrder specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoWorkOrderResponse

403

NoWorkOrderResponse

404

ErrorResponse

POST /work_orders/{uuid}/plugin_actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoWorkOrderResponse

403

NoWorkOrderResponse

404

ErrorResponse

409

ErrorResponse

GET /work_orders/{uuid}/pubkey

Get the public key for secure params on a machine

  • Description: Get the public key for a WorkOrder specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.41. Triggers

GET /triggers

Lists Triggers filtered by some parameters.

  • Description: This will show all Triggers by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

TriggersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /triggers

Create a Trigger

  • Description: Create a Trigger from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Trigger

Responses

Code

Type

201

TriggerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /triggers

Stats of the List Triggers filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /triggers/{name}

Get a Trigger

  • Description: Get the Trigger specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TriggerResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /triggers/{name}

Put a Trigger

  • Description: Update a Trigger specified by {name} using a JSON Trigger

Parameters

Name

Position

Description

Type

Body*

body

Trigger

name*

path

string

Responses

Code

Type

200

TriggerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /triggers/{name}

Delete a Trigger

  • Description: Delete a Trigger specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TriggerResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /triggers/{name}

See if a Trigger exists

  • Description: Return 200 if the Trigger specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /triggers/{name}

Patch a Trigger

  • Description: Update a Trigger specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

TriggerResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /triggers/{name}/actions

List trigger actions Trigger

  • Description: List Trigger actions for a Trigger specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoTriggerResponse

403

NoTriggerResponse

404

ErrorResponse

GET /triggers/{name}/actions/{cmd}

List specific action for a trigger Trigger

  • Description: List specific {cmd} action for a Trigger specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoTriggerResponse

403

NoTriggerResponse

404

ErrorResponse

POST /triggers/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoTriggerResponse

403

NoTriggerResponse

404

ErrorResponse

409

ErrorResponse

GET /triggers/{name}/params

List trigger params Trigger

  • Description: List Trigger parms for a Trigger specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

TriggerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /triggers/{name}/params

  • Description: Sets parameters for a trigger specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

TriggerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /triggers/{name}/params

  • Description: Update params for Trigger {name} with the passed-in patch

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

Patch

Responses

Code

Type

200

TriggerParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /triggers/{name}/params/{key}

Delete a single trigger parameter

  • Description: Delete a single parameter {key} for a Trigger specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

TriggerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /triggers/{name}/params/{key}

  • Description: Set as single Parameter {key} for a trigger specified by {name}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

name*

path

string

key*

path

string

Responses

Code

Type

200

TriggerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /triggers/{name}/params/{key}

Delete a single trigger parameter

  • Description: Delete a single parameter {key} for a Trigger specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

TriggerParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /triggers/{name}/pubkey

Get the public key for secure params on a trigger

  • Description: Get the public key for a Trigger specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.42. TriggerProviders

GET /trigger_providers

Lists TriggerProviders filtered by some parameters.

  • Description: This will show all TriggerProviders by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

TriggerProvidersResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /trigger_providers

Create a TriggerProvider

  • Description: Create a TriggerProvider from the provided object

Parameters

Name

Position

Description

Type

Body*

body

TriggerProvider

Responses

Code

Type

201

TriggerProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /trigger_providers

Stats of the List TriggerProviders filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /trigger_providers/{name}

Get a TriggerProvider

  • Description: Get the TriggerProvider specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TriggerProviderResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /trigger_providers/{name}

Put a TriggerProvider

  • Description: Update a TriggerProvider specified by {name} using a JSON TriggerProvider

Parameters

Name

Position

Description

Type

Body*

body

TriggerProvider

name*

path

string

Responses

Code

Type

200

TriggerProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /trigger_providers/{name}

Delete a TriggerProvider

  • Description: Delete a TriggerProvider specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

TriggerProviderResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /trigger_providers/{name}

See if a TriggerProvider exists

  • Description: Return 200 if the TriggerProvider specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /trigger_providers/{name}

Patch a TriggerProvider

  • Description: Update a TriggerProvider specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

TriggerProviderResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /trigger_providers/{name}/actions

List trigger_provider actions TriggerProvider

  • Description: List TriggerProvider actions for a TriggerProvider specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoTriggerProviderResponse

403

NoTriggerProviderResponse

404

ErrorResponse

GET /trigger_providers/{name}/actions/{cmd}

List specific action for a trigger_provider TriggerProvider

  • Description: List specific {cmd} action for a TriggerProvider specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoTriggerProviderResponse

403

NoTriggerProviderResponse

404

ErrorResponse

POST /trigger_providers/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoTriggerProviderResponse

403

NoTriggerProviderResponse

404

ErrorResponse

409

ErrorResponse

GET /trigger_providers/{name}/params

List trigger_provider params TriggerProvider

  • Description: List TriggerProvider parms for a TriggerProvider specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

TriggerProviderParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /trigger_providers/{name}/params

  • Description: Sets parameters for a trigger_provider specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

TriggerProviderParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /trigger_providers/{name}/params

  • Description: Update params for TriggerProvider {name} with the passed-in patch

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

Patch

Responses

Code

Type

200

TriggerProviderParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /trigger_providers/{name}/params/{key}

Delete a single trigger_provider parameter

  • Description: Delete a single parameter {key} for a TriggerProvider specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

TriggerProviderParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /trigger_providers/{name}/params/{key}

  • Description: Set as single Parameter {key} for a trigger_provider specified by {name}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

name*

path

string

key*

path

string

Responses

Code

Type

200

TriggerProviderParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /trigger_providers/{name}/params/{key}

Delete a single trigger_provider parameter

  • Description: Delete a single parameter {key} for a TriggerProvider specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

TriggerProviderParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /trigger_providers/{name}/pubkey

Get the public key for secure params on a trigger_provider

  • Description: Get the public key for a TriggerProvider specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.43. Blueprints

GET /blueprints

Lists Blueprints filtered by some parameters.

  • Description: This will show all Blueprints by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

BlueprintsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /blueprints

Create a Blueprint

  • Description: Create a Blueprint from the provided object

Parameters

Name

Position

Description

Type

Body*

body

Blueprint

Responses

Code

Type

201

BlueprintResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /blueprints

Stats of the List Blueprints filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Reboot = boolean BootEnv = string Available = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred. Name=Lt(fred)&Available=true - returns items with Name less than fred and Available is true

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Name

query

string

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /blueprints/{name}

Get a Blueprint

  • Description: Get the Blueprint specified by {name} or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

BlueprintResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /blueprints/{name}

Put a Blueprint

  • Description: Update a Blueprint specified by {name} using a JSON Blueprint

Parameters

Name

Position

Description

Type

Body*

body

Blueprint

name*

path

string

Responses

Code

Type

200

BlueprintResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

DELETE /blueprints/{name}

Delete a Blueprint

  • Description: Delete a Blueprint specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

BlueprintResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /blueprints/{name}

See if a Blueprint exists

  • Description: Return 200 if the Blueprint specifiec by {name} exists, or return NotFound.

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /blueprints/{name}

Patch a Blueprint

  • Description: Update a Blueprint specified by {name} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

name*

path

string

Responses

Code

Type

200

BlueprintResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

GET /blueprints/{name}/actions

List blueprint actions Blueprint

  • Description: List Blueprint actions for a Blueprint specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoBlueprintResponse

403

NoBlueprintResponse

404

ErrorResponse

GET /blueprints/{name}/actions/{cmd}

List specific action for a blueprint Blueprint

  • Description: List specific {cmd} action for a Blueprint specified by {name} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoBlueprintResponse

403

NoBlueprintResponse

404

ErrorResponse

POST /blueprints/{name}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

name*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoBlueprintResponse

403

NoBlueprintResponse

404

ErrorResponse

409

ErrorResponse

GET /blueprints/{name}/params

List blueprint params Blueprint

  • Description: List Blueprint parms for a Blueprint specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

params

query

string

name*

path

string

Responses

Code

Type

200

BlueprintParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /blueprints/{name}/params

  • Description: Sets parameters for a blueprint specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

BlueprintParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /blueprints/{name}/params

  • Description: Update params for Blueprint {name} with the passed-in patch

Parameters

Name

Position

Description

Type

name*

path

string

Body*

body

Patch

Responses

Code

Type

200

BlueprintParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /blueprints/{name}/params/{key}

Delete a single blueprint parameter

  • Description: Delete a single parameter {key} for a Blueprint specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

BlueprintParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /blueprints/{name}/params/{key}

  • Description: Set as single Parameter {key} for a blueprint specified by {name}

Parameters

Name

Position

Description

Type

Body*

body

Raw Octet Stream

name*

path

string

key*

path

string

Responses

Code

Type

200

BlueprintParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /blueprints/{name}/params/{key}

Delete a single blueprint parameter

  • Description: Delete a single parameter {key} for a Blueprint specified by {name}

Parameters

Name

Position

Description

Type

aggregate

query

string

decode

query

string

name*

path

string

key*

path

string

Responses

Code

Type

200

BlueprintParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /blueprints/{name}/pubkey

Get the public key for secure params on a blueprint

  • Description: Get the public key for a Blueprint specified by {name}

Parameters

Name

Position

Description

Type

name*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.1.44. Alerts

GET /alerts

Lists Alerts filtered by some parameters.

  • Description: This will show all Alerts by default. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

AlertsResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

POST /alerts

Create a Alert

  • Description: Create a Alert from the provided object

Parameters

Name

Position

Description

Type

unique

query

string

Body*

body

Alert

Responses

Code

Type

201

AlertResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

409

ErrorResponse

422

ErrorResponse

HEAD /alerts

Stats of the List Alerts filtered by some parameters.

  • Description: This will return headers with the stats of the list. You may specify: Offset = integer, 0-based inclusive starting point in filter data. Limit = integer, number of items to return Functional Indexs: Name = string Available = boolean Valid = boolean ReadOnly = boolean Functions: Eq(value) = Return items that are equal to value Lt(value) = Return items that are less than value Lte(value) = Return items that less than or equal to value Gt(value) = Return items that are greater than value Gte(value) = Return items that greater than or equal to value Between(lower,upper) = Return items that are inclusively between lower and upper Except(lower,upper) = Return items that are not inclusively between lower and upper Example: Name=fred - returns items named fred Name=Lt(fred) - returns items that alphabetically less than fred.

Parameters

Name

Position

Description

Type

offset

query

integer

limit

query

integer

Available

query

string

Valid

query

string

ReadOnly

query

string

Uuid

query

string

decode

query

boolean

slim

query

boolean

params

query

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

406

ErrorResponse

GET /alerts/{uuid}

Get a Alert

  • Description: Get the Alert specified by {uuid} or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

AlertResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

PUT /alerts/{uuid}

Put a Alert

  • Description: Update a Alert specified by {uuid} using a JSON Alert

Parameters

Name

Position

Description

Type

unique

query

string

Body*

body

Alert

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

AlertResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

422

ErrorResponse

DELETE /alerts/{uuid}

Delete a Alert

  • Description: Delete a Alert specified by {uuid}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

AlertResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

422

ErrorResponse

HEAD /alerts/{uuid}

See if a Alert exists

  • Description: Return 200 if the Alert specifiec by {uuid} exists, or return NotFound.

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

NoContentResponse

401

NoContentResponse

403

NoContentResponse

404

NoContentResponse

PATCH /alerts/{uuid}

Patch a Alert

  • Description: Update a Alert specified by {uuid} using a RFC6902 Patch structure

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

AlertResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

406

ErrorResponse

409

ErrorResponse

422

ErrorResponse

POST /alerts/{uuid}/acknowledge

  • Description: Acknowledge an alert by {uuid}

Parameters

Name

Position

Description

Type

unique

query

string

Body*

body

Alert

Responses

Code

Type

200

AlertResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /alerts/{uuid}/actions

List alert actions Alert

  • Description: List Alert actions for a Alert specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

plugin

query

string

Responses

Code

Type

200

ActionsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /alerts/{uuid}/actions/{cmd}

List specific action for a alert Alert

  • Description: List specific {cmd} action for a Alert specified by {uuid} Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Responses

Code

Type

200

ActionResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /alerts/{uuid}/actions/{cmd}

Call an action on the node.

  • Description: Optionally, a query parameter can be used to limit the scope to a specific plugin. e.g. ?plugin=fred

Parameters

Name

Position

Description

Type

uuid*

path

string

cmd*

path

string

plugin

query

string

Body*

body

map of strings to object

Responses

Code

Type

200

ActionPostResponse

400

ErrorResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /alerts/{uuid}/params

List alert params Alert

  • Description: List Alert parms for a Alert specified by {uuid}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

AlertParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /alerts/{uuid}/params

  • Description: Sets parameters for a alert specified by {uuid}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

uuid*

path

string

Body*

body

map of strings to object

Responses

Code

Type

200

AlertParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

PATCH /alerts/{uuid}/params

  • Description: Update params for Alert {uuid} with the passed-in patch

Parameters

Name

Position

Description

Type

Body*

body

Patch

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

AlertParamsResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

GET /alerts/{uuid}/params/{key}

Get a single alert parameter

  • Description: Get a single parameter {key} for a Alert specified by {uuid}

Parameters

Name

Position

Description

Type

decode

query

string

uuid*

path

string

key*

path

string

Responses

Code

Type

200

AlertParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

POST /alerts/{uuid}/params/{key}

  • Description: Set as single Parameter {key} for a alert specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Body*

body

Raw Octet Stream

Responses

Code

Type

200

AlertParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

409

ErrorResponse

DELETE /alerts/{uuid}/params/{key}

Delete a single alert parameter

  • Description: Delete a single parameter {key} for a Alert specified by {uuid}

Parameters

Name

Position

Description

Type

uuid*

path

string

key*

path

string

Responses

Code

Type

200

AlertParamResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

GET /alerts/{uuid}/pubkey

Get the public key for secure params on a alert

  • Description: Get the public key for a Alert specified by {uuid}

Parameters

Name

Position

Description

Type

decode

query

string

params

query

string

uuid*

path

string

Responses

Code

Type

200

PubKeyResponse

401

NoContentResponse

403

NoContentResponse

404

ErrorResponse

500

ErrorResponse

18.11.2. Responses

18.11.2.1. ActionPostResponse

ActionPostResponse

  • Description: ActionPostResponse return on a successful POST of action

Parameters

Name

Position

Description

Type

Payload

Body

Raw Octet Stream

18.11.2.2. ActionResponse

ActionResponse

  • Description: ActionResponse return on a successful GET of a single Action

Parameters

Name

Position

Description

Type

Payload

Body

AvailableAction

18.11.2.3. ActionsResponse

ActionsResponse

  • Description: ActionsResponse return on a successful GET of all Actions

Parameters

Name