Modify a routing payload

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

Updates a routing payload within a Draft profile. The request fully replaces the payload.

Request URL

https://{serverurl}/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads/{payload_id}

Scope

DesktopCentralCloud.BrowserManager.UPDATECopied!

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

Request Parameters

- Request Headers

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

- Path Parameters

payload_idstringMandatory

Router Payload ID from Get Browser Router Profile response (config_data_item_id field)

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 updated routing rule. Provide the full payload configuration URLs, groups, browser mode, and target browser. This replaces the existing payload configuration entirely

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 PUT \
  --url https://appdomains/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads/{payload_id} \
  --header 'Accept: application/json' \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{}'

Sample Request Body - Chrome

Redirect payload 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. This replaces the entire payload configuration.

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 PUT \
  --url https://appdomains/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads/{payload_id} \
  --header 'Accept: application/json' \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{}'

Sample Request Body - Firefox

Redirect payload 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. This replaces the entire payload configuration.

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 PUT \
  --url https://appdomains/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads/{payload_id} \
  --header 'Accept: application/json' \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{}'

Sample Request Body - Edge (IE Mode)

Redirect payload 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. This replaces the entire payload configuration.

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 PUT \
  --url https://appdomains/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads/{payload_id} \
  --header 'Accept: application/json' \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{}'

Sample Request Body - Edge

Redirect payload 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. This replaces the entire payload configuration.

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 PUT \
  --url https://appdomains/bsp/api/v1/bmp/browser_router/{profile_id}/router_payloads/{payload_id} \
  --header 'Accept: application/json' \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52' \
  --header 'Content-Type: application/json' \
  --data '{}'

Sample Request Body - IE

Redirect payload 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. This replaces the entire payload configuration.

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
payloadsJSON Array

Modified 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: credentials missing, expired, or invalid

errorMsgstring

Authentication failure reason

- HTTP code 403

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

Error code indicating insufficient permissions

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 reached threshold

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)

Modified payload (Edge IE Mode)

Copied!
  {
    "payloads": [
      {
        "payload_type": "64100",
        "payload_id": "622",
        "router_details": [
          {
            "config_data_item_id": "622",
            "urls": [
              {
                "doc_type": "IE11",
                "id": "601",
                "url": "localhost"
              },
              {
                "doc_type": "IE11",
                "id": "621",
                "url": "www.facebook.com"
              }
            ],
            "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

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.