Uploads and registers a new managed extension (Chrome, Firefox, or Edge) and creates a distribution profile.
post /bsp/api/v1/bmp/extensions
https://{serverurl}/bsp/api/v1/bmp/extensions
Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52
Request body for uploading and registering a new managed extension
Webstore application identifier or Firefox add-on slug
Extension source type: web_store, Non-webstore, or inhouse
Values 1=Chrome, 2=Firefox, 3=IE, 5=Edge, 31=Ulaa, 1024=Chromium
URL to Firefox XPI package
File identifier for inhouse extension packages
Platform type filter. 1=Windows, 2=Mac, -1=All
List of permission names to allow
curl --request POST \
--url https://appdomains/bsp/api/v1/bmp/extensions \
--header 'Accept: application/json' \
--header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \
--header 'Content-Type: application/json' \
--data '{}'Chrome extension
{
"platform_type": 1,
"browser_type": 1,
"type": "web_store",
"app_id": "mooikfkahbdckldjjndioackbalphokd"
}
Firefox extension
{
"platform_type": -1,
"browser_type": 2,
"type": "web_store",
"app_id": "ublock-origin"
}
Edge extension
{
"platform_type": 1,
"browser_type": 5,
"type": "web_store",
"app_id": "jbkfoedolllekgbhcbcoahefnbanhhlh"
}
In-house (custom packaged) extension uploaded via file
{
"platform_type": 1,
"file_id": 78901,
"browser_type": 1,
"type": "inhouse",
"allowed_permissions": [
"tabs",
"storage"
]
}
Extension profile details including payloads
Unique identifier of the extension profile
Collection reference ID
Platform type. 1=Windows, 2=Mac, -1=All
Latest version number
Whether the extension profile is in the trash
Profile scope. 0=device scope
Latest published version number
Display name of the extension
Description of the extension
Extension payload configurations
Individual extension payload configuration
Payload type identifier. 64120 for extensions
Unique identifier of the extension payload
Extension metadata
Numeric install source code. 1=webstore, 2=sideloaded, 3=inhouse
Browser type. 1=Chrome, 2=Firefox, 5=Edge
Extension icon/logo filename
Extension description
Extension source type: web_store or inhouse
Short identifier name
Extension version string
Extension name from the manifest
Extension homepage URL
Path to the CRX/XPI extension package
Permission names
Extension update check URL
Webstore or internal extension ID
Logo asset identifier
Allowed permission names
Binary record identifier
Unauthorized error code: credentials missing, expired, or invalid
Authentication failure reason
Error code indicating insufficient permissions
Message indicating insufficient privileges to access this resource
Error code for invalid extension identifiers
Human-readable message prompting the user to enter a valid extension identifier
Rate limit error code returned when the API call reached threshold
Rate limit exceeded message with retry guidance
Internal server error during extension operations
Error message describing the server failure
Error code for internal server errors
Extension added
{
"extension_id": "606",
"collection_id": "222",
"platform_type": "1",
"latest_version": "1",
"is_moved_to_trash": false,
"scope": "0",
"latest_published_version": "--",
"extension_name": "Selenium IDE",
"extension_description": "Selenium Record and Playback tool for ease of getting acquainted with Selenium WebDriver.",
"extension_payloads": [
{
"payload_type": "64120",
"extension_payload_id": "922",
"extension_details": {
"installsource": "1",
"browser_type": "1",
"img_file": "icon16.png",
"description": "Selenium Record and Playback tool for ease of getting acquainted with Selenium WebDriver.",
"extn_type": "web_store",
"shortname": "Selenium IDE",
"version": "3.17.2",
"extensionname": "Selenium IDE",
"homepageurl": "https://github.com/SeleniumHQ/selenium-ide",
"crx_path": "..\\webapps\\DesktopCentral\\bsp\\client-data\\1\\ManagedExtensions\\2",
"permissions": [
"Tabs",
"Active tab",
"Context menu",
"Downloads",
"Web navigation",
"Storage",
"Debugger"
],
"updateurl": "https://clients2.google.com/service/update2/crx",
"id": "mooikfkahbdckldjjndioackbalphokd",
"extension_logo_id": "602",
"allowed_permissions": []
},
"binary_id": "602"
}
]
}
Unauthorized
{
"errorCode": "UNAUTHORIZED",
"errorMsg": "You are not authorized to perform this action"
}
Forbidden
{
"errorCode": "FORBIDDEN",
"errorMsg": "You do not have permission to access this resource"
}
Invalid extension ID
{
"errorcode": "BSP_EXT0001",
"errormsg": "Enter a valid extension identifier"
}
Rate limit exceeded
{
"errorCode": "RATE_LIMIT_EXCEEDED",
"errorMsg": "You have exceeded the maximum number of API calls. Please try again later."
}
Server error
{
"error_description": "Internal Server error, Please try again in a moment.",
"error_code": "COM0004"
}
![]()
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.
© 2026, Zoho Corporation Pvt. Ltd. All Rights Reserved.