AI-generated Key Takeaways
-
The Chrome Management Profiles API allows administrators to programmatically manage Chrome browser profiles within their organization.
-
You can list, retrieve, and delete managed profile data using this API.
-
API functionalities include pagination, filtering, ordering, and specifying data fields for efficient retrieval.
-
Request examples demonstrate how to interact with the API using curl commands with OAuth 2.0 authorization.
-
Response examples provide insight into the structure of data returned by the API, including profile details, reporting data, and policy information.
Visit Chrome Management Profiles API for an overview of API features.
All the requests shown in this page use the following variables:
$TOKEN
- OAuth 2.0 token$CUSTOMER
- ID of the customer or literalmy_customer
List Managed Profiles
To list the managed profiles, use the
/profiles
endpoint. You can control pagination of the results using the
pageSize
and pageToken
parameters. Use orderBy
to specify the order of
the results. Specify a filter
to further narrow down the results. A read mask
can be specified with the fields
query parameter, note that efficiency can be
improved by listing profiles with a read mask that excludes reportingData
field.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/profiles?pageSize=2&orderBy=lastPolicySyncTime&filter=osPlatformType=WINDOWS+AND+affiliationState=PROFILE_ONLY&fields=chromeBrowserProfiles.name,chromeBrowserProfiles.profileId,chromeBrowserProfiles.profilePermanentId,chromeBrowserProfiles.displayName,chromeBrowserProfiles.userEmail,chromeBrowserProfiles.lastActivityTime,chromeBrowserProfiles.osPlatformType,chromeBrowserProfiles.policyCount,chromeBrowserProfiles.reportingData,chromeBrowserProfiles.identityProvider,chromeBrowserProfiles.affiliationState"
Response
{
"chromeBrowserProfiles": [
{
"name": "customers/<customerId>/profiles/<profilePermanentId1>",
"profileId": "<profileId1>",
"profilePermanentId": "<profilePermanentId1>",
"displayName": "My profile 1",
"userEmail": "<userEmail1>",
"lastActivityTime": "2024-04-23T22:05:44.214362Z",
"osPlatformType": "WINDOWS",
"policyCount": "2",
"reportingData": [
{
"browserExecutablePath": "<executablePath1>",
"profilePath": "<profilePath1>",
"extensionData":[
{
"extensionId": "ghbmnnjooekpmoecnnnilnnbdlolhkhi",
"version": "1.76.1",
"name": "Google Docs Offline",
"extensionType": "EXTENSION",
"homepageUri": "https://chrome.google.com/webstore/detail/ghbmnnjooekpmoecnnnilnnbdlolhkhi",
"installationType": "NORMAL",
"isDisabled": true,
"isWebstoreExtension": true,
"manifestVersion": 3
}
],
"policyData":[
{
"source": "MACHINE_PLATFORM",
"name": "AutoSelectCertificateForUrls",
"value": "\"********\""
},
{
"source": "USER_CLOUD",
"name": "BrowserThemeColor",
"value": "\"#00FF00\""
}
]
}
],
"identityProvider": "GOOGLE_IDENTITY_PROVIDER",
"affiliationState": "PROFILE_ONLY"
},
{
"name": "customers/<customerId>/profiles/<profilePermanentId2>",
"profileId": "<profileId2>",
"profilePermanentId": "<profilePermanentId2>",
"displayName": "My profile 2",
"userEmail": "<userEmail2>",
"lastActivityTime": "2024-04-23T22:05:44.214362Z",
"osPlatformType": "WINDOWS",
"policyCount": "1",
"reportingData": [
{
"browserExecutablePath": "<executablePath2>",
"profilePath": "<profilePath2>",
"policyData":[
{
"source": "USER_CLOUD",
"name": "CloudProfileReportingEnabled",
"value": "true"
}
]
}
],
"identityProvider": "GOOGLE_IDENTITY_PROVIDER",
"affiliationState": "PROFILE_ONLY"
}
],
"next_page_token": "<nextPageToken>",
"total_size": "120"
}
Retrieve a Managed Profile
To retrieve a managed profile, use the
/profiles/{profile_permanent_id}
endpoint. A read mask
can be specified with the fields
parameter.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/profiles/<profilePermanentId1>?fields=chromeBrowserProfiles.name,chromeBrowserProfiles.profileId,chromeBrowserProfiles.profilePermanentId,chromeBrowserProfiles.displayName,chromeBrowserProfiles.userEmail,chromeBrowserProfiles.lastActivityTime,chromeBrowserProfiles.osPlatformType,chromeBrowserProfiles.policyCount,chromeBrowserProfiles.reportingData,chromeBrowserProfiles.identityProvider,chromeBrowserProfiles.affiliationState"
Response
{
"name": "customers/<customerId>/profiles/<profilePermanentId1>",
"profileId": "<profileId1>",
"profilePermanentId": "<profilePermanentId1>",
"displayName": "My profile 1",
"userEmail": "<userEmail1>",
"lastActivityTime": "2024-04-23T22:05:44.214362Z",
"osPlatformType": "WINDOWS",
"policyCount": "2",
"reportingData": [
{
"browserExecutablePath": "<executablePath1>",
"profilePath": "<profilePath1>",
"extensionData":[
{
"extensionId": "ghbmnnjooekpmoecnnnilnnbdlolhkhi",
"version": "1.76.1",
"name": "Google Docs Offline",
"extensionType": "EXTENSION",
"homepageUri": "https://chrome.google.com/webstore/detail/ghbmnnjooekpmoecnnnilnnbdlolhkhi",
"installationType": "NORMAL",
"isDisabled": true,
"isWebstoreExtension": true,
"manifestVersion": 3
}
],
"policyData":[
{
"source": "MACHINE_PLATFORM",
"name": "AutoSelectCertificateForUrls",
"value": "\"********\""
},
{
"source": "USER_CLOUD",
"name": "BrowserThemeColor",
"value": "\"#00FF00\""
}
]
}
],
"identityProvider": "GOOGLE_IDENTITY_PROVIDER",
"affiliationState": "PROFILE_ONLY"
}
Delete the Data Collected from a Managed Profile
To delete the data collected from a managed profile, use the
/profiles/{profile_permanent_id}
endpoint.
Request
curl -X DELETE \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/profiles/<profilePermanentId1>"
Issue a Remote Command to a Managed Profile
To issue a remote command to a managed profile, use the
/profiles/{profile_permanent_id}/commands/
endpoint.
Request
curl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
--data '{"command_type":"clearBrowsingData", "payload":{clearCache:true, clearCookies:true}}' \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/profiles/<profilePermanentId1>/commands"
Response
{
"name": "customers/<customerId>/profiles/<profilePermanentId1>/commands/<commandId1>",
"commandType": "clear_browsing_data",
"payload": {
"clear_cache": true,
"clear_cookies": true
},
"commandState": "PENDING",
"issueTime": "2025-04-05T16:43:37.668Z",
"validDuration": "86400s"
}
Retrieve a Remote Command Issued to a Managed Profile
To retrieve a remote command issued to a managed profile, use the
/profiles/{profile_permanent_id}/commands/{command_id}
endpoint.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/profiles/<profilePermanentId1>/commands/<commandId1>"
Response
{
"name": "customers/<customerId>/profiles/<profilePermanentId1>/commands/<commandId1>",
"commandType": "clear_browsing_data",
"payload": {
"clear_cache": true,
"clear_cookies": true
},
"commandState": "EXECUTED_BY_CLIENT",
"commandResult": {
"resultType": "SUCCESS",
"clientExecutionTime": "2025-04-05T14:01:51.082Z"
},
"issueTime": "2025-04-05T14:01:49.914Z",
"validDuration": "86400s"
}
List Remote Commands Issued to a Managed Profile
To list remote commands issued to a managed profile, use the
/profiles/{profile_permanent_id}/commands
endpoint.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/profiles/<profilePermanentId1>/commands?pageSize=2"
Response
{
"chromeBrowserProfileCommands": [
{
"name": "customers/<customerId>/profiles/<profilePermanentId1>/commands/<commandId1>",
"commandType": "clear_browsing_data",
"payload": {
"clear_cache": true,
"clear_cookies": true
},
"commandState": "EXECUTED_BY_CLIENT",
"commandResult": {
"resultType": "SUCCESS",
"clientExecutionTime": "2025-04-05T14:01:51.082Z"
},
"issueTime": "2025-04-05T14:01:49.914Z",
"validDuration": "86400s"
},
{
"name": "customers/<customerId>/profiles/<profilePermanentId1>/commands/<commandId2>",
"commandType": "clear_browsing_data",
"payload": {
"clear_cache": true,
"clear_cookies": false
},
"commandState": "EXECUTED_BY_CLIENT",
"commandResult": {
"resultType": "SUCCESS",
"clientExecutionTime": "2025-04-05T14:02:59.981Z"
},
"issueTime": "2025-04-05T14:02:59.192Z",
"validDuration": "86400s"
}
],
"nextPageToken": "<nextPageToken>",
"totalSize": "10"
}