Chrome Policy API Overview
Stay organized with collections
Save and categorize content based on your preferences.
The Chrome Policy API is a suite of services that empower Chrome administrators
to programmatically view and manage Chrome policies assigned to the
Organizational Units
in their organization. With this API, Chrome admins can gain insights about how
ChromeOS devices and Chrome browsers are being used in their organization.
Key advantages
Google Admin console compatibility: Changes you make with the API are
reflected in Google Admin console UI, and vice versa.
Audit logging: Changes made with this API are logged in the standard
Admin Audit logs.
Data-driven approach: Chrome policies are represented as data and aren't
directly referenced by the API interface. This lets you automate API clients
for consumption of future Chrome policies without additional development. Over
time, the number of policies supported via API will increase.
Complements the Admin SDK API: This API complements the Admin SDK API,
where Chrome admins can perform the following tasks:
Popular use cases
The table below lists the top tasks you can complete with this API. To review
example requests and responses, go to Code samples.
URLs are relative to https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER
.
Task description |
Relative URL |
HTTP method |
Request parameters |
List policy schemas |
./policySchemas |
GET |
Optional: filter , pageSize , pageToken |
Get a policy schema |
./policySchemas/$SCHEMA_NAME |
GET |
|
Get or list policies for an Organizational Unit or Group |
./policies:resolve |
POST |
Required: policySchemaFilter , policyTargetKey
Optional: pageSize , pageToken
|
Modify policies in an Organizational Unit |
./policies/orgunits:batchModify |
POST |
Required: requests: {policyTargetKey, policyValue, updateMask} |
Inherit policies in an Organizational Unit |
./policies/orgunits:batchInherit |
POST |
Required: requests: {policyTargetKey, policySchema} |
Modify policies in a Group |
./policies/groups:batchModify |
POST |
Required: requests: {policyTargetKey, policyValue, updateMask} |
Delete policies in a Group |
./policies/groups:batchDelete |
POST |
Required: requests: {policyTargetKey, policySchema} |
List priority orderings in a Group |
./policies/groups:listGroupPriorityOrdering |
POST |
Required: requests: {policyTargetKey, policyNamespace} |
Update priority orderings in a Group |
./policies/groups:updateGroupPriorityOrdering |
POST |
Required: requests: {policyTargetKey, policyNamespace, groupIds} |
Upload files for a policy |
./policies/files:uploadPolicyFile |
POST |
Required: requests: {policyField} |
Usage limits
This API is only for use internally within a Chrome customer's organization. For more details, review the Chrome Policy API Terms of Service. To build a commercial API client in partnership with Google, submit a partner application.
Next steps
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-10-16 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-10-16 UTC."],[[["\u003cp\u003eThe Chrome Policy API enables Chrome administrators to programmatically view and manage Chrome policies for their organization's ChromeOS devices and Chrome browsers.\u003c/p\u003e\n"],["\u003cp\u003eIt offers key benefits like Google Admin console compatibility, audit logging, and a data-driven approach for easier automation.\u003c/p\u003e\n"],["\u003cp\u003eAdmins can utilize this API to perform tasks such as listing policy schemas, retrieving specific schemas, and managing policies for organizational units and groups.\u003c/p\u003e\n"],["\u003cp\u003eUsage of this API is restricted to internal use within a Chrome customer's organization, with commercial partnerships requiring a separate application process.\u003c/p\u003e\n"],["\u003cp\u003eFurther exploration is encouraged through provided resources on policy schemas, request setup, and code samples.\u003c/p\u003e\n"]]],[],null,["# Chrome Policy API Overview\n\nThe Chrome Policy API is a suite of services that empower Chrome administrators\nto programmatically view and manage Chrome policies assigned to the\n[Organizational Units](https://support.google.com/a/answer/4352075)\nin their organization. With this API, Chrome admins can gain insights about how\nChromeOS devices and Chrome browsers are being used in their organization.\n\nKey advantages\n--------------\n\n- **Google Admin console compatibility:** Changes you make with the API are\n reflected in Google Admin console UI, and vice versa.\n\n- **Audit logging:** Changes made with this API are logged in the standard\n [Admin Audit logs](https://support.google.com/a/answer/4579579).\n\n- **Data-driven approach:** Chrome policies are represented as data and aren't\n directly referenced by the API interface. This lets you automate API clients\n for consumption of future Chrome policies without additional development. Over\n time, the number of policies supported via API will increase.\n\n- **Complements the Admin SDK API:** This API complements the Admin SDK API,\n where Chrome admins can perform the following tasks:\n\n - [Manage Chrome devices](/admin-sdk/directory/v1/guides/manage-chrome-devices) with the Admin SDK's Directory API.\n - [Manage Chrome browsers](https://support.google.com/chrome/a/answer/9681204) with the Admin SDK's Chrome Browser Management API.\n - [Manage Chrome CUPS printers](/admin-sdk/chrome-printer) with the Admin SDK's Chrome Printer Management API.\n\nPopular use cases\n-----------------\n\nThe table below lists the top tasks you can complete with this API. To review\nexample requests and responses, go to [Code samples](/chrome/policy/guides/samples_policyapi).\n\nURLs are relative to `https://chromepolicy.googleapis.com/v1/customers/`\u003cvar translate=\"no\"\u003e$CUSTOMER\u003c/var\u003e.\n\n| Task description | Relative URL | HTTP method | Request parameters |\n|--------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------|-------------|-----------------------------------------------------------------------------------------|\n| [List policy schemas](/chrome/policy/reference/rest/v1/customers.policySchemas/list) | `./policySchemas` | `GET` | *Optional:* `filter`, `pageSize`, `pageToken` |\n| [Get a policy schema](/chrome/policy/reference/rest/v1/customers.policySchemas/get) | `./policySchemas/`\u003cvar translate=\"no\"\u003e$SCHEMA_NAME\u003c/var\u003e | `GET` | |\n| [Get or list policies for an Organizational Unit or Group](/chrome/policy/reference/rest/v1/customers.policies/resolve) | `./policies:resolve` | `POST` | *Required:* `policySchemaFilter`, `policyTargetKey` *Optional:* `pageSize`, `pageToken` |\n| [Modify policies in an Organizational Unit](/chrome/policy/reference/rest/v1/customers.policies.orgunits/batchModify) | `./policies/orgunits:batchModify` | `POST` | *Required:* `requests: {policyTargetKey, policyValue, updateMask}` |\n| [Inherit policies in an Organizational Unit](/chrome/policy/reference/rest/v1/customers.policies.orgunits/batchInherit) | `./policies/orgunits:batchInherit` | `POST` | *Required:* `requests: {policyTargetKey, policySchema}` |\n| [Modify policies in a Group](/chrome/policy/reference/rest/v1/customers.policies.groups/batchModify) | `./policies/groups:batchModify` | `POST` | *Required:* `requests: {policyTargetKey, policyValue, updateMask}` |\n| [Delete policies in a Group](/chrome/policy/reference/rest/v1/customers.policies.groups/batchDelete) | `./policies/groups:batchDelete` | `POST` | *Required:* `requests: {policyTargetKey, policySchema}` |\n| [List priority orderings in a Group](/chrome/policy/reference/rest/v1/customers.policies.groups/listGroupPriorityOrdering) | `./policies/groups:listGroupPriorityOrdering` | `POST` | *Required:* `requests: {policyTargetKey, policyNamespace}` |\n| [Update priority orderings in a Group](/chrome/policy/reference/rest/v1/customers.policies.groups/updateGroupPriorityOrdering) | `./policies/groups:updateGroupPriorityOrdering` | `POST` | *Required:* `requests: {policyTargetKey, policyNamespace, groupIds}` |\n| [Upload files for a policy](/chrome/policy/reference/rest/v1/media/upload) | `./policies/files:uploadPolicyFile` | `POST` | *Required:* `requests: {policyField}` |\n\nUsage limits\n------------\n\nThis API is only for use internally within a Chrome customer's organization. For more details, review the [Chrome Policy API Terms of Service](http://console.cloud.google.com/tos?id=chrome-policy). To build a commercial API client in partnership with Google, submit a [partner application](https://docs.google.com/forms/d/e/1FAIpQLSdJA-2_BZ3FJLSBtuWkPCMPXqUpxGbCta1wXRrrVdUCX7apog/viewform).\n\nNext steps\n----------\n\n- [Learn about policy schemas](./policy-schemas)\n- [Set up and authorize requests](./setup)\n- [Review code samples](./samples)"]]