System Settings

A user of the system is allowed to access the Atlas System in some form or fashion. You can create users without SSH or SMB access, but with UI access, and vice-versa.

Basic Operations

Basic operations of List, Get, and Update are available for system settings

List All Settings

Returns a basic list of system settings and their current values

Request Object

+ URL
  /api/v2/system/settings

+ Method
  GET

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {}

Response Object

Sending this should return a valid response, an object with each availble setting and their respective values.

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "permission_hinting": "enabled",
    "ui_theme": "dark",
    "inactivity_period": "600000",
    "inactivity_timeout": "disabled",
    "dashboard_availability": "enabled"
  }

Get A Specific Setting

Returns a specific system setting and its current value

Request Object

+ URL
  /api/v2/system/settings/$SETTING_NAME/details

+ Method
  GET

+ Parameters
setting name (string, required, URL param) - the name of the setting you'd like to get details about

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {}

Response Object

Sending this should return a valid response, an object with the requested setting and its value.

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "permission_hinting": "enabled",
  }

Update Setting

Updates a setting of your choosing. Settings that are either 'enabled' or 'disabled' must be provided with strings specificying them as such. For a complete list of the settings available to you, please refer to the response of the List All Settings route.

Request Object

+ URL
  /api/v2/system/settings/$SETTING_NAME/update

+ Method
  POST

+ Parameters
  setting name (string, required, URL param) - the name of the setting you'd like to update
  value (string, required, Body) - The new value to give this setting

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {
    "value": "enabled"
  }

Response Object

Sending this should return a valid response, an object with the updated setting and its new value.

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "inactivity_timeout": "enabled"
  }

Lockout Settings

Lockout settings are a category all their own. System lockout applies to both UI and CLI access. When enabled, consecutive failed login attempts can trigger user lockout according the system’s configuration. Use the following routes to enable/disable lockout, set the lockout period, and set the number of consecutive failed logins that will result in a user lockout.

Basic Operations

Basic operations of List, Get, and Update are available for system settings

List All Settings

Returns a basic list of system settings and their current values

Request Object

+ URL
  /api/v2/system/settings/lockout

+ Method
  GET

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {}

Response Object

Sending this should return a valid response, an object with each availble setting and their respective values.

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "lockout_enabled": false,
    "lockout_attempts": "5",
    "lockout_period": "300"
  }

Update Lockout Setting

Updates a lockout setting of your choosing. In order to enable/disable lockout altogether, please use those respective routes.

Request Object

+ URL
  /api/v2/system/settings/lockout/$SETTING_NAME/update

+ Method
  POST

+ Parameters
  setting name (string, required, URL param) - the name of the lockout setting you'd like to update
  value (string, required, Body) - The new value to give this lockout setting

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {
    "value": "10"
  }

Response Object

A successful request should return an object with the updated lockout setting and its new value.

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "lockout_attempts": "5"
  }

Enable Lockout

Enables lockout for this OpenDrives system

Request Object

+ URL
  /api/v2/system/settings/lockout/enable

+ Method
  POST

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {}

Response Object

Sending this should return a valid response, an object with the updated "lockout_enabled" setting and its new value as "true".

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "lockout_enabled": true
  }

Disable Lockout

Disables lockout for this OpenDrives system

Request Object

+ URL
  /api/v2/system/settings/lockout/disable

+ Method
  POST

+ Headers
  Content-Type: application/json
  token: ThisIsNotARealTokenGenerateYourOwnToken

+ Body
  {}

Response Object

Sending this should return a valid response, an object with the updated "lockout_enabled" setting and its new value as "false".

+ Headers
  X-Powered-By: OpenDrives
  Access-Control-Allow-Origin: *
  Content-Type: application/json; charset=utf-8

+ Body
  {
    "lockout_enabled": false
  }