本頁的示例要求說明如何使用 Chrome Printer Management API 管理印表機。
所有範例要求都會使用下列變數:
$TOKEN
:應用程式的 OAuth 2.0 權杖。$CUSTOMER
:企業帳戶的唯一客戶 ID,前面加上「C」。(例如:C123abc4
) 您也可以輸入my_customer
來表示您帳戶的客戶 ID。
列出印表機型號
這個範例會要求所有支援的印表機型號清單。
要求
curl -X GET \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers:listPrinterModels"
回應
{
"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=="
}
列出或搜尋印表機
這個範例會要求列出在機構單位 ID 04fatzly26exj7b
中顯示的所有印表機,且在印表機顯示名稱或說明中包含 Lobby
字詞。
要求
curl -X GET \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers?orgUnitId=04fatzly26exj7b&filter=Lobby"
回應
{
"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
}
]
}
取得特定印表機
這個範例會要求 ID 為 0gjdgxs2zla0y7
的印表機詳細資料。
要求
curl -X GET \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers/0gjdgxs2zla0y7"
回應
{
"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"
}
建立印表機
這個範例會在機構單位 ID 04fatzly26exj7b
中新增印表機。
要求
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"
回應
{
"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"
}
更新印表機
這個範例會更新印表機 ID 0gjdgxs0o422uq
的說明。
要求
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"
回應
{
"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"
}
刪除印表機
這個範例會刪除印表機 ID 0gjdgxs0o422uq
。
要求
curl -X DELETE \
--header "Authorization: Bearer $TOKEN" \
"https://admin.googleapis.com/admin/directory/v1/customers/$CUSTOMER/chrome/printers/0gjdgxs0o422uq"
回應
成功的回應為空白。{}
在單一要求中建立多台印表機
這個範例會使用 batchCreatePrinters
方法,在單一要求中建立多台印表機。
要求
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"
回應
{
"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
}
]
}
在單一要求中刪除多台印表機
這個範例會使用 batchDeletePrinters
方法,在單一要求中刪除多台印表機。
要求
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"
回應
{
"printerIds": [ // Successfully deleted printers.
"0gjdgxs2d6170e",
"0gjdgxs0sbbh87"
]
}