Create and manage printers

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 enter my_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"
  ]
} 
Create a Mobile Website
View Site in Mobile | Classic
Share by: