Stay organized with collections
Save and categorize content based on your preferences.
To use the Chrome Printer Management API, you need to enable the API and create the app's OAuth
2.0 credentials. Then a
Chrome administrator
needs to grant your script the necessary account access to manage printers.
Admins can optionally block or trust apps developed to manage printers
for their account.
Follow the steps below to set up everything required for API access. These
instructions assume you already have an app with its OAuth consent screen set
up, and a service account set up. If that's not the case, see
Configure OAuth consent and
Create a service account
before continuing.
Enable API and create credentials
Enable the API.
The API you are enabling is "Admin SDK."
Before use, your service account needs to be granted proper admin
privileges. This must be done by an administrator for the customer
associated with the printers or print servers that the service account manages.
Option 1: Enable domain-wide delegation for the service account
Domain-wide delegation lets the service account impersonate an admin who
has the proper privileges to manage printers and print servers.
The OAuth scope you need for this step is
https://www.googleapis.com/auth/admin.chrome.printers.
Option 2: Grant admin role privileges to the service account
If you prefer to limit the service account's privileges on the domain, you can
assign it a role with privileges to only manage printers. To learn more about
using roles for access control, see
Manage roles.
[[["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 2025-08-04 UTC."],[],[],null,["To use the Chrome Printer Management API, you need to enable the API and create the app's OAuth\n2.0 credentials. Then a\n[Chrome administrator](https://support.google.com/a/answer/6208960)\nneeds to grant your script the necessary account access to manage printers.\nAdmins can optionally block or trust apps developed to manage printers\nfor their account.\n\nFollow the steps below to set up everything required for API access. These\ninstructions assume you already have an app with its OAuth consent screen set\nup, and a service account set up. If that's not the case, see\n[Configure OAuth consent](/workspace/guides/configure-oauth-consent) and\n[Create a service account](/workspace/guides/create-credentials#create_a_service_account)\nbefore continuing.\n| **Note:** Only service accounts can access the Chrome Printer Management API at this time.\n\nEnable API and create credentials\n\n1. [Enable the API](/workspace/guides/enable-apis). The API you are enabling is \"Admin SDK.\"\n2. [Create OAuth 2.0 credentials](/workspace/guides/create-credentials#create_credentials_for_a_service_account) for your service account. Store the downloaded JSON file in a secure location.\n\nEnable service account access\n\nBefore use, your service account needs to be granted proper admin\nprivileges. This must be done by an administrator for the customer\nassociated with the printers or print servers that the service account manages.\n\nOption 1: Enable domain-wide delegation for the service account\n\nDomain-wide delegation lets the service account impersonate an admin who\nhas the proper privileges to manage printers and print servers.\n\n[Enable domain-wide delegation](/workspace/guides/create-credentials#optional_set_up_domain-wide_delegation_for_a_service_account)\n\nThe OAuth scope you need for this step is\n`https://www.googleapis.com/auth/admin.chrome.printers`.\n| **Note:** Depending on your app, you might need to enter additional scopes. For example, you might need to list scopes for the [Chrome Policy API](/chrome/policy)or the [Directory API](/workspace/admin/directory) (to view or manage organizational units).\n\nOption 2: Grant admin role privileges to the service account\n\nIf you prefer to limit the service account's privileges on the domain, you can\nassign it a role with privileges to only manage printers. To learn more about\nusing roles for access control, see\n[Manage roles](/workspace/admin/directory/v1/guides/manage-roles).\n\n1. As an administrator, sign in to the [Admin console](https://admin.google.com/).\n2. At the top left of the page, click menu \\\u003e **Account** \\\u003e **Admin\n roles**.\n3. Select an existing role with the privilege below, or create a new role and\n add this privilege:\n\n `Services \u003e ChromeOS \u003e Settings \u003e Manage Printers`\n4. Assign this role to the service account email address.\n\nBlock or trust a printer management app\n\nApps are trusted by default, but an administrator can choose to block or trust\nspecific apps for their account.\n\n1. As an administrator, sign in to the [Admin console](https://admin.google.com/).\n2. At the top left, click Menu menu \\\u003e **Security** \\\u003e **Access and data control** \\\u003e **API controls**.\n3. In the \"App access control\" section, click **Manage Third-party App Access**.\n4. In the \"Connected apps\" section:\n - If you don't see the app listed, click **Configure new app**. Then, follow the on-screen instructions.\n - If you see the app listed, click the app name. Then, select blocked or trusted under \"App Access\" and click **Save**."]]