Apps

Query installed Apps

GEThttp://localhost/v2/apps
Response

Success

Body
appKey*app_key (object)
status*app_status (enum)
not installedmanifest downloadedtoken acquiredimage downloadedinstalledremovedpurgedorphanedunknown
desired*app_status (enum)
not installedmanifest downloadedtoken acquiredimage downloadedinstalledremovedpurgedorphanedunknown
installedSize*integer
Example: 10485760
multiInstance*boolean
editors*array of app_editor (object)
Request
const response = await fetch('http://localhost/v2/apps', {
    method: 'GET',
    headers: {},
});
const data = await response.json();
Response
[
  {
    "appKey": {
      "name": "tech.flecs.app-1",
      "version": "1.2.3.4-f1"
    },
    "status": "not installed",
    "desired": "not installed",
    "installedSize": 10485760,
    "multiInstance": false,
    "editors": [
      {
        "name": "text",
        "port": 0,
        "supportsReverseProxy": true
      }
    ]
  }
]

Query all versions or specific versions of an App

GEThttp://localhost/v2/apps/{app}
Path parameters
app*string

App to query

Query parameters
Response

Success

Body
appKey*app_key (object)
status*app_status (enum)
not installedmanifest downloadedtoken acquiredimage downloadedinstalledremovedpurgedorphanedunknown
desired*app_status (enum)
not installedmanifest downloadedtoken acquiredimage downloadedinstalledremovedpurgedorphanedunknown
installedSize*integer
Example: 10485760
multiInstance*boolean
editors*array of app_editor (object)
Request
const response = await fetch('http://localhost/v2/apps/{app}', {
    method: 'GET',
    headers: {},
});
const data = await response.json();
Response
[
  {
    "appKey": {
      "name": "tech.flecs.app-1",
      "version": "1.2.3.4-f1"
    },
    "status": "not installed",
    "desired": "not installed",
    "installedSize": 10485760,
    "multiInstance": false,
    "editors": [
      {
        "name": "text",
        "port": 0,
        "supportsReverseProxy": true
      }
    ]
  }
]

Uninstall one or all versions an App

DELETEhttp://localhost/v2/apps/{app}
Path parameters
app*string

App to uninstall

Query parameters
Response

Accepted

Body
jobId*integer
Example: 17
Request
const response = await fetch('http://localhost/v2/apps/{app}', {
    method: 'DELETE',
    headers: {},
});
const data = await response.json();
Response
{
  "jobId": 17
}

Install an App from the FLECS marketplace

POSThttp://localhost/v2/apps/install
Body
appKey*app_key (object)
Response

Accepted

Body
jobId*integer
Example: 17
Request
const response = await fetch('http://localhost/v2/apps/install', {
    method: 'POST',
    headers: {
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      "appKey": {
        "name": "tech.flecs.app-1",
        "version": "1.2.3.4-f1"
      }
    }),
});
const data = await response.json();
Response
{
  "jobId": 17
}

Sideload an App from its manifest

POSThttp://localhost/v2/apps/sideload
Body
manifest*string
Response

Accepted

Body
jobId*integer
Example: 17
Request
const response = await fetch('http://localhost/v2/apps/sideload', {
    method: 'POST',
    headers: {
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      "manifest": "text"
    }),
});
const data = await response.json();
Response
{
  "jobId": 17
}

Last updated