Skip to main content

Datasance PoT-ioFog Controller (1.0.0)

Download OpenAPI specification:Download

Controller

Manage your controller

Returns service health status

Responses

Response samples

Content type
application/json
{
  • "status": "ok",
  • "timestamp": 0
}

Gets ioFog types list

Responses

Response samples

Content type
application/json
{
  • "fogTypes": [
    ]
}

ioFog

Manage your agents

Returns list of ioFog nodes

Authorizations:
userToken
Request Body schema: application/json
Array
key
string
value
string
condition
string

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "fogs": [
    ]
}

Creates a new ioFog node

Authorizations:
userToken
Request Body schema: application/json
required
name
string
location
string
latitude
number
longitude
number
description
string
dockerUrl
string
Default: "unix:///var/run/docker.sock"
diskLimit
number
Default: 50
diskDirectory
string
Default: "/var/lib/iofog"
memoryLimit
number <MB>
Default: 4096
cpuLimit
number <percent>
Default: 80
logLimit
number <GB>
Default: 10
logDirectory
string
Default: "/var/log/iofog"
logFileCount
number
Default: 10
statusFrequency
number <seconds>
Default: 10
changeFrequency
number <seconds>
Default: 20
deviceScanFrequency
number <seconds>
Default: 20
bluetoothEnabled
boolean
Default: false
watchdogEnabled
boolean
Default: true
abstractedHardwareEnabled
boolean
Default: false
fogType
number
dockerPruningFrequency
number
availableDiskThreshold
number
logLevel
string
Default: "info"
isSystem
boolean
routerMode
string
Default: "edge"
Enum: "none" "edge" "interior"
messagingPort
number
interRouterPort
number
edgeRouterPort
number
host
string
tags
Array of strings
upstreamRouters
Array of strings
networkRouter
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "location": "string",
  • "latitude": 0,
  • "longitude": 0,
  • "description": "string",
  • "dockerUrl": "unix:///var/run/docker.sock",
  • "diskLimit": 50,
  • "diskDirectory": "/var/lib/iofog",
  • "memoryLimit": 4096,
  • "cpuLimit": 80,
  • "logLimit": 10,
  • "logDirectory": "/var/log/iofog",
  • "logFileCount": 10,
  • "statusFrequency": 10,
  • "changeFrequency": 20,
  • "deviceScanFrequency": 20,
  • "bluetoothEnabled": false,
  • "watchdogEnabled": true,
  • "abstractedHardwareEnabled": false,
  • "fogType": 0,
  • "dockerPruningFrequency": 0,
  • "availableDiskThreshold": 0,
  • "logLevel": "info",
  • "isSystem": true,
  • "routerMode": "none",
  • "messagingPort": 0,
  • "interRouterPort": 0,
  • "edgeRouterPort": 0,
  • "host": "string",
  • "tags": [
    ],
  • "upstreamRouters": [
    ],
  • "networkRouter": "string"
}

Response samples

Content type
application/json
{
  • "id": "string"
}

Updates existing ioFog node

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Request Body schema: application/json
required
name
string
location
string
latitude
number
longitude
number
description
string
dockerUrl
string
Default: "unix:///var/run/docker.sock"
diskLimit
number
Default: 50
diskDirectory
string
Default: "/var/lib/iofog"
memoryLimit
number <MB>
Default: 4096
cpuLimit
number <percent>
Default: 80
logLimit
number <GB>
Default: 10
logDirectory
string
Default: "/var/log/iofog"
logFileCount
number
Default: 10
statusFrequency
number <seconds>
Default: 10
changeFrequency
number <seconds>
Default: 20
deviceScanFrequency
number <seconds>
Default: 20
bluetoothEnabled
boolean
Default: false
watchdogEnabled
boolean
Default: true
abstractedHardwareEnabled
boolean
Default: false
fogType
number
dockerPruningFrequency
number
availableDiskThreshold
number
logLevel
string
Default: "info"
isSystem
boolean
routerMode
string
Default: "edge"
Enum: "none" "edge" "interior"
messagingPort
number
interRouterPort
number
edgeRouterPort
number
host
string
tags
Array of strings
upstreamRouters
Array of strings
networkRouter
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "location": "string",
  • "latitude": 0,
  • "longitude": 0,
  • "description": "string",
  • "dockerUrl": "unix:///var/run/docker.sock",
  • "diskLimit": 50,
  • "diskDirectory": "/var/lib/iofog",
  • "memoryLimit": 4096,
  • "cpuLimit": 80,
  • "logLimit": 10,
  • "logDirectory": "/var/log/iofog",
  • "logFileCount": 10,
  • "statusFrequency": 10,
  • "changeFrequency": 20,
  • "deviceScanFrequency": 20,
  • "bluetoothEnabled": false,
  • "watchdogEnabled": true,
  • "abstractedHardwareEnabled": false,
  • "fogType": 0,
  • "dockerPruningFrequency": 0,
  • "availableDiskThreshold": 0,
  • "logLevel": "info",
  • "isSystem": true,
  • "routerMode": "none",
  • "messagingPort": 0,
  • "interRouterPort": 0,
  • "edgeRouterPort": 0,
  • "host": "string",
  • "tags": [
    ],
  • "upstreamRouters": [
    ],
  • "networkRouter": "string"
}

Deletes an ioFog node

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Gets ioFog node info

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Response samples

Content type
application/json
{
  • "lastActive": 0,
  • "daemonOperatingDuration": 0,
  • "daemonLastStart": 0,
  • "repositoryCount": 0,
  • "systemTime": 0,
  • "lastStatusTime": 0,
  • "processedMessages": 0,
  • "lastCommandTime": 0,
  • "logFileCount": 0,
  • "uuid": "string",
  • "name": "string",
  • "location": "string",
  • "gpsMode": "string",
  • "latitude": 0,
  • "longitude": 0,
  • "description": "string",
  • "daemonStatus": "string",
  • "memoryUsage": 0,
  • "diskUsage": 0,
  • "cpuUsage": 0,
  • "memoryViolation": true,
  • "diskViolation": true,
  • "cpuViolation": true,
  • "systemTotalCpu": 0,
  • "catalogItemStatus": "string",
  • "repositoryStatus": "string",
  • "ipAddress": "string",
  • "ipAddressExternal": "string",
  • "catalogItemMessageCounts": 0,
  • "messageSpeed": 0,
  • "networkInterface": "string",
  • "dockerUrl": "string",
  • "diskLimit": 0,
  • "diskDirectory": "string",
  • "memoryLimit": 0,
  • "cpuLimit": 0,
  • "logLimit": 0,
  • "logDirectory": "string",
  • "bluetoothEnabled": true,
  • "abstractedHardwareEnabled": true,
  • "version": "string",
  • "isReadyToUpgrade": true,
  • "isReadyToRollback": true,
  • "statusFrequency": 0,
  • "changeFrequency": 0,
  • "deviceScanFrequency": 0,
  • "tunnel": "string",
  • "watchdogEnabled": true,
  • "dockerPruningFrequency": 0,
  • "availableDiskThreshold": 0,
  • "logLevel": "string",
  • "isSystem": true,
  • "routerId": 0,
  • "createAt": 0,
  • "updatedAt": 0,
  • "fogTypeId": 0,
  • "routerMode": "none",
  • "messagingPort": 0,
  • "upstreamRouters": [
    ]
}

Generates provisioning key for an ioFog node

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Response samples

Content type
application/json
{
  • "key": "string",
  • "expirationTime": 0
}

Set change version command

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

versionCommand
required
string
Enum: "upgrade" "rollback"

change version command

Responses

remote reboot fog agent

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

prune reboot fog agent

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Retrieves HAL hardware info

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Response samples

Content type
application/json
{
  • "info": "string"
}

Retrieves HAL USB info

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Response samples

Content type
application/json
{
  • "info": "string"
}

Retrieves HAL USB info

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "info": "string"
}

Application

Manage your applications

Lists all applications

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "applications": [
    ]
}

Lists all system applications

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "applications": [
    ]
}

Deletes a system application

Authorizations:
userToken
path Parameters
name
required
string

Application name

Responses

Creates an application using a YAML file

Authorizations:
userToken
Request Body schema: application/yaml
required
application
string <binary>

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string"
}

Updates an application metadata

Authorizations:
userToken
path Parameters
name
required
string

Application name

Request Body schema: application/json
required
name
string
description
string
isActivated
boolean

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "isActivated": true
}

Deletes an application

Authorizations:
userToken
path Parameters
name
required
string

Application name

Responses

Gets an application details

Authorizations:
userToken
path Parameters
name
required
string

Application name

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "description": "string",
  • "isActivated": true,
  • "microservices": [
    ],
  • "routes": [
    ]
}

Updates an application using a YAML file

Authorizations:
userToken
path Parameters
name
required
string

Application name

Request Body schema: application/yaml
required
application
string <binary>

Responses

Application Template

Manage your application templates

Lists all application templates

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "applicationTemplates": [
    ]
}

Creates an application template using a YAML file

Authorizations:
userToken
Request Body schema: application/yaml
required
application
string <binary>

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string"
}

Patches an application template

Authorizations:
userToken
path Parameters
name
required
string

Application template name

Request Body schema: application/json
required
description
number
name
string

Responses

Request samples

Content type
application/json
{
  • "description": 0,
  • "name": "string"
}

Deletes an application template

Authorizations:
userToken
path Parameters
name
required
string

Application template name

Responses

Gets an application template

Authorizations:
userToken
path Parameters
name
required
string

Application template name

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "description": "string",
  • "application": {
    }
}

Updates or creates an application template

Authorizations:
userToken
path Parameters
name
required
string

Application template name

Request Body schema: application/yaml
required
template
string <binary>

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string"
}

Catalog

Manage your catalog

Gets microservices catalog

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "catalogItems": [
    ]
}

Creates a new microservice catalog item

Authorizations:
userToken
Request Body schema: application/json
required

Microservice Catalog Item Info

name
string
description
string
category
string
Array of objects (MicroserviceContainerImages)
publisher
string
diskRequired
number
ramRequired
number
picture
string
isPublic
boolean
registryId
number
object (InfoTypeResponse)
object (InfoTypeResponse)
configExample
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "category": "string",
  • "images": [
    ],
  • "publisher": "string",
  • "diskRequired": 0,
  • "ramRequired": 0,
  • "picture": "string",
  • "isPublic": true,
  • "registryId": 0,
  • "inputType": {
    },
  • "outputType": {
    },
  • "configExample": "string"
}

Response samples

Content type
application/json
{
  • "id": "string"
}

Gets microservice catalog item info

Authorizations:
userToken
path Parameters
id
required
string

Catalog Item Id

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "description": "string",
  • "category": "string",
  • "publisher": "string",
  • "diskRequired": 0,
  • "ramRequired": 0,
  • "picture": "string",
  • "isPublic": true,
  • "registryId": 0,
  • "inputType": {
    },
  • "outputType": {
    },
  • "configExample": "string",
  • "images": [
    ]
}

Updates a microservice catalog item

Authorizations:
userToken
path Parameters
id
required
string

Catalog Item Id

Request Body schema: application/json
required

Microservice Catalog Item Info

name
string
description
string
category
string
Array of objects (MicroserviceContainerImages)
publisher
string
diskRequired
number
ramRequired
number
picture
string
isPublic
boolean
registryId
number
object (InfoTypeResponse)
object (InfoTypeResponse)
configExample
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "category": "string",
  • "images": [
    ],
  • "publisher": "string",
  • "diskRequired": 0,
  • "ramRequired": 0,
  • "picture": "string",
  • "isPublic": true,
  • "registryId": 0,
  • "inputType": {
    },
  • "outputType": {
    },
  • "configExample": "string"
}

Deletes a microservice catalog item

Authorizations:
userToken
path Parameters
id
required
string

Catalog Item Id

Responses

Registries

Manage your registries

Creates new registry

Authorizations:
userToken
Request Body schema: application/json
url
string
isPublic
boolean
username
string
password
string
email
string
requiresCert
boolean
certificate
string

Responses

Request samples

Content type
application/json
{
  • "url": "string",
  • "isPublic": true,
  • "username": "string",
  • "password": "string",
  • "email": "string",
  • "requiresCert": true,
  • "certificate": "string"
}

Gets list of registries

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "registries": [
    ]
}

Deletes a registry

Authorizations:
userToken
path Parameters
id
required
string

Registry id

Responses

Updates a registry

Authorizations:
userToken
path Parameters
id
required
string

Registry id

Request Body schema: application/json
required
url
string
isPublic
boolean
username
string
password
string
email
string
requiresCert
boolean
certificate
string

Responses

Request samples

Content type
application/json
{
  • "url": "string",
  • "isPublic": true,
  • "username": "string",
  • "password": "string",
  • "email": "string",
  • "requiresCert": true,
  • "certificate": "string"
}

Microservices

Manage your microservices

Gets list of microservices

Authorizations:
userToken
query Parameters
flowId
integer
Deprecated

Flow Id

application
string

Application name

Responses

Response samples

Content type
application/json
{
  • "microservices": [
    ]
}

Creates a new microservice in an Application

Authorizations:
userToken
Request Body schema: application/yaml
required
microsoervice
string <binary>

Responses

Response samples

Content type
application/json
{
  • "uuid": "string"
}

Gets a microservice info

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Responses

Response samples

Content type
application/json
{
  • "uuid": "string",
  • "name": "string",
  • "config": "string",
  • "rootHostAccess": true,
  • "logLimit": 0,
  • "images": [
    ],
  • "iofogUuid": "string",
  • "envs": [
    ],
  • "runAsUser": "string",
  • "platform": "string",
  • "runtime": "string",
  • "cdiDevices": [
    ],
  • "cmd": [
    ],
  • "volumeMappings": [
    ],
  • "ports": [
    ],
  • "status": {
    }
}

Deletes a microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Responses

Updates a microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Updates a system microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Updates a microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Request Body schema: application/yaml
required
microservice
string <binary>

Responses

Creates a port mapping for microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Request Body schema: application/json
required

information about port mapping

internal
required
number
external
required
number
protocol
string
Enum: "tcp" "udp"
proxy
boolean

Responses

Request samples

Content type
application/json
{
  • "internal": 0,
  • "external": 0,
  • "protocol": "tcp",
  • "proxy": true
}

Response samples

Content type
application/json
{
  • "publicIp": "string",
  • "publicPort": 0
}

Get a port mapping list for microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Responses

Response samples

Content type
application/json
{
  • "ports": [
    ]
}

Creates a port mapping for system microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Request Body schema: application/json
required

information about port mapping

internal
required
number
external
required
number
protocol
string
Enum: "tcp" "udp"
proxy
boolean

Responses

Request samples

Content type
application/json
{
  • "internal": 0,
  • "external": 0,
  • "protocol": "tcp",
  • "proxy": true
}

Response samples

Content type
application/json
{
  • "publicIp": "string",
  • "publicPort": 0
}

Deletes a port mapping for microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

internalPort
required
string

Internal Port

Responses

Deletes a port mapping for system microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

internalPort
required
string

Internal Port

Responses

Creates a volume mapping for microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Request Body schema: application/json
required

information about volume mapping

hostDestination
string
containerDestination
string
accessMode
string

Responses

Request samples

Content type
application/json
{
  • "hostDestination": "/var/dest",
  • "containerDestination": "/var/dest",
  • "accessMode": "rw"
}

Response samples

Content type
application/json
{
  • "id": 0
}

Get a volume mapping list for microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Responses

Response samples

Content type
application/json
{
  • "volumeMappings": [
    ]
}

Creates a volume mapping for system microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

Request Body schema: application/json
required

information about volume mapping

hostDestination
string
containerDestination
string
accessMode
string

Responses

Request samples

Content type
application/json
{
  • "hostDestination": "/var/dest",
  • "containerDestination": "/var/dest",
  • "accessMode": "rw"
}

Response samples

Content type
application/json
{
  • "id": 0
}

Deletes a volume mapping for microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

id
required
string

Volume id

Responses

Deletes a volume mapping for system microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice Uuid

id
required
string

Volume id

Responses

Routing

Manage your routes

Get routes

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "routes": [
    ]
}

Creates a new route

Authorizations:
userToken
Request Body schema: application/json
required

Route Info

name
required
string
sourceMicroserviceUuid
required
string
destMicroserviceUuid
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "sourceMicroserviceUuid": "string",
  • "destMicroserviceUuid": "string"
}

Response samples

Content type
application/json
{
  • "id": "string"
}

Gets a route info

Authorizations:
userToken
path Parameters
name
required
string

Route name

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "sourceMicroserviceUuid": "string",
  • "destMicroserviceUuid": "string"
}

Updates a route

Authorizations:
userToken
path Parameters
name
required
string

Route name

Request Body schema: application/json
required

Route Info

name
string
sourceMicroserviceUuid
string
destMicroserviceUuid
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "sourceMicroserviceUuid": "string",
  • "destMicroserviceUuid": "string"
}

Deletes a route

Authorizations:
userToken
path Parameters
name
required
string

Route name

Responses

Edge Resource

Manage your Edge Resources

Get Edge Resources

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "edgeResources": [
    ]
}

Get Specific Edge Resource

Authorizations:
userToken
path Parameters
name
required
string

Edge Resource name

version
required
string

Edge Resource version

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "description": "string",
  • "version": "string",
  • "interfaceProtocol": "string",
  • "display": {
    },
  • "interface": {
    },
  • "custom": { }
}

Update/Create Specific Edge Resource

Authorizations:
userToken
path Parameters
name
required
string

Edge Resource name

version
required
string

Edge Resource version

Request Body schema: application/json
required

Updated profile data

name
string
description
string
version
string
interfaceProtocol
string
object (EdgeResourceDisplay)
object (EdgeResourceHTTPInterface)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "version": "string",
  • "interfaceProtocol": "string",
  • "display": {
    },
  • "interface": {
    }
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "description": "string",
  • "version": "string",
  • "interfaceProtocol": "string",
  • "display": {
    },
  • "interface": {
    },
  • "custom": { }
}

Deletes an Edge Resource

Authorizations:
userToken
path Parameters
name
required
string

Edge Resource name

version
required
string

Edge Resource version

Responses

Get Specific Edge Resource versions

Authorizations:
userToken
path Parameters
name
required
string

Edge Resource name

Responses

Response samples

Content type
application/json
{
  • "edgeResources": [
    ]
}

Create Specific Edge Resource

Authorizations:
userToken
Request Body schema: application/json
required

Updated profile data

name
string
description
string
version
string
interfaceProtocol
string
object (EdgeResourceDisplay)
object (EdgeResourceHTTPInterface)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "version": "string",
  • "interfaceProtocol": "string",
  • "display": {
    },
  • "interface": {
    }
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "description": "string",
  • "version": "string",
  • "interfaceProtocol": "string",
  • "display": {
    },
  • "interface": {
    },
  • "custom": { }
}

Diagnostics

Diagnostic your microservices

Send request to create image snapshot

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice UUID

Responses

Response samples

Content type
application/json
{
  • "id": "string"
}

Download image snapshot

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice UUID

Responses

Enables Microservice Strace Option

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice UUID

Request Body schema: application/json
required

Strace info to enable or disable feature

enable
boolean

Responses

Request samples

Content type
application/json
{
  • "enable": true
}

Gets Strace Data for Microservice

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice UUID

query Parameters
format
required
string
Enum: "file" "string"

Responses

Response samples

Content type
application/json
{
  • "data": "string"
}

Posts Microservice Strace file to FTP

Authorizations:
userToken
path Parameters
uuid
required
string

Microservice UUID

Request Body schema: application/json
required
ftpHost
string
ftpPort
number
ftpUser
string
ftpPass
string
ftpDestDir
string

Responses

Request samples

Content type
application/json
{
  • "ftpHost": "string",
  • "ftpPort": 0,
  • "ftpUser": "string",
  • "ftpPass": "string",
  • "ftpDestDir": "string"
}

Tunnel

Manage ssh tunnels

Opens/closes ssh tunnel

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Request Body schema: application/json
required
action
string
Enum: "open" "close"

Responses

Request samples

Content type
application/json
{
  • "action": "open"
}

Gets current info about ioFog node ssh tunnel status

Authorizations:
userToken
path Parameters
uuid
required
string

ioFog node id

Responses

Response samples

Content type
application/json
{
  • "username": "string",
  • "host": "string",
  • "remotePort": 0,
  • "localPort": 0,
  • "status": "string"
}

Agent

Used by your agents to communicate with your controller

Provision agent with an ioFog node

Request Body schema: application/json
required
type
required
number
Enum: 1 2

Architecture

  • '1': x86
  • '2': arm
key
required
string

provisioning key

Responses

Request samples

Content type
application/json
{
  • "type": 1,
  • "key": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "token": "string"
}

Deprovision agent

Request Body schema: application/json
required
microserviceUuids
Array of strings

Responses

Request samples

Content type
application/json
{
  • "microserviceUuids": [
    ]
}

Get an ioFog node configuration

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "networkInterface": "string",
  • "dockerUrl": "string",
  • "diskLimit": 0,
  • "diskDirectory": "string",
  • "memoryLimit": 0,
  • "cpuLimit": 0,
  • "logLimit": 0,
  • "logDirectory": "string",
  • "logFileCount": 0,
  • "statusFrequency": 0,
  • "changeFrequency": 0,
  • "deviceScanFrequency": 0,
  • "watchdogEnabled": true,
  • "latitude": 0,
  • "longitude": 0,
  • "logLevel": "string",
  • "availableDiskThreshold": 0,
  • "dockerPruningFrequency": 0,
  • "routerHost": "string",
  • "routerPort": 0
}

Updates an ioFog node configuration

Authorizations:
agentToken
Request Body schema: application/json
required
networkInterface
string
dockerUrl
string
diskLimit
number
diskDirectory
string
memoryLimit
number
cpuLimit
number
logLimit
number
logDirectory
string
logFileCount
number
statusFrequency
number
changeFrequency
number
deviceScanFrequency
number
watchdogEnabled
boolean
latitude
number
longitude
number
gpsMode
string
logLevel
string
availableDiskThreshold
number
dockerPruningFrequency
number

Responses

Request samples

Content type
application/json
{
  • "networkInterface": "string",
  • "dockerUrl": "string",
  • "diskLimit": 0,
  • "diskDirectory": "string",
  • "memoryLimit": 0,
  • "cpuLimit": 0,
  • "logLimit": 0,
  • "logDirectory": "string",
  • "logFileCount": 0,
  • "statusFrequency": 0,
  • "changeFrequency": 0,
  • "deviceScanFrequency": 0,
  • "watchdogEnabled": true,
  • "latitude": 0,
  • "longitude": 0,
  • "gpsMode": "string",
  • "logLevel": "string",
  • "availableDiskThreshold": 0,
  • "dockerPruningFrequency": 0
}

Gets ioFog node changes

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "config": true,
  • "version": true,
  • "reboot": true,
  • "deleteNode": true,
  • "microservicesList": true,
  • "microservicesConfig": true,
  • "routing": true,
  • "registries": true,
  • "tunnel": true,
  • "diagnostics": true,
  • "isImageSnapshot": true,
  • "prune": true,
  • "routerChanged": true
}

Resets ioFog node changes list

Authorizations:
agentToken

Responses

Posts agent status to ioFog node

Authorizations:
agentToken
Request Body schema: application/json
required
daemonStatus
string
daemonOperatingDuration
number
daemonLastStart
number
memoryUsage
number
diskUsage
number
cpuUsage
number
memoryViolation
boolean
diskViolation
boolean
cpuViolation
boolean
systemAvailableDisk
integer
systemAvailableMemory
integer
systemTotalCpu
number
microserviceStatus
string
repositoryCount
number
repositoryStatus
string
systemTime
number
lastStatusTime
number
ipAddress
string
processedMessages
number
microserviceMessageCounts
string
messageSpeed
number
lastCommandTime
number
tunnelStatus
string
version
string
isReadyToUpgrade
boolean
isReadyToRollback
boolean

Responses

Request samples

Content type
application/json
{
  • "daemonStatus": "string",
  • "daemonOperatingDuration": 0,
  • "daemonLastStart": 0,
  • "memoryUsage": 0,
  • "diskUsage": 0,
  • "cpuUsage": 0,
  • "memoryViolation": true,
  • "diskViolation": true,
  • "cpuViolation": true,
  • "systemAvailableDisk": 0,
  • "systemAvailableMemory": 0,
  • "systemTotalCpu": 0,
  • "microserviceStatus": "string",
  • "repositoryCount": 0,
  • "repositoryStatus": "string",
  • "systemTime": 0,
  • "lastStatusTime": 0,
  • "ipAddress": "string",
  • "processedMessages": 0,
  • "microserviceMessageCounts": "string",
  • "messageSpeed": 0,
  • "lastCommandTime": 0,
  • "tunnelStatus": "string",
  • "version": "string",
  • "isReadyToUpgrade": true,
  • "isReadyToRollback": true
}

Gets microservices running on an ioFog node

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "microservices": [
    ]
}

Gets microservices running on an ioFog node

Authorizations:
agentToken
path Parameters
microserviceUuid
required
string

Microservice UUID

Responses

Response samples

Content type
application/json
{
  • "uuid": "string",
  • "imageId": "string",
  • "config": "string",
  • "rebuild": true,
  • "rootHostAccess": true,
  • "logSize": 0,
  • "registryId": 0,
  • "portMappings": [
    ],
  • "volumeMappings": [
    ],
  • "imageSnapshot": "string",
  • "delete": true,
  • "deleteWithCleanUp": true,
  • "env": [
    ],
  • "runAsUser": "string",
  • "platform": "string",
  • "runtime": "string",
  • "cdiDevices": [
    ],
  • "cmd": [
    ],
  • "idConsumer": true
}

Gets list of Docker registries

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "registries": [
    ]
}

Get an ioFog node tunnel configuration

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "username": "string",
  • "password": "string",
  • "host": "string",
  • "remotePort": 0,
  • "localPort": 0,
  • "rsaKey": "string",
  • "closed": true
}

Get an ioFog node strace info

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "straceValues": [
    ]
}

Posts agent strace to ioFog node

Authorizations:
agentToken
Request Body schema: application/json
required
Array of objects (MicroserviceStraceBuffer)
Array
microserviceUuid
string
buffer
string

Responses

Request samples

Content type
application/json
{
  • "straceData": [
    ]
}

Get change version command

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "versionCommand": "string",
  • "provisionKey": "string",
  • "expirationTime": "string"
}

Updates HAL hardware info

Authorizations:
agentToken
Request Body schema: application/json
required
info
required
string

Responses

Request samples

Content type
application/json
{
  • "info": "string"
}

Updates HAL USB info

Authorizations:
agentToken
Request Body schema: application/json
required
info
required
string

Responses

Request samples

Content type
application/json
{
  • "info": "string"
}

Deletes an ioFog node

Authorizations:
agentToken

Responses

Get image snapshot info

Authorizations:
agentToken

Responses

Response samples

Content type
application/json
{
  • "uuid": "string"
}

Put image snapshot info on controller

Authorizations:
agentToken
Request Body schema: application/json
required
upstream
required
string

Responses

Request samples

Content type
application/json
{
  • "upstream": "string"
}

Post tracking info

Authorizations:
agentToken
Request Body schema: application/json
required
Array
uuid
required
string
sourceType
string
timestamp
number
type
string
data
object

Responses

Request samples

Content type
application/json
[
  • {
    }
]

User

Manage your users

Login

Request Body schema: application/json
required
email
required
string
password
required
string
totp
required
string

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "password": "string",
  • "totp": "string"
}

Response samples

Content type
application/json
{
  • "accessToken": "string"
}

Logout

Authorizations:
userToken

Responses

Get current user profile data

Authorizations:
userToken

Responses

Response samples

Content type
application/json
{
  • "userinfo": [
    ]
}