Mobile Settings Methods
Using the mobile settings methods of the Tableau REST API you can:
- List the mobile security settings for a site or server.
- Update the mobile security settings for a site or server.
About mobile device security settings
Available in API 3.18 (Tableau Cloud December 2022 / Server 2023.1) and later.
These settings include detecting the following conditions:
- Jailbreak Detection - for Android and iOS devices.
- Malware Detection - for Android devices.
-
Maximum offline time before security policy update - for Android and iOS devices.
Available in API 3.19 (Tableau Cloud March 2023 / Server 2023.1) and later. - Screenshot protection - for Android devices.
Get Mobile Security Settings for Server
Gets the mobile security settings for the server.
Version: Available in API 3.19 (Tableau Cloud December 2022 / Server 2023.1) and later.. Version Overview
License: No additional license required.
Permissions: Only Tableau server and site administrators can get mobile security settings for the server. Permissions Overview
JWT Access Scope: Not available. Access Scopes Overview: Cloud(Link opens in a new window) | Server-Windows(Link opens in a new window) | Server-Linux(Link opens in a new window)
URI
GET /api/api-version/settings/mobilesecuritysettings
URI Parameter Values
api-version | The version of the API to use, such as 3.24 . For more information, see REST API and Resource Versions.
|
cURL Request Example
curl -L -X GET "https://qa-server.tsi.lan/api/3.18/settings/mobilesecuritysettings" -H "Accept: application/json" -H "X-Tableau-Auth: ejET2rVmS2e81XiZ9G4lzQ|Iz71DR2lu3r0zHpcOAH2OoRQZlPfxACC|a905dbfd-6550-4546-908b-3e055fcc026d" --data-raw ""
Response Code
200
Response Body
<tsResponse>
<mobileSecuritySettingsList>
<mobileSecuritySettings name="mobile.security.jailbroken_device" enabled="true">
<iosConfig severity="warn" enabled="false">
<valueList>true</valueList>
</iosConfig>
<androidConfig severity="critical" enabled="false">
<valueList>false</valueList>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name="mobile.security.malware_detection" enabled="true">
<iosConfig severity="warn" enabled="false">
<valueList>true</valueList>
</iosConfig>
<androidConfig severity="warn" enabled="false">
<valueList>true</valueList>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name ="mobile.security.max_offline" enabled="true">
<iosConfig enabled="true" severity="critical">
<valueList>14</valuelist>
</iosConfig>
<androidConfig enabled="true" severity="critical">
<valueList>14</valuelist>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name="mobile.security.screenshot" enabled="false">
<androidConfig severity="warn" enabled="false">
<valueList>true</valueList>
</androidConfig>
</mobileSecuritySettings>
</mobileSecuritySettingsList>
</tsResponse>
{
"mobileSecuritySettingsList": {
"mobileSecuritySettings": [
{
"name": "mobile.security.jailbroken_device",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
},
"androidConfig": {
"valueList": [
"false"
],
"enabled": true,
"severity": "critical"
}
},
{
"name": "mobile.security.malware_detection",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
},
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
},
{
"name": "mobile.security.max_offline",
"enabled": true
"iosConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
"androidConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
},
{
"name": "mobile.security.screenshot",
"enabled": false,
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
}
]
}
}
Errors
HTTP status | error Code |
Condition | Details |
---|---|---|---|
400 | 400000 | Bad Request | The request is incomplete is malformed. |
400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occured. |
401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
For more information, see Handling Errors.
Get Mobile Security Settings for Site
Gets the mobile security settings for the specified site.
Version: Available in API 3.18 (Tableau Cloud December 2022) and later. Not available for Tableau Server. Version Overview
License: No additional license required.
Permissions: Only Tableauserver and site administrators can get mobile security settings. Permissions Overview
JWT Access Scope: Not available. Access Scopes Overview: Cloud(Link opens in a new window) | Server-Windows(Link opens in a new window) | Server-Linux(Link opens in a new window)
URI
GET /api/api-version/sites/site-luid/settings/mobilesecuritysettings
URI Parameter Values
api-version | The version of the API to use, such as 3.24 . For more information, see REST API and Resource Versions.
|
site-luid | The LUID for the site. |
cURL Request Example
curl "http://MY-SERVER/api/3.24/sites/9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d/datasources/1a1b1c1d-2e2f-2a2b-3c3d-3e3f4a4b4c4d/connections" -X GET -H "X-Tableau-Auth:12ab34cd56ef78ab90cd12ef34ab56cd"
Response Code
200
Response Body
<tsResponse>
<mobileSecuritySettingsList>
<mobileSecuritySettings name="mobile.security.jailbroken_device" enabled="true">
<iosConfig severity="warn" enabled="false">
<valueList>true</valueList>
</iosConfig>
<androidConfig severity="critical" enabled="false">
<valueList>false</valueList>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name="mobile.security.malware_detection" enabled="true">
<iosConfig severity="warn" enabled="false">
<valueList>true</valueList>
</iosConfig>
<androidConfig severity="warn" enabled="false">
<valueList>true</valueList>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name ="mobile.security.max_offline" enabled="true">
<iosConfig enabled="true" severity="critical">
<valueList>14</valuelist>
</iosConfig>
<androidConfig enabled="true" severity="critical">
<valueList>14</valuelist>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name="mobile.security.screenshot" enabled="false">
<androidConfig severity="warn" enabled="false">
<valueList>true</valueList>
</androidConfig>
</mobileSecuritySettings>
</mobileSecuritySettingsList>
</tsResponse>
{
"mobileSecuritySettingsList": {
"mobileSecuritySettings": [
{
"name": "mobile.security.jailbroken_device",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
},
"androidConfig": {
"valueList": [
"false"
],
"enabled": true,
"severity": "critical"
}
},
{
"name": "mobile.security.malware_detection",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
},
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
},
{
"name": "mobile.security.max_offline",
"enabled": true
"iosConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
"androidConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
},
{
"name": "mobile.security.screenshot",
"enabled": false,
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
}
]
}
}
Errors
HTTP status | error Code |
Condition | Details |
---|---|---|---|
400 | 400000 | Bad Request | The request is incomplete is malformed. |
400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occured. |
401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
For more information, see Handling Errors.
Update Mobile Security Settings for Site
Updates the mobile security sections for a specified site.
Version: Available in API 3.18 (Tableau Cloud December 2022) and later. Not available for Tableau Server. Version Overview
License: No additional license required.
Permissions: Only Tableau server administrators can update mobile security settings for the server. Permissions Overview
JWT Access Scope: Not available. Access Scopes Overview: Cloud(Link opens in a new window) | Server-Windows(Link opens in a new window) | Server-Linux(Link opens in a new window)
URI
PUT /api/api-version/settings/mobilesecuritysettings
URI Parameter Values
api-version | The version of the API to use, such as 3.24 . For more information, see REST API and Resource Versions.
|
{
"mobileSecuritySettingsList": {
"mobileSecuritySettings": [
{
"name": "mobile.security.jailbroken_device",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"severity": "warn"
},
"androidConfig": {
"valueList": [
"false"
],
"severity": "critical"
}
},
{
"name": "mobile.security.malware_detection",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
},
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
},
{
"name": "mobile.security.max_offline",
"enabled": true
"iosConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
"androidConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
},
{
"name": "mobile.security.screenshot",
"enabled": false,
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
}
]
}
}
Request Attributes
mobileSecuritySettings name
|
(Optional)Enum. The device condition addressed by a security setting element. Supported values are:
|
mobileSecuritySettings enabled
|
(Optional) Boolean. If true , enables the Tableau mobile client to detect and respond to
the condition described in the setting's name . The enabled attribute for the Android
or iOS configuration element of the setting must also be true for detection on that type of device.
If mobileSecuritySettings enabled = false , the Android and iOS configuration element attribute
settings will be ignored.
|
mobileSecuritySettings androidConfig / iosConfig
|
(Optional)Element. Security settings specific to the platform of the mobile device hosting the Tableau client for the setting being configured. Required attributes of this element are:
|
cURL Request Example
curl -L -X PUT "https://qa-server.tsi.lan/api/3.18/settings/mobilesecuritysettings" -H "Accept: application/json" -H "X-Tableau-Auth: ejET2rVmS2e81XiZ9G4lzQ|Iz71DR2lu3r0zHpcOAH2OoRQZlPfxACC|a905dbfd-6550-4546-908b-3e055fcc026d" --data-raw ""
Response Code
200
Response Body
<tsResponse>
<mobileSecuritySettingsList>
<mobileSecuritySettings name="mobile.security.jailbroken_device" enabled="true">
<iosConfig severity="warn" enabled="false">
<valueList>true</valueList>
</iosConfig>
<androidConfig severity="critical" enabled="false">
<valueList>false</valueList>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name="mobile.security.malware_detection" enabled="true">
<iosConfig severity="warn" enabled="false">
<valueList>true</valueList>
</iosConfig>
<androidConfig severity="warn" enabled="false">
<valueList>true</valueList>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name ="mobile.security.max_offline" enabled="true">
<iosConfig enabled="true" severity="critical">
<valueList>14</valuelist>
</iosConfig>
<androidConfig enabled="true" severity="critical">
<valueList>14</valuelist>
</androidConfig>
</mobileSecuritySettings>
<mobileSecuritySettings name="mobile.security.screenshot" enabled="false">
<androidConfig severity="warn" enabled="false">
<valueList>true</valueList>
</androidConfig>
</mobileSecuritySettings>
</mobileSecuritySettingsList>
</tsResponse>
{
"mobileSecuritySettingsList": {
"mobileSecuritySettings": [
{
"name": "mobile.security.jailbroken_device",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"severity": "warn"
},
"androidConfig": {
"valueList": [
"false"
],
"severity": "critical"
}
},
{
"name": "mobile.security.malware_detection",
"enabled": true,
"iosConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
},
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
},
{
"name": "mobile.security.max_offline",
"enabled": true
"iosConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
"androidConfig": {
"valueList": [
"14"
],
"enabled": true,
"severity": "critical"
},
},
{
"name": "mobile.security.screenshot",
"enabled": false,
"androidConfig": {
"valueList": [
"true"
],
"enabled": true,
"severity": "warn"
}
}
]
}
}
Errors
HTTP status | error Code |
Condition | Details |
---|---|---|---|
400 | 400000 | Bad Request |
The content of the request body is missing, incomplete, or is malformed XML. Invalid values for enabled ,
iosConfig , androidConfig , severity , or enabled attributes are possible causes.
|
400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occured. |
401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
409 | 409004 | Invalid setting | A mobile security setting enabled , name or other value is missing or malformed. |
For more information, see Handling Errors.