Add a routing payload to a profile

Open in ChatGPT Open in ChatGPT to ask questions about this page
Open in Claude Open in Claude to ask questions about this page
Copy as MarkdownCopy this page as markdown to use with AI assistants
View as Markdown Open this page as markdown in a new tab

Adds a routing payload to a Draft profile, mapping URLs or web domain groups to a target browser.

Request URL

https://{server-hostname}:8383/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads

Scope

BrowserManager.CREATECopied!

Header

Authorization: d92d4xxxxxxxxxxxxx15f52

Request Parameters

- Request Headers

Content-TypestringMandatory
application/jsonapplication/jsonCopied!
AcceptstringMandatory
application/jsonapplication/jsonCopied!

- Path Parameters

profile_idstringMandatory

Browser Router Profile ID from List Browser Router Profiles response (profile_id field)

- Request Body

JSON body with a router_payloads object containing the routing rule: target browser (open_in), optional browser mode, URL entries with webdomain IDs, and/or group entries with group IDs

application/json
JSON Object

Routing payload. Pick a target browser from the dropdown

Hide Sub-Attributes
router_payloadsOptional

Browser-specific routing rule

Show Sub-Attributes
oneOf

Examples

Chrome
Chrome -- Route to Chrome
Firefox -- Route to Firefox
Edge (IE Mode) -- Route to Edge in IE Mode
Edge -- Route to Edge (default)
IE -- Route to Internet Explorer

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads \
  --header 'Accept: application/json' \
  --header 'Authorization:  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{"router_payloads":{"urls":[{"webdomain_ids":["21"],"doc_type":""}],"groups":[{"ids":["313"],"doc_type":""}],"intranet_zone":false,"open_in":"chrome"}}'

Sample Request Body - Chrome

Route URLs and groups to Google Chrome. open_in: target browser, set to chrome. urls.webdomain_ids: array of pre-created webdomain IDs to route. urls.doc_type: IE document compatibility mode, set to empty string as IE mode is not applicable for Chrome. groups.ids: array of pre-created webdomain group IDs to route. groups.doc_type: IE document compatibility mode for the group, set to empty string. intranet_zone: whether to include local intranet zone sites in this rule.

Copied!
  {
    "router_payloads": {
      "urls": [
        {
          "webdomain_ids": [
            "21"
          ],
          "doc_type": ""
        }
      ],
      "groups": [
        {
          "ids": [
            "313"
          ],
          "doc_type": ""
        }
      ],
      "intranet_zone": false,
      "open_in": "chrome"
    }
  }
                
Show full

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads \
  --header 'Accept: application/json' \
  --header 'Authorization:  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{"router_payloads":{"urls":[{"webdomain_ids":["17"],"doc_type":""}],"groups":[{"ids":["313"],"doc_type":""}],"intranet_zone":false,"open_in":"firefox"}}'

Sample Request Body - Firefox

Route URLs and groups to Mozilla Firefox. open_in: target browser, set to firefox. urls.webdomain_ids: array of pre-created webdomain IDs to route. urls.doc_type: IE document compatibility mode, set to empty string as IE mode is not applicable for Firefox. groups.ids: array of pre-created webdomain group IDs to route. groups.doc_type: IE document compatibility mode for the group, set to empty string. intranet_zone: whether to include local intranet zone sites in this rule.

Copied!
  {
    "router_payloads": {
      "urls": [
        {
          "webdomain_ids": [
            "17"
          ],
          "doc_type": ""
        }
      ],
      "groups": [
        {
          "ids": [
            "313"
          ],
          "doc_type": ""
        }
      ],
      "intranet_zone": false,
      "open_in": "firefox"
    }
  }
                
Show full

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads \
  --header 'Accept: application/json' \
  --header 'Authorization:  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{"router_payloads":{"urls":[{"webdomain_ids":["17"],"doc_type":"IE8Enterprise"}],"browser_mode":"IEModeInEdge","groups":[{"ids":["313"],"doc_type":"IE8Enterprise"}],"intranet_zone":false,"open_in":"chromiumEdge"}}'

Sample Request Body - Edge (IE Mode)

Route URLs and groups to Microsoft Edge with IE compatibility rendering. open_in: target browser, set to chromiumEdge (Microsoft Edge). browser_mode: set to IEModeInEdge to render pages in IE mode within Edge. urls.webdomain_ids: array of pre-created webdomain IDs to route. urls.doc_type: IE document compatibility mode for these URLs (e.g. IE8Enterprise, IE11, IE10, IE9, IE8, IE7, IE5). groups.ids: array of pre-created webdomain group IDs to route. groups.doc_type: IE document compatibility mode for the group. intranet_zone: whether to include local intranet zone sites in this rule.

Copied!
  {
    "router_payloads": {
      "urls": [
        {
          "webdomain_ids": [
            "17"
          ],
          "doc_type": "IE8Enterprise"
        }
      ],
      "browser_mode": "IEModeInEdge",
      "groups": [
        {
          "ids": [
            "313"
          ],
          "doc_type": "IE8Enterprise"
        }
      ],
      "intranet_zone": false,
      "open_in": "chromiumEdge"
    }
  }
                
Show full

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads \
  --header 'Accept: application/json' \
  --header 'Authorization:  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{"router_payloads":{"urls":[{"webdomain_ids":["3"],"doc_type":"IE11"}],"groups":[{"ids":["15"],"doc_type":"IE11"}],"intranet_zone":false,"open_in":"chromiumEdge"}}'

Sample Request Body - Edge

Route URLs and groups to Microsoft Edge without IE compatibility mode. open_in: target browser, set to chromiumEdge (Microsoft Edge). browser_mode: omitted, so pages render in Edge's default Chromium rendering engine. urls.webdomain_ids: array of pre-created webdomain IDs to route. urls.doc_type: IE document compatibility mode for these URLs. groups.ids: array of pre-created webdomain group IDs to route. groups.doc_type: IE document compatibility mode for the group. intranet_zone: whether to include local intranet zone sites in this rule.

Copied!
  {
    "router_payloads": {
      "urls": [
        {
          "webdomain_ids": [
            "3"
          ],
          "doc_type": "IE11"
        }
      ],
      "groups": [
        {
          "ids": [
            "15"
          ],
          "doc_type": "IE11"
        }
      ],
      "intranet_zone": false,
      "open_in": "chromiumEdge"
    }
  }
                
Show full

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomain/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads \
  --header 'Accept: application/json' \
  --header 'Authorization:  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{"router_payloads":{"urls":[{"webdomain_ids":["10"],"doc_type":"IE8Enterprise"}],"groups":[{"ids":["25"],"doc_type":"IE8Enterprise"}],"intranet_zone":false,"open_in":"iexplorer"}}'

Sample Request Body - IE

Route URLs and groups to Internet Explorer. open_in: target browser, set to iexplorer (Internet Explorer). urls.webdomain_ids: array of pre-created webdomain IDs to route. urls.doc_type: IE document compatibility mode for these URLs (e.g. IE8Enterprise, IE11, IE10, IE9, IE8, IE7, IE5). groups.ids: array of pre-created webdomain group IDs to route. groups.doc_type: IE document compatibility mode for the group. intranet_zone: whether to include local intranet zone sites in this rule.

Copied!
  {
    "router_payloads": {
      "urls": [
        {
          "webdomain_ids": [
            "10"
          ],
          "doc_type": "IE8Enterprise"
        }
      ],
      "groups": [
        {
          "ids": [
            "25"
          ],
          "doc_type": "IE8Enterprise"
        }
      ],
      "intranet_zone": false,
      "open_in": "iexplorer"
    }
  }
                
Show full

Response Parameters

- HTTP code 200

Response Body - application/json
JSON Object
Hide Sub-Attributes
router_payloadJSON Array

Created payload configurations with routing details

Show Sub-Attributes
JSON Object
Show Sub-Attributes
payload_typestring

Payload type. 64100 for Browser Router

payload_idstring

Unique identifier of the payload

router_detailsJSON Array

Routing rule configurations

Show Sub-Attributes
JSON Object
Show Sub-Attributes
config_data_item_idstring

Unique identifier for this configuration data item

urlsJSON Array

URL routing rules with webdomain details

Show Sub-Attributes
JSON Object
Show Sub-Attributes
doc_typestring

Document compatibility mode. Values: IE11, IE10, IE9, IE8, IE8Enterprise, IE7, IE5, or empty string for default rendering

idstring

Unique identifier of the webdomain

urlstring

The URL or hostname pattern for this routing rule

groupsJSON Array

Webdomain group routing rules

Show Sub-Attributes
JSON Object
Show Sub-Attributes
group_idstring

Unique identifier of the webdomain group

webdomain_groupstring

Display name of the webdomain group

doc_typestring

Document compatibility mode for the group. Values: IE11, IE10, IE9, IE8, IE8Enterprise, IE7, IE5, or empty string for default rendering

browser_modestring

Browser rendering mode. Values: IEModeInEdge, Default

intranet_zoneboolean

Whether to include intranet zone sites in this routing rule

open_instring

Target browser to open matching URLs. Values: chromiumEdge, chrome, firefox, iexplorer

config_labelstring

Configuration label

- HTTP code 400

Response Body - application/json
JSON Object
Hide Sub-Attributes
error_descriptionstring

Name of the duplicate webdomain or group already assigned to another payload

error_codestring

Error code for duplicate webdomain/group assignment

- HTTP code 401

Response Body - application/json
JSON Object
Hide Sub-Attributes
errorCodelong

Unauthorized error code returned when authentication credentials are missing, expired, or invalid (authentication=required)

errorMsgstring

Authentication failure reason

- HTTP code 403

Response Body - application/json
JSON Object
Hide Sub-Attributes
errorCodelong

Forbidden error code returned when the authenticated user does not have the required uem-roles (e.g., DataEncryption_Admin or DataEncryptionRecoveryKey_Admin)

errorMsgstring

Message indicating insufficient privileges to access this resource

- HTTP code 404

Response Body - application/json
JSON Object
Hide Sub-Attributes
error_descriptionstring

Message indicating the specified profile or payload was not found

- HTTP code 409

Response Body - application/json
JSON Object
Hide Sub-Attributes
error_descriptionstring

Message indicating published profiles cannot be modified

- HTTP code 429

Response Body - application/json
JSON Object
Hide Sub-Attributes
errorCodelong

Rate limit error code returned when the API call threshold (configured via threshold/duration in security XML) is exceeded; client is locked out for lock-period minutes

errorMsgstring

Rate limit exceeded message with retry guidance

- HTTP code 500

Response Body - application/json
JSON Object
Hide Sub-Attributes
error_descriptionstring

Message describing the server-side failure

error_codestring

Internal server error code

Possible Response Codes

200HTTP code
400HTTP code
401HTTP code
403HTTP code
404HTTP code
409HTTP code
429HTTP code
500HTTP code

Response Examples

Sample Response: HTTP 200 - Edge (IE Mode)

Created payload (Edge IE Mode)

Copied!
  {
    "router_payload": [
      {
        "payload_type": "64100",
        "payload_id": "622",
        "router_details": [
          {
            "config_data_item_id": "622",
            "urls": [
              {
                "doc_type": "IE11",
                "id": "601",
                "url": "localhost"
              }
            ],
            "groups": [
              {
                "group_id": "618",
                "webdomain_group": "Corporate Intranet Sites",
                "doc_type": "IE5"
              }
            ],
            "browser_mode": "IEModeInEdge",
            "intranet_zone": false,
            "open_in": "chromiumEdge"
          }
        ],
        "config_label": "BROWSER_ROUTER"
      }
    ]
  }
                
Show full

Sample Response: HTTP 400

Duplicate webdomain

Copied!
  {
    "error_description": "example.com",
    "error_code": "BSP_BR0001"
  }
                
Show full

Sample Response: HTTP 401

Unauthorized

Copied!
  {
    "errorCode": "UNAUTHORIZED",
    "errorMsg": "You are not authorized to perform this action"
  }
                
Show full

Sample Response: HTTP 403

Forbidden

Copied!
  {
    "errorCode": "FORBIDDEN",
    "errorMsg": "You do not have permission to access this resource"
  }
                
Show full

Sample Response: HTTP 404

Profile not found

Copied!
  {
    "error_description": "Profile not found"
  }
                
Show full

Sample Response: HTTP 409

Profile is published

Copied!
  {
    "error_description": "Cannot modify a published profile"
  }
                
Show full

Sample Response: HTTP 429

Rate limit exceeded

Copied!
  {
    "errorCode": "RATE_LIMIT_EXCEEDED",
    "errorMsg": "You have exceeded the maximum number of API calls. Please try again later."
  }
                
Show full

Sample Response: HTTP 500

Server error

Copied!
  {
    "error_description": "Internal Server error, Please try again in a moment.",
    "error_code": "COM0004"
  }
                
Show full

Duration: 1 minute | Threshold: 60 | Lock period: 5 minutes

Duration - Time window for the threshold.
Threshold - Number of API calls allowed within the specified duration.
Lock Period - Wait time before consecutive API requests.