system

Summary

Resource Operation Description
System GET /api/app/v1/sys/(module) Get system/module information
  GET /api/app/v1/sys  
  PUT /api/app/v1/sys/(module)/control/(command) Service control
  PUT /api/app/v1/sys/control/(command)  
  DELETE /api/app/v1/sys/(module)/disable Disable module
  PUT /api/app/v1/sys/(module)/enable Enable module
  GET /api/app/v1/sys/(module)/status Get module status
  GET /api/app/v1/sys/(module)/version Get module version
  GET /api/app/v1/sys/feedback Feedback setting
  PUT /api/app/v1/sys/gui_url Update URL
  GET /api/app/v1/sys/hardware Hardware information
  PUT /api/app/v1/sys/hostname Set appliance hostname/description
  PUT /api/app/v1/sys/hostname/(module) Set module hostname
  GET /api/app/v1/sys/hostname/descr Get host description
  GET /api/app/v1/sys/integration Get integration mode
  GET /api/app/v1/sys/mode Get security mode
  GET /api/app/v1/sys/modules Module list
  GET /api/app/v1/sys/platform Get platform
  GET /api/app/v1/sys/platform_interfaces Get platform interfaces
  GET /api/app/v1/sys/policy_server_mode Get policy mode
  GET /api/app/v1/sys/proxy Get proxy config
  PUT /api/app/v1/sys/proxy Set/unset proxy config
  DELETE /api/app/v1/sys/proxy  
  GET /api/app/v1/sys/salt_status Salt status
  GET /api/app/v1/sys/status Get system status
  PUT /api/app/v1/sys/sysctl/(param) Cycle sysctl variables
  GET /api/app/v1/sys/sysctl/(param) Get sysctl value
Upgrade-Hotfix PUT /api/app/v1/sys/unlock  

Details

GET /api/app/v1/sys/(module)
GET /api/app/v1/sys

Get information about appliance or a module.

New in version 1.0.

Warning

This call for modules is not available on appliance version 8.3.

Parameters:
  • module (optional) – Module to get information about (wcg, wse, na, esg).
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get appliance information:

GET /api/app/v1/sys HTTP/1.1
Accept: text/html

Example 1 - Response: Get appliance information:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "appliance": {
    "NA": {
      "hostname": "mason67"
    },
    "WCG": {
      "hostname": "mason67-wcg"
    },
    "WSE": {
      "hostname": "mason67"
    },
    "appliance_version": "8.4.0",
    "hardware_platform": "Virtual",
    "hostname": "mason67",
    "mode": "Forcepoint Web Security",
    "policy_mode": "Filtering only (hosts only Filtering Service and Content Gateway)",
    "policy_source_ip": "10.206.6.68",
    "uptime": "5 days, 23 hours, 7 minutes"
  }
}

Example 2 - Request: Get proxy information:

GET /api/app/v1/sys/wcg HTTP/1.1
Accept: text/html

Example 2 - Response: Get proxy information:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "wcg": {}
}
PUT /api/app/v1/sys/(module)/control/(command)
PUT /api/app/v1/sys/control/(command)

Service control for appliance and modules.

New in version 1.0.

Warning

This command returns unescaped characters such as Unix new line character and octothorpe.

Parameters:
  • module (optional) – Module to execute service command on. If omitted the action is executed on the appliance.
  • command (required) – Command to perform. Options (start, stop, restart, shutdown, reboot).
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Restart network agent:

PUT /api/app/v1/sys/na/control/restart HTTP/1.1
Accept: text/html

Example 1 - Response: Restart network agent:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Response": "<NA RESPONSE>"
}

Example 2 - Request: Reboot appliance:

PUT /api/app/v1/sys//control/reboot HTTP/1.1
Accept: text/html

Example 2 - Response: Reboot appliance:

HTTP/1.1 404 Page Not Found
DELETE /api/app/v1/sys/(module)/disable

Disable specified module.

New in version 1.0.

Parameters:
  • module (required) – Module to disable
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Disable proxy:

DELETE /api/app/v1/sys/wcg/disable HTTP/1.1
Accept: text/html

Example 1 - Response: Disable proxy:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
PUT /api/app/v1/sys/(module)/enable

Enables specified module.

New in version 1.0.

Parameters:
  • module (required) – Module to enable
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Enable proxy:

PUT /api/app/v1/sys/wcg/enable HTTP/1.1
Accept: text/html

Example 1 - Response: Enable proxy:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
GET /api/app/v1/sys/(module)/status

Get the status of services in the specified module.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get proxy status:

GET /api/app/v1/sys/wcg/status HTTP/1.1
Accept: text/html

Example 1 - Response: Get proxy status:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Analytics Server": "Stopped",
  "Content Cop": "Running",
  "Content Gateway": "Running",
  "Content Gateway Manager": "Running",
  "Endpoint Authentication Server": "Running"
}
GET /api/app/v1/sys/(module)/version

Shows the version of the module.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get proxy version:

GET /api/app/v1/sys/wcg/version HTTP/1.1
Accept: text/html

Example 1 - Response: Get proxy version:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "version": "8.4.0"
}
GET /api/app/v1/sys/feedback

Get feedback setting.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get feedback setting:

GET /api/app/v1/sys/feedback HTTP/1.1
Accept: text/html

Example 1 - Response: Get feedback setting:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Feedback": true
}
PUT /api/app/v1/sys/gui_url

Updates the URL to be used for any future GUIs

New in version 1.0.

Query Parameters:
 
  • url (required) – URL to change to
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Change URL:

PUT /api/app/v1/sys/gui_url?url=<NEW_URL> HTTP/1.1
Accept: text/html

Example 1 - Response: Change URL:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
GET /api/app/v1/sys/hardware

Get hardware information.

New in version 1.0.

Query Parameters:
 
  • request (optional) – A list of options to filter by. If omitted get all information. Filter options (UUID, name, hardware_model, nics, serial_number)
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get hardware information:

GET /api/app/v1/sys/hardware HTTP/1.1
Accept: text/html

Example 1 - Response: Get hardware information:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "ApplianceRole": "user",
  "ApplianceVersion": "8.3.0.1198",
  "BIOSInfo": {
    "Revision": "1.5",
    "Version": "1.5.4"
  },
  "CpuModel": "Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz",
  "ProvisioningMode": "wse-contentgateway",
  "UUID": "4C4C4544-0044-3210-8037-B3C04F323832",
  "hardware_model": "PowerEdge R430",
  "name": "V10KG4",
  "nics": [
    "Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe",
    "Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe",
    "Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe",
    "Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe",
    "Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe",
    "Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe"
  ],
  "serial_number": "3D27282"
}
PUT /api/app/v1/sys/hostname

Set the hostname/description on the appliance. This will update the hostname in the containers.

New in version 1.0.

Query Parameters:
 
  • hostname (optional) – Hostname to change to
  • hostname_desc (optional) – Appliance description, limit 100 characters
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Set appliance hostname:

GET /api/app/v1/sys/hostname?hostname=myhost HTTP/1.1
Accept: text/html

Example 1 - Response: Set appliance hostname:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}

Example 2 - Request: Set appliance hostname and description:

GET /api/app/v1/sys/hostname?hostname=myhost&hostname_desc=my_host HTTP/1.1
Accept: text/html

Example 2 - Response: Set appliance hostname and description:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
PUT /api/app/v1/sys/hostname/(module)

Set a module’s hostname.

New in version 1.0.

Query Parameters:
 
  • hostname (required) – Hostname to change the module to
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Warning

This API can only be accessed from the internal endpoint within the appliance.

Warning

This command returns unescaped characters such as Unix new line character and octothorpe.

Example 1 - Request: Set module hostname:

PUT /api/app/v1/sys/hostname/wcg?hostname=kittens HTTP/1.1
Accept: text/html

Example 1 - Response: Set module hostname:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Result": [
    {
      "wcg": true
    },
    {
      "appliance": "<SALT file.line DATA>"
    },
    true
  ]
}
GET /api/app/v1/sys/hostname/descr

Get host description

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get host description:

GET /api/app/v1/sys/feedback HTTP/1.1
Accept: text/html

Example 1 - Response: Get host description:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Feedback": true
}
GET /api/app/v1/sys/integration

Get web integration mode setting.

New in version 1.0.

Deprecated since version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Note

This is only available in Web Filtering and Security mode on a V5K or virtual appliance.

Example 1 - Request: Get integration mode:

GET /api/app/v1/sys/integration HTTP/1.1
Accept: text/html

Example 1 - Response: Get integration mode:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Integration": "WNA"
}

Example 2 - Request: Get integration mode on an invalid appliance:

GET /api/app/v1/sys/integration HTTP/1.1
Accept: text/html

Example 2 - Response: Get integration mode on an invalid appliance:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Integration": null
}
GET /api/app/v1/sys/mode

Get appliance security mode.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get security mode:

GET /api/app/v1/sys/mode HTTP/1.1
Accept: text/html

Example 1 - Response: Get security mode:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "mode": "wse-contentgateway"
}
GET /api/app/v1/sys/modules

Get a list of available modules on the appliance and their current status.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get available modules:

GET /api/app/v1/sys/modules HTTP/1.1
Accept: text/html

Example 1 - Response: Get available modules:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "na": "RUNNING",
  "wcg": "RUNNING",
  "wse": "RUNNING"
}
GET /api/app/v1/sys/platform

Get hardware platform.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get platform:

GET /api/app/v1/sys/platform HTTP/1.1
Accept: text/html

Example 1 - Response: Get platform:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "platform": "V10KG4"
}
GET /api/app/v1/sys/platform_interfaces

Get available platform interfaces.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get platform interfaces:

GET /api/app/v1/sys/platform_interfaces HTTP/1.1
Accept: text/html

Example 1 - Response: Get platform interfaces:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "interfaces": [
    "C",
    "N",
    "P1",
    "P2",
    "E1",
    "E2"
  ]
}
GET /api/app/v1/sys/policy_server_mode

Get the web policy mode.

New in version 1.0.

Deprecated since version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get policy mode:

GET /api/app/v1/sys/policy_server_mode HTTP/1.1
Accept: text/html

Example 1 - Response: Get policy mode:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "policy_mode": "filter"
}
GET /api/app/v1/sys/proxy

Gets the proxy values in the config.

New in version 1.0.

Deprecated since version 1.0.

Warning

Not sure if this command actually does anything.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get host description:

GET /api/app/v1/sys/proxy HTTP/1.1
Accept: text/html

Example 1 - Response: Get host description:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "ip_address": "10.206.6.68",
  "port": "8081",
  "user": "kitten"
}
PUT /api/app/v1/sys/proxy

Set/unset the proxy values in the config.

New in version 1.0.

Deprecated since version 1.0.

Warning

Not sure if this command actually does anything.

Query Parameters:
 
  • ip_address (required) – IP address of the filestore
  • port (required) – Port to connect to the filestore
  • user (required) – User for the filestore
  • password (required) – Filestore user password
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Set proxy config:

PUT /api/app/v1/sys/proxy?ip_address=10.206.6.68&port=8081&password=Firewall1=tx&user=kitten HTTP/1.1
Accept: text/html

Example 1 - Response: Set proxy config:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}

Example 2 - Request: Delete proxy config:

DELETE /api/app/v1/sys/proxy HTTP/1.1
Accept: text/html

Example 1 - Response: Delete proxy config:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
DELETE /api/app/v1/sys/proxy

Set/unset the proxy values in the config.

New in version 1.0.

Deprecated since version 1.0.

Warning

Not sure if this command actually does anything.

Query Parameters:
 
  • ip_address (required) – IP address of the filestore
  • port (required) – Port to connect to the filestore
  • user (required) – User for the filestore
  • password (required) – Filestore user password
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Set proxy config:

PUT /api/app/v1/sys/proxy?ip_address=10.206.6.68&port=8081&password=Firewall1=tx&user=kitten HTTP/1.1
Accept: text/html

Example 1 - Response: Set proxy config:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}

Example 2 - Request: Delete proxy config:

DELETE /api/app/v1/sys/proxy HTTP/1.1
Accept: text/html

Example 1 - Response: Delete proxy config:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
GET /api/app/v1/sys/salt_status

Gives status on if the Salt master and minions are ready

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Salt status:

GET /api/app/v1/sys/salt_status HTTP/1.1
Accept: text/html

Example 1 - Response: Salt is ready:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "is_salt_ready": true
}

Example 2 - Request: Salt status:

GET /api/app/v1/sys/salt_status HTTP/1.1
Accept: text/html

Example 1 - Response: Salt is not ready:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "is_salt_ready": false
}
GET /api/app/v1/sys/status

Get the status of all services in all modules on the appliance.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get system status in Filtering Only mode:

GET /api/app/v1/sys/status HTTP/1.1
Accept: text/html

Example 1 - Response: Get system status in Filtering Only mode:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "NA": {
    "Control Service": "Running",
    "Network Agent": "Running"
  },
  "WCG": {
    "Analytics Server": "Stopped",
    "Content Cop": "Running",
    "Content Gateway": "Running",
    "Content Gateway Manager": "Running",
    "Endpoint Authentication Server": "Running"
  },
  "WSE": {
    "Cloud App Agent": "Running",
    "Control Service": "Running",
    "Filtering Service": "Running"
  }
}
PUT /api/app/v1/sys/sysctl/(param)

Set certain Linux sysctl variables.

New in version 1.0.

Parameters:
  • param (required) – Sysctl variable to cycle. Options (net.ipv4.tcp_timestamps, net.ipv4.tcp_window_scaling)
Query Parameters:
 
  • value (required) – Value to set the variable to
Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin

Example 1 - Request: Cycle sysctl variable:

PUT /api/app/v1/sys/sysctl/net.ipv4.tcp_timestamps?value=0 HTTP/1.1
Accept: text/html

Example 1 - Response: Cycle sysctl variable:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}
GET /api/app/v1/sys/sysctl/(param)

Get a sysctl value.

New in version 1.0.

Response Headers:
 
Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get sysctl value:

GET /api/app/v1/sys/sysctl/net.ipv4.ip_forward HTTP/1.1
Accept: text/html

Example 1 - Response: Get sysctl value:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Result": "1"
}
PUT /api/app/v1/sys/unlock

Removes the lock file that is created during install

New in version 1.0.

Status Codes:
Accepted Authorization:
 

admin, audit

Example 1 - Request: Get upgrade install status:

GET /api/app/v1/sys/unlock HTTP/1.1
Accept: text/html

Example 1 - Response: Get upgrade install status:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "Status": "Success"
}