system¶
Summary¶
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - appliance/module information
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - status of services
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - module disabled
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - module enabled
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - status of services
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - module version
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - feedback setting
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - hostname/description set
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - feedback setting
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - hostname/description set
- 401 Unauthorized – Access Denied
- 422 Unprocessable Entity – Unprocessable Entity - hostname/description not valid
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - hostname set
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - host description
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - integration mode
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - security mode
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - module list
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - platform
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - list of platform interfaces
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - policy mode
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - host description
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - host description
- 400 Bad Request – Bad Request - parameter not provided, can’t connect to IP/port combo
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - host description
- 400 Bad Request – Bad Request - parameter not provided, can’t connect to IP/port combo
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - Retrieved Salt status
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - status of services
- 401 Unauthorized – Access Denied
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - status of services
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid module
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: - Content-Type – application/json
Status Codes: - 200 OK – Success - sysctl value
- 401 Unauthorized – Access Denied
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: - 200 OK – Success
- 401 Unauthorized – Access Denied
- 500 Internal Server Error – Internal Server Error - invalid i_type
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" }