Graphql API for managing IIOT containers at the edge
Table of Contents
Read only queries
Field | Argument | Type | Description |
---|---|---|---|
info | String! |
Returns some information about this application. |
|
user | User |
Gets user based on authentication header and returns relevant data |
|
users | [User!]! |
Gets list of users |
|
osUsers | [OSUser!]! |
Gets list of OS Users |
|
containers | [Container!]! |
Returns a list of containers and their properties |
|
operations | [Operation!]! |
List of current operations |
|
profiles | [Profile!]! |
Returns a list of profiles and their properties |
|
networkInterfaces | [NetworkInterface!]! |
List of network interfaces |
|
networkInterfaceConfigs | [NetworkInterfaceConfig!]! |
List of network interface configurations |
Write queries
Field | Argument | Type | Description |
---|---|---|---|
login | AuthPayload |
If a valid username and password is provided, this will return an auth payload with a java web token to be used for future requests and information about the user that successfully logged in. |
|
username | String! | ||
password | String! | ||
changeUsername | User |
Change username |
|
newUsername | String! | ||
changePassword | User |
Allows the user to change their password |
|
newPassword | String! | ||
newPasswordConfirm | String! | ||
createUser | User |
Create an User |
|
username | String! | ||
password | String! | ||
passwordConfirm | String! | ||
deleteUser | User |
Delete an User |
|
id | ID! | ||
createOSUser | OSUser |
Create an OS User |
|
username | String! | ||
password | String! | ||
passwordConfirm | String! | ||
deleteOSUser | OSUser |
Delete an OS User |
|
username | String! | ||
addAuthorizedKey | AuthorizedKey |
"Add an authorized SSH key to a user |
|
username | String! | ||
key | String! | ||
deleteAuthorizedKey | AuthorizedKey |
"Delete an authorized SSH key from a user |
|
username | String! | ||
line | Int! | ||
createContainer | Container |
create a container |
|
containerName | String! | ||
profile | String! | ||
deleteContainer | Container |
delete a container |
|
containerName | String! | ||
startContainer | Container |
start a container |
|
containerName | String! | ||
stopContainer | Container |
stop a container |
|
containerName | String! | ||
restartContainer | Container |
restart a container |
|
containerName | String! | ||
setDescription | Container |
set description of container |
|
containerName | String! | ||
description | String! | ||
getCloudInitOutputLog | String! |
get the cloud init output log for a container |
|
containerName | String! | ||
setInterfaceConfig | NetworkInterface |
Set network interface configuration |
|
name | String! | ||
dhcp | Boolean! | ||
addresses | [String!]! | ||
gateway | String |
The data returned after a successful login attempt.
Field | Argument | Type | Description |
---|---|---|---|
token | String |
Bearer token to be added to the Authorization header for future requests. |
|
user | User |
User that successfully logged in. |
An authorized ssh key. Used to allow users to access a container or the root operating system.
Field | Argument | Type | Description |
---|---|---|---|
line | Int! |
line number in the authorized keys file |
|
key | String! |
Configuration Data
Field | Argument | Type | Description |
---|---|---|---|
securityNesting | Boolean | ||
userUserData | String |
Container data.
Field | Argument | Type | Description |
---|---|---|---|
name | String! | ||
network | [ContainerNetwork!]! | ||
status | String! | ||
status_code | Int! | ||
architecture | String! | ||
ephemeral | Boolean! | ||
profiles | [Profile!]! | ||
stateful | Boolean! | ||
description | String! | ||
created_at | Datetime! | ||
last_used_at | Datetime! | ||
location | String! | ||
type | String! | ||
cloudInitComplete | Boolean | ||
application | String! |
Container Network Info.
Field | Argument | Type | Description |
---|---|---|---|
name | String! | ||
addresses | [ContainerNetworkAddress!]! | ||
bytes_received | Int! | ||
bytes_sent | Int! | ||
packets_received | Int! | ||
packets_sent | Int! | ||
macAddress | String! | ||
host_name | String | ||
mtu | Int! | ||
state | String! | ||
type | String! |
Container Network Address.
Field | Argument | Type | Description |
---|---|---|---|
family | String! | ||
address | String! | ||
netmask | String! | ||
scope | String! |
A device as defined within an LXD container.
Field | Argument | Type | Description |
---|---|---|---|
id | String! | ||
name | String | ||
type | String! |
Field | Argument | Type | Description |
---|---|---|---|
id | String | ||
name | String | ||
alias | String | ||
mtu | String | ||
state | String | ||
macAddress | String | ||
ipAddresses | [String!]! | ||
gateway | String |
Field | Argument | Type | Description |
---|---|---|---|
name | String | ||
dhcp4 | Boolean | ||
addresses | [String!] | ||
gateway4 | String |
Credentials used to log into the operating system (via ssh, for example).
Field | Argument | Type | Description |
---|---|---|---|
username | String! | ||
sshKey | String! | ||
authorizedKeys | [AuthorizedKey!]! |
Operation data.
Field | Argument | Type | Description |
---|---|---|---|
id | String! | ||
class | String! | ||
created_at | Datetime! | ||
updated_at | Datetime! | ||
status | String! | ||
status_code | Int! | ||
may_cancel | Boolean! | ||
err | String |
Profile data.
Field | Argument | Type | Description |
---|---|---|---|
name | String! | ||
description | String! | ||
config | Config! | ||
devices | [Device!]! |
Credentials used to identify who is logging into the gateway.
Field | Argument | Type | Description |
---|---|---|---|
id | ID! | ||
username | String! |
Value | Description |
---|---|
CONTAINER_ADMIN | |
USER_ADMIN | |
OS_USER_ADMIN | |
OS_NETWORK_ADMIN |
The Boolean
scalar type represents true
or false
.
The ID
scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4"
) or integer (such as 4
) input value will be accepted as an ID.
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
The String
scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.