The sample requests on this page illustrate how to manage printers with the Chrome Printer Management API.
All sample requests use the following variables:
-
$TOKEN
: Your application's OAuth 2.0 token. -
$CUSTOMER
: The unique Customer ID of the enterprise account, prepended with "C". (Example:C123abc4
) You can also entermy_customer
to denote your own account's Customer ID.
List printer models
This sample requests a list of all supported printer models.
Request
curl -X GET \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers:listPrinterModels"
Response
{
"printerModels"
:
[
{
"manufacturer"
:
"Anitech"
,
"displayName"
:
"Anitech M24"
,
"makeAndModel"
:
"anitech m24"
},
{
"manufacturer"
:
"Apollo"
,
"displayName"
:
"Apollo P-2100"
,
"makeAndModel"
:
"apollo apollo 2100"
},
//...
{
"manufacturer"
:
"Brother"
,
"displayName"
:
"Brother DCP-7025"
,
"makeAndModel"
:
"brother dcp-7025"
},
//...
],
"nextPageToken"
:
"CGQQAQ=="
}
List or search for printers
This sample requests a list of all printers that are visible in Organizational
Unit ID 04fatzly26exj7b
and contain the word Lobby
in the printer display
name or description.
Request
curl -X GET \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers?orgUnitId=04fatzly26exj7b&filter=Lobby"
Response
{
"printers"
:
[
{
"name"
:
"customers/C0202nabg/chrome/printers/0gjdgxs2zla0y7"
,
"id"
:
"0gjdgxs2zla0y7"
,
"displayName"
:
"Jupiter"
,
"description"
:
"Guest printer in lobby Building C."
,
"makeAndModel"
:
"xerox able 1406"
,
"uri"
:
"ipp://192.168.10.13"
,
"createTime"
:
"2021-03-11T21:41:34.779587Z"
,
"orgUnitId"
:
"04fatzly26exj7b"
// Note: This printer was created in the same OU that we are searching within.
},
{
"name"
:
"customers/C0202nabg/chrome/printers/0gjdgxs1eqkb60"
,
"id"
:
"0gjdgxs1eqkb60"
,
"displayName"
:
"Mars"
,
"description"
:
"Printer in Lobby Building A"
,
"uri"
:
"ipp://192.168.10.11"
,
"createTime"
:
"2021-03-11T22:02:06.048469Z"
,
"orgUnitId"
:
"04fatzly4jbjho9"
,
// Note: This printer was added in parent OU, yet is visible from the OU we are searching within.
"useDriverlessConfig"
:
true
}
]
}
Get a particular printer
This sample requests details for a printer with the ID 0gjdgxs2zla0y7
.
Request
curl -X GET \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers/0gjdgxs2zla0y7"
Response
{
"name"
:
"customers/C0202nabg/chrome/printers/0gjdgxs2zla0y7"
,
"id"
:
"0gjdgxs2zla0y7"
,
"displayName"
:
"Jupiter"
,
"description"
:
"Guest printer in lobby Building C."
,
"makeAndModel"
:
"xerox able 1406"
,
"uri"
:
"ipp://192.168.10.13"
,
"createTime"
:
"2021-03-11T21:41:34.779587Z"
,
"orgUnitId"
:
"04fatzly26exj7b"
}
Create a printer
This sample adds a new printer in Organizational Unit ID 04fatzly26exj7b
.
Request
curl -X POST \
-H "Content-Type: application/json" \
--header "Authorization: Bearer $TOKEN" \
-d '{
"displayName": "Mercury",
"description": "Printer in the kitchen",
"makeAndModel": "xerox able 1406",
"uri": "ipp://192.168.10.14",
"orgUnitId": "04fatzly26exj7b"
}' \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers"
Response
{
"name": "customers/C0202nabg/chrome/printers/0gjdgxs0o422uq",
"id": "0gjdgxs0o422uq", // Note: This is the ID of the newly created printer.
"displayName": "Mercury",
"description": "Printer in the kitchen",
"makeAndModel": "xerox able 1406",
"uri": "ipp://192.168.10.14",
"createTime": "2021-03-11T23:19:27.180846Z",
"orgUnitId": "04fatzly26exj7b"
}
Update a printer
This sample updates the description of printer ID 0gjdgxs0o422uq
.
Request
curl -X PATCH \
-H "Content-Type: application/json" \
--header "Authorization: Bearer $TOKEN" \
-d '{
"description": "Printer in the office",
}' \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers/0gjdgxs0o422uq?updateMask=description"
Response
{
"name": "customers/C0202nabg/chrome/printers/0gjdgxs0o422uq",
"id": "0gjdgxs0o422uq",
"displayName": "Mercury",
"description": "Printer in the office",
"makeAndModel": "xerox able 1406",
"uri": "ipp://192.168.10.14",
"createTime": "2021-03-11T23:19:27.180846Z",
"orgUnitId": "04fatzly26exj7b"
}
Delete a printer
This sample deletes printer printer ID 0gjdgxs0o422uq
.
Request
curl -X DELETE \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers/0gjdgxs0o422uq"
Response
A successful response is empty. {}
Create multiple printers in one request
This sample creates multiple printers in a single request, using the batchCreatePrinters
method.
Request
curl -X POST \
-H "Content-Type: application/json" \
--header "Authorization: Bearer $TOKEN" \
-d '{
"requests": [
{
"parent": "customers/$CUSTOMER",
"printer": {
"displayName": "Earth",
"description": "Color printer",
"useDriverlessConfig": true,
"uri": "ipp://192.168.10.15",
"orgUnitId": "04fatzly26exj7b"
}
},
{
"parent": "customers/$CUSTOMER",
"printer": {
"displayName": "Saturn",
"description": "Color printer",
"useDriverlessConfig": true,
"uri": "ipp://192.168.10.16",
"orgUnitId": "04fatzly26exj7b"
}
}
]
}' \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers:batchCreatePrinters"
Response
{
"printers": [
{
"name": "customers/C0202nabg/chrome/printers/0gjdgxs0sbbh87",
"id": "0gjdgxs0sbbh87",
"displayName": "Saturn",
"description": "Color printer",
"uri": "ipp://192.168.10.16",
"createTime": "2021-03-12T01:10:32.957084Z",
"orgUnitId": "04fatzly26exj7b",
"useDriverlessConfig": true
},
{
"name": "customers/C0202nabg/chrome/printers/0gjdgxs2d6170e",
"id": "0gjdgxs2d6170e",
"displayName": "Earth",
"description": "Color printer",
"uri": "ipp://192.168.10.15",
"createTime": "2021-03-12T01:10:32.956735Z",
"orgUnitId": "04fatzly26exj7b",
"useDriverlessConfig": true
}
]
}
Delete multiple printers in one request
This sample deletes multiple printers in a single request, using the batchDeletePrinters
method.
Request
curl -X POST \
-H "Content-Type: application/json" \
--header "Authorization: Bearer $TOKEN" \
-d '{
"printerIds": ["0gjdgxs0sbbh87", "0gjdgxs2d6170e"]
}' \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers:batchDeletePrinters"
Response
{
"printerIds": [ // Successfully deleted printers.
"0gjdgxs2d6170e",
"0gjdgxs0sbbh87"
]
}