@@ -0,0 +1,4182 @@
1+{
2+ "kind": "discovery#restDescription",
3+ "etag": "\"ye6orv2F-1npMW3u9suM3a7C5Bo/uQEY1lxUpBjGfWxd7mioMh_V8P8\"",
4+ "discoveryVersion": "v1",
5+ "id": "admin:directory_v1",
6+ "name": "admin",
7+ "canonicalName": "directory",
8+ "version": "directory_v1",
9+ "revision": "20150720",
10+ "title": "Admin Directory API",
11+ "description": "The Admin SDK Directory API lets you view and manage enterprise resources such as users and groups, administrative notifications, security features, and more.",
12+ "ownerDomain": "google.com",
13+ "ownerName": "Google",
14+ "packagePath": "admin",
15+ "icons": {
16+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
17+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
18+ },
19+ "documentationLink": "https://developers.google.com/admin-sdk/directory/",
20+ "protocol": "rest",
21+ "baseUrl": "https://www.googleapis.com/admin/directory/v1/",
22+ "basePath": "/admin/directory/v1/",
23+ "rootUrl": "https://www.googleapis.com/",
24+ "servicePath": "admin/directory/v1/",
25+ "batchPath": "batch",
26+ "parameters": {
27+ "alt": {
28+ "type": "string",
29+ "description": "Data format for the response.",
30+ "default": "json",
31+ "enum": [
32+ "json"
33+ ],
34+ "enumDescriptions": [
35+ "Responses with Content-Type of application/json"
36+ ],
37+ "location": "query"
38+ },
39+ "fields": {
40+ "type": "string",
41+ "description": "Selector specifying which fields to include in a partial response.",
42+ "location": "query"
43+ },
44+ "key": {
45+ "type": "string",
46+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
47+ "location": "query"
48+ },
49+ "oauth_token": {
50+ "type": "string",
51+ "description": "OAuth 2.0 token for the current user.",
52+ "location": "query"
53+ },
54+ "prettyPrint": {
55+ "type": "boolean",
56+ "description": "Returns response with indentations and line breaks.",
57+ "default": "true",
58+ "location": "query"
59+ },
60+ "quotaUser": {
61+ "type": "string",
62+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.",
63+ "location": "query"
64+ },
65+ "userIp": {
66+ "type": "string",
67+ "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.",
68+ "location": "query"
69+ }
70+ },
71+ "auth": {
72+ "oauth2": {
73+ "scopes": {
74+ "https://www.googleapis.com/auth/admin.directory.device.chromeos": {
75+ "description": "View and manage your Chrome OS devices' metadata"
76+ },
77+ "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly": {
78+ "description": "View your Chrome OS devices' metadata"
79+ },
80+ "https://www.googleapis.com/auth/admin.directory.device.mobile": {
81+ "description": "View and manage your mobile devices' metadata"
82+ },
83+ "https://www.googleapis.com/auth/admin.directory.device.mobile.action": {
84+ "description": "Manage your mobile devices by performing administrative tasks"
85+ },
86+ "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly": {
87+ "description": "View your mobile devices' metadata"
88+ },
89+ "https://www.googleapis.com/auth/admin.directory.group": {
90+ "description": "View and manage the provisioning of groups on your domain"
91+ },
92+ "https://www.googleapis.com/auth/admin.directory.group.member": {
93+ "description": "View and manage group subscriptions on your domain"
94+ },
95+ "https://www.googleapis.com/auth/admin.directory.group.member.readonly": {
96+ "description": "View group subscriptions on your domain"
97+ },
98+ "https://www.googleapis.com/auth/admin.directory.group.readonly": {
99+ "description": "View groups on your domain"
100+ },
101+ "https://www.googleapis.com/auth/admin.directory.notifications": {
102+ "description": "View and manage notifications received on your domain"
103+ },
104+ "https://www.googleapis.com/auth/admin.directory.orgunit": {
105+ "description": "View and manage organization units on your domain"
106+ },
107+ "https://www.googleapis.com/auth/admin.directory.orgunit.readonly": {
108+ "description": "View organization units on your domain"
109+ },
110+ "https://www.googleapis.com/auth/admin.directory.user": {
111+ "description": "View and manage the provisioning of users on your domain"
112+ },
113+ "https://www.googleapis.com/auth/admin.directory.user.alias": {
114+ "description": "View and manage user aliases on your domain"
115+ },
116+ "https://www.googleapis.com/auth/admin.directory.user.alias.readonly": {
117+ "description": "View user aliases on your domain"
118+ },
119+ "https://www.googleapis.com/auth/admin.directory.user.readonly": {
120+ "description": "View users on your domain"
121+ },
122+ "https://www.googleapis.com/auth/admin.directory.user.security": {
123+ "description": "Manage data access permissions for users on your domain"
124+ },
125+ "https://www.googleapis.com/auth/admin.directory.userschema": {
126+ "description": "View and manage the provisioning of user schemas on your domain"
127+ },
128+ "https://www.googleapis.com/auth/admin.directory.userschema.readonly": {
129+ "description": "View user schemas on your domain"
130+ }
131+ }
132+ }
133+ },
134+ "schemas": {
135+ "Alias": {
136+ "id": "Alias",
137+ "type": "object",
138+ "description": "JSON template for Alias object in Directory API.",
139+ "properties": {
140+ "alias": {
141+ "type": "string",
142+ "description": "A alias email"
143+ },
144+ "etag": {
145+ "type": "string",
146+ "description": "ETag of the resource."
147+ },
148+ "id": {
149+ "type": "string",
150+ "description": "Unique id of the group (Read-only) Unique id of the user (Read-only)"
151+ },
152+ "kind": {
153+ "type": "string",
154+ "description": "Kind of resource this is.",
155+ "default": "admin#directory#alias"
156+ },
157+ "primaryEmail": {
158+ "type": "string",
159+ "description": "Group's primary email (Read-only) User's primary email (Read-only)"
160+ }
161+ }
162+ },
163+ "Aliases": {
164+ "id": "Aliases",
165+ "type": "object",
166+ "description": "JSON response template to list aliases in Directory API.",
167+ "properties": {
168+ "aliases": {
169+ "type": "array",
170+ "description": "List of alias objects.",
171+ "items": {
172+ "$ref": "Alias"
173+ }
174+ },
175+ "etag": {
176+ "type": "string",
177+ "description": "ETag of the resource."
178+ },
179+ "kind": {
180+ "type": "string",
181+ "description": "Kind of resource this is.",
182+ "default": "admin#directory#aliases"
183+ }
184+ }
185+ },
186+ "Asp": {
187+ "id": "Asp",
188+ "type": "object",
189+ "description": "The template that returns individual ASP (Access Code) data.",
190+ "properties": {
191+ "codeId": {
192+ "type": "integer",
193+ "description": "The unique ID of the ASP.",
194+ "format": "int32"
195+ },
196+ "creationTime": {
197+ "type": "string",
198+ "description": "The time when the ASP was created. Expressed in Unix time format.",
199+ "format": "int64"
200+ },
201+ "etag": {
202+ "type": "string",
203+ "description": "ETag of the ASP."
204+ },
205+ "kind": {
206+ "type": "string",
207+ "description": "The type of the API resource. This is always admin#directory#asp.",
208+ "default": "admin#directory#asp"
209+ },
210+ "lastTimeUsed": {
211+ "type": "string",
212+ "description": "The time when the ASP was last used. Expressed in Unix time format.",
213+ "format": "int64"
214+ },
215+ "name": {
216+ "type": "string",
217+ "description": "The name of the application that the user, represented by their userId, entered when the ASP was created."
218+ },
219+ "userKey": {
220+ "type": "string",
221+ "description": "The unique ID of the user who issued the ASP."
222+ }
223+ }
224+ },
225+ "Asps": {
226+ "id": "Asps",
227+ "type": "object",
228+ "properties": {
229+ "etag": {
230+ "type": "string",
231+ "description": "ETag of the resource."
232+ },
233+ "items": {
234+ "type": "array",
235+ "description": "A list of ASP resources.",
236+ "items": {
237+ "$ref": "Asp"
238+ }
239+ },
240+ "kind": {
241+ "type": "string",
242+ "description": "The type of the API resource. This is always admin#directory#aspList.",
243+ "default": "admin#directory#aspList"
244+ }
245+ }
246+ },
247+ "Channel": {
248+ "id": "Channel",
249+ "type": "object",
250+ "description": "An notification channel used to watch for resource changes.",
251+ "properties": {
252+ "address": {
253+ "type": "string",
254+ "description": "The address where notifications are delivered for this channel."
255+ },
256+ "expiration": {
257+ "type": "string",
258+ "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.",
259+ "format": "int64"
260+ },
261+ "id": {
262+ "type": "string",
263+ "description": "A UUID or similar unique string that identifies this channel."
264+ },
265+ "kind": {
266+ "type": "string",
267+ "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".",
268+ "default": "api#channel"
269+ },
270+ "params": {
271+ "type": "object",
272+ "description": "Additional parameters controlling delivery channel behavior. Optional.",
273+ "additionalProperties": {
274+ "type": "string",
275+ "description": "Declares a new parameter by name."
276+ }
277+ },
278+ "payload": {
279+ "type": "boolean",
280+ "description": "A Boolean value to indicate whether payload is wanted. Optional."
281+ },
282+ "resourceId": {
283+ "type": "string",
284+ "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions."
285+ },
286+ "resourceUri": {
287+ "type": "string",
288+ "description": "A version-specific identifier for the watched resource."
289+ },
290+ "token": {
291+ "type": "string",
292+ "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional."
293+ },
294+ "type": {
295+ "type": "string",
296+ "description": "The type of delivery mechanism used for this channel."
297+ }
298+ }
299+ },
300+ "ChromeOsDevice": {
301+ "id": "ChromeOsDevice",
302+ "type": "object",
303+ "description": "JSON template for Chrome Os Device resource in Directory API.",
304+ "properties": {
305+ "activeTimeRanges": {
306+ "type": "array",
307+ "description": "List of active time ranges (Read-only)",
308+ "items": {
309+ "type": "object",
310+ "properties": {
311+ "activeTime": {
312+ "type": "integer",
313+ "description": "Duration in milliseconds",
314+ "format": "int32"
315+ },
316+ "date": {
317+ "type": "string",
318+ "description": "Date of usage",
319+ "format": "date"
320+ }
321+ }
322+ }
323+ },
324+ "annotatedAssetId": {
325+ "type": "string",
326+ "description": "AssetId specified during enrollment or through later annotation"
327+ },
328+ "annotatedLocation": {
329+ "type": "string",
330+ "description": "Address or location of the device as noted by the administrator"
331+ },
332+ "annotatedUser": {
333+ "type": "string",
334+ "description": "User of the device"
335+ },
336+ "bootMode": {
337+ "type": "string",
338+ "description": "Chromebook boot mode (Read-only)"
339+ },
340+ "deviceId": {
341+ "type": "string",
342+ "description": "Unique identifier of Chrome OS Device (Read-only)"
343+ },
344+ "etag": {
345+ "type": "string",
346+ "description": "ETag of the resource."
347+ },
348+ "ethernetMacAddress": {
349+ "type": "string",
350+ "description": "Chromebook Mac Address on ethernet network interface (Read-only)"
351+ },
352+ "firmwareVersion": {
353+ "type": "string",
354+ "description": "Chromebook firmware version (Read-only)"
355+ },
356+ "kind": {
357+ "type": "string",
358+ "description": "Kind of resource this is.",
359+ "default": "admin#directory#chromeosdevice"
360+ },
361+ "lastEnrollmentTime": {
362+ "type": "string",
363+ "description": "Date and time the device was last enrolled (Read-only)",
364+ "format": "date-time"
365+ },
366+ "lastSync": {
367+ "type": "string",
368+ "description": "Date and time the device was last synchronized with the policy settings in the Google Apps administrator control panel (Read-only)",
369+ "format": "date-time"
370+ },
371+ "macAddress": {
372+ "type": "string",
373+ "description": "Chromebook Mac Address on wifi network interface (Read-only)"
374+ },
375+ "meid": {
376+ "type": "string",
377+ "description": "Mobile Equipment identifier for the 3G mobile card in the Chromebook (Read-only)"
378+ },
379+ "model": {
380+ "type": "string",
381+ "description": "Chromebook Model (Read-only)"
382+ },
383+ "notes": {
384+ "type": "string",
385+ "description": "Notes added by the administrator"
386+ },
387+ "orderNumber": {
388+ "type": "string",
389+ "description": "Chromebook order number (Read-only)"
390+ },
391+ "orgUnitPath": {
392+ "type": "string",
393+ "description": "OrgUnit of the device"
394+ },
395+ "osVersion": {
396+ "type": "string",
397+ "description": "Chromebook Os Version (Read-only)"
398+ },
399+ "platformVersion": {
400+ "type": "string",
401+ "description": "Chromebook platform version (Read-only)"
402+ },
403+ "recentUsers": {
404+ "type": "array",
405+ "description": "List of recent device users, in descending order by last login time (Read-only)",
406+ "items": {
407+ "type": "object",
408+ "properties": {
409+ "email": {
410+ "type": "string",
411+ "description": "Email address of the user. Present only if the user type is managed"
412+ },
413+ "type": {
414+ "type": "string",
415+ "description": "The type of the user"
416+ }
417+ }
418+ }
419+ },
420+ "serialNumber": {
421+ "type": "string",
422+ "description": "Chromebook serial number (Read-only)"
423+ },
424+ "status": {
425+ "type": "string",
426+ "description": "status of the device (Read-only)"
427+ },
428+ "supportEndDate": {
429+ "type": "string",
430+ "description": "Final date the device will be supported (Read-only)",
431+ "format": "date-time"
432+ },
433+ "willAutoRenew": {
434+ "type": "boolean",
435+ "description": "Will Chromebook auto renew after support end date (Read-only)"
436+ }
437+ }
438+ },
439+ "ChromeOsDevices": {
440+ "id": "ChromeOsDevices",
441+ "type": "object",
442+ "description": "JSON response template for List Chrome OS Devices operation in Directory API.",
443+ "properties": {
444+ "chromeosdevices": {
445+ "type": "array",
446+ "description": "List of Chrome OS Device objects.",
447+ "items": {
448+ "$ref": "ChromeOsDevice"
449+ }
450+ },
451+ "etag": {
452+ "type": "string",
453+ "description": "ETag of the resource."
454+ },
455+ "kind": {
456+ "type": "string",
457+ "description": "Kind of resource this is.",
458+ "default": "admin#directory#chromeosdevices"
459+ },
460+ "nextPageToken": {
461+ "type": "string",
462+ "description": "Token used to access next page of this result."
463+ }
464+ }
465+ },
466+ "Group": {
467+ "id": "Group",
468+ "type": "object",
469+ "description": "JSON template for Group resource in Directory API.",
470+ "properties": {
471+ "adminCreated": {
472+ "type": "boolean",
473+ "description": "Is the group created by admin (Read-only) *"
474+ },
475+ "aliases": {
476+ "type": "array",
477+ "description": "List of aliases (Read-only)",
478+ "items": {
479+ "type": "string"
480+ }
481+ },
482+ "description": {
483+ "type": "string",
484+ "description": "Description of the group"
485+ },
486+ "directMembersCount": {
487+ "type": "string",
488+ "description": "Group direct members count",
489+ "format": "int64"
490+ },
491+ "email": {
492+ "type": "string",
493+ "description": "Email of Group",
494+ "annotations": {
495+ "required": [
496+ "directory.groups.insert"
497+ ]
498+ }
499+ },
500+ "etag": {
501+ "type": "string",
502+ "description": "ETag of the resource."
503+ },
504+ "id": {
505+ "type": "string",
506+ "description": "Unique identifier of Group (Read-only)"
507+ },
508+ "kind": {
509+ "type": "string",
510+ "description": "Kind of resource this is.",
511+ "default": "admin#directory#group"
512+ },
513+ "name": {
514+ "type": "string",
515+ "description": "Group name"
516+ },
517+ "nonEditableAliases": {
518+ "type": "array",
519+ "description": "List of non editable aliases (Read-only)",
520+ "items": {
521+ "type": "string"
522+ }
523+ }
524+ }
525+ },
526+ "Groups": {
527+ "id": "Groups",
528+ "type": "object",
529+ "description": "JSON response template for List Groups operation in Directory API.",
530+ "properties": {
531+ "etag": {
532+ "type": "string",
533+ "description": "ETag of the resource."
534+ },
535+ "groups": {
536+ "type": "array",
537+ "description": "List of group objects.",
538+ "items": {
539+ "$ref": "Group"
540+ }
541+ },
542+ "kind": {
543+ "type": "string",
544+ "description": "Kind of resource this is.",
545+ "default": "admin#directory#groups"
546+ },
547+ "nextPageToken": {
548+ "type": "string",
549+ "description": "Token used to access next page of this result."
550+ }
551+ }
552+ },
553+ "Member": {
554+ "id": "Member",
555+ "type": "object",
556+ "description": "JSON template for Member resource in Directory API.",
557+ "properties": {
558+ "email": {
559+ "type": "string",
560+ "description": "Email of member (Read-only)"
561+ },
562+ "etag": {
563+ "type": "string",
564+ "description": "ETag of the resource."
565+ },
566+ "id": {
567+ "type": "string",
568+ "description": "Unique identifier of customer member (Read-only) Unique identifier of group (Read-only) Unique identifier of member (Read-only)"
569+ },
570+ "kind": {
571+ "type": "string",
572+ "description": "Kind of resource this is.",
573+ "default": "admin#directory#member"
574+ },
575+ "role": {
576+ "type": "string",
577+ "description": "Role of member"
578+ },
579+ "type": {
580+ "type": "string",
581+ "description": "Type of member (Immutable)"
582+ }
583+ }
584+ },
585+ "Members": {
586+ "id": "Members",
587+ "type": "object",
588+ "description": "JSON response template for List Members operation in Directory API.",
589+ "properties": {
590+ "etag": {
591+ "type": "string",
592+ "description": "ETag of the resource."
593+ },
594+ "kind": {
595+ "type": "string",
596+ "description": "Kind of resource this is.",
597+ "default": "admin#directory#members"
598+ },
599+ "members": {
600+ "type": "array",
601+ "description": "List of member objects.",
602+ "items": {
603+ "$ref": "Member"
604+ }
605+ },
606+ "nextPageToken": {
607+ "type": "string",
608+ "description": "Token used to access next page of this result."
609+ }
610+ }
611+ },
612+ "MobileDevice": {
613+ "id": "MobileDevice",
614+ "type": "object",
615+ "description": "JSON template for Mobile Device resource in Directory API.",
616+ "properties": {
617+ "adbStatus": {
618+ "type": "boolean",
619+ "description": "Adb (USB debugging) enabled or disabled on device (Read-only)"
620+ },
621+ "applications": {
622+ "type": "array",
623+ "description": "List of applications installed on Mobile Device",
624+ "items": {
625+ "type": "object",
626+ "properties": {
627+ "displayName": {
628+ "type": "string",
629+ "description": "Display name of application"
630+ },
631+ "packageName": {
632+ "type": "string",
633+ "description": "Package name of application"
634+ },
635+ "permission": {
636+ "type": "array",
637+ "description": "List of Permissions for application",
638+ "items": {
639+ "type": "string"
640+ }
641+ },
642+ "versionCode": {
643+ "type": "integer",
644+ "description": "Version code of application",
645+ "format": "int32"
646+ },
647+ "versionName": {
648+ "type": "string",
649+ "description": "Version name of application"
650+ }
651+ }
652+ }
653+ },
654+ "basebandVersion": {
655+ "type": "string",
656+ "description": "Mobile Device Baseband version (Read-only)"
657+ },
658+ "buildNumber": {
659+ "type": "string",
660+ "description": "Mobile Device Build number (Read-only)"
661+ },
662+ "defaultLanguage": {
663+ "type": "string",
664+ "description": "The default locale used on the Mobile Device (Read-only)"
665+ },
666+ "developerOptionsStatus": {
667+ "type": "boolean",
668+ "description": "Developer options enabled or disabled on device (Read-only)"
669+ },
670+ "deviceCompromisedStatus": {
671+ "type": "string",
672+ "description": "Mobile Device compromised status (Read-only)"
673+ },
674+ "deviceId": {
675+ "type": "string",
676+ "description": "Mobile Device serial number (Read-only)"
677+ },
678+ "email": {
679+ "type": "array",
680+ "description": "List of owner user's email addresses (Read-only)",
681+ "items": {
682+ "type": "string"
683+ }
684+ },
685+ "etag": {
686+ "type": "string",
687+ "description": "ETag of the resource."
688+ },
689+ "firstSync": {
690+ "type": "string",
691+ "description": "Date and time the device was first synchronized with the policy settings in the Google Apps administrator control panel (Read-only)",
692+ "format": "date-time"
693+ },
694+ "hardwareId": {
695+ "type": "string",
696+ "description": "Mobile Device Hardware Id (Read-only)"
697+ },
698+ "imei": {
699+ "type": "string",
700+ "description": "Mobile Device IMEI number (Read-only)"
701+ },
702+ "kernelVersion": {
703+ "type": "string",
704+ "description": "Mobile Device Kernel version (Read-only)"
705+ },
706+ "kind": {
707+ "type": "string",
708+ "description": "Kind of resource this is.",
709+ "default": "admin#directory#mobiledevice"
710+ },
711+ "lastSync": {
712+ "type": "string",
713+ "description": "Date and time the device was last synchronized with the policy settings in the Google Apps administrator control panel (Read-only)",
714+ "format": "date-time"
715+ },
716+ "managedAccountIsOnOwnerProfile": {
717+ "type": "boolean",
718+ "description": "Boolean indicating if this account is on owner/primary profile or not (Read-only)"
719+ },
720+ "meid": {
721+ "type": "string",
722+ "description": "Mobile Device MEID number (Read-only)"
723+ },
724+ "model": {
725+ "type": "string",
726+ "description": "Name of the model of the device"
727+ },
728+ "name": {
729+ "type": "array",
730+ "description": "List of owner user's names (Read-only)",
731+ "items": {
732+ "type": "string"
733+ }
734+ },
735+ "networkOperator": {
736+ "type": "string",
737+ "description": "Mobile Device mobile or network operator (if available) (Read-only)"
738+ },
739+ "os": {
740+ "type": "string",
741+ "description": "Name of the mobile operating system"
742+ },
743+ "otherAccountsInfo": {
744+ "type": "array",
745+ "description": "List of accounts added on device (Read-only)",
746+ "items": {
747+ "type": "string"
748+ }
749+ },
750+ "resourceId": {
751+ "type": "string",
752+ "description": "Unique identifier of Mobile Device (Read-only)"
753+ },
754+ "serialNumber": {
755+ "type": "string",
756+ "description": "Mobile Device SSN or Serial Number (Read-only)"
757+ },
758+ "status": {
759+ "type": "string",
760+ "description": "Status of the device (Read-only)"
761+ },
762+ "supportsWorkProfile": {
763+ "type": "boolean",
764+ "description": "Work profile supported on device (Read-only)"
765+ },
766+ "type": {
767+ "type": "string",
768+ "description": "The type of device (Read-only)"
769+ },
770+ "unknownSourcesStatus": {
771+ "type": "boolean",
772+ "description": "Unknown sources enabled or disabled on device (Read-only)"
773+ },
774+ "userAgent": {
775+ "type": "string",
776+ "description": "Mobile Device user agent"
777+ },
778+ "wifiMacAddress": {
779+ "type": "string",
780+ "description": "Mobile Device WiFi MAC address (Read-only)"
781+ }
782+ }
783+ },
784+ "MobileDeviceAction": {
785+ "id": "MobileDeviceAction",
786+ "type": "object",
787+ "description": "JSON request template for firing commands on Mobile Device in Directory Devices API.",
788+ "properties": {
789+ "action": {
790+ "type": "string",
791+ "description": "Action to be taken on the Mobile Device",
792+ "annotations": {
793+ "required": [
794+ "directory.mobiledevices.action"
795+ ]
796+ }
797+ }
798+ }
799+ },
800+ "MobileDevices": {
801+ "id": "MobileDevices",
802+ "type": "object",
803+ "description": "JSON response template for List Mobile Devices operation in Directory API.",
804+ "properties": {
805+ "etag": {
806+ "type": "string",
807+ "description": "ETag of the resource."
808+ },
809+ "kind": {
810+ "type": "string",
811+ "description": "Kind of resource this is.",
812+ "default": "admin#directory#mobiledevices"
813+ },
814+ "mobiledevices": {
815+ "type": "array",
816+ "description": "List of Mobile Device objects.",
817+ "items": {
818+ "$ref": "MobileDevice"
819+ }
820+ },
821+ "nextPageToken": {
822+ "type": "string",
823+ "description": "Token used to access next page of this result."
824+ }
825+ }
826+ },
827+ "Notification": {
828+ "id": "Notification",
829+ "type": "object",
830+ "description": "Template for a notification resource.",
831+ "properties": {
832+ "body": {
833+ "type": "string",
834+ "description": "Body of the notification (Read-only)"
835+ },
836+ "etag": {
837+ "type": "string",
838+ "description": "ETag of the resource."
839+ },
840+ "fromAddress": {
841+ "type": "string",
842+ "description": "Address from which the notification is received (Read-only)"
843+ },
844+ "isUnread": {
845+ "type": "boolean",
846+ "description": "Boolean indicating whether the notification is unread or not.",
847+ "annotations": {
848+ "required": [
849+ "directory.notifications.patch",
850+ "directory.notifications.update"
851+ ]
852+ }
853+ },
854+ "kind": {
855+ "type": "string",
856+ "description": "The type of the resource.",
857+ "default": "admin#directory#notification"
858+ },
859+ "notificationId": {
860+ "type": "string"
861+ },
862+ "sendTime": {
863+ "type": "string",
864+ "description": "Time at which notification was sent (Read-only)",
865+ "format": "date-time"
866+ },
867+ "subject": {
868+ "type": "string",
869+ "description": "Subject of the notification (Read-only)"
870+ }
871+ }
872+ },
873+ "Notifications": {
874+ "id": "Notifications",
875+ "type": "object",
876+ "description": "Template for notifications list response.",
877+ "properties": {
878+ "etag": {
879+ "type": "string",
880+ "description": "ETag of the resource."
881+ },
882+ "items": {
883+ "type": "array",
884+ "description": "List of notifications in this page.",
885+ "items": {
886+ "$ref": "Notification"
887+ }
888+ },
889+ "kind": {
890+ "type": "string",
891+ "description": "The type of the resource.",
892+ "default": "admin#directory#notifications"
893+ },
894+ "nextPageToken": {
895+ "type": "string",
896+ "description": "Token for fetching the next page of notifications."
897+ },
898+ "unreadNotificationsCount": {
899+ "type": "integer",
900+ "description": "Number of unread notification for the domain.",
901+ "format": "int32"
902+ }
903+ }
904+ },
905+ "OrgUnit": {
906+ "id": "OrgUnit",
907+ "type": "object",
908+ "description": "JSON template for Org Unit resource in Directory API.",
909+ "properties": {
910+ "blockInheritance": {
911+ "type": "boolean",
912+ "description": "Should block inheritance"
913+ },
914+ "description": {
915+ "type": "string",
916+ "description": "Description of OrgUnit"
917+ },
918+ "etag": {
919+ "type": "string",
920+ "description": "ETag of the resource."
921+ },
922+ "kind": {
923+ "type": "string",
924+ "description": "Kind of resource this is.",
925+ "default": "admin#directory#orgUnit"
926+ },
927+ "name": {
928+ "type": "string",
929+ "description": "Name of OrgUnit",
930+ "annotations": {
931+ "required": [
932+ "directory.orgunits.insert"
933+ ]
934+ }
935+ },
936+ "orgUnitId": {
937+ "type": "string",
938+ "description": "Id of OrgUnit"
939+ },
940+ "orgUnitPath": {
941+ "type": "string",
942+ "description": "Path of OrgUnit"
943+ },
944+ "parentOrgUnitId": {
945+ "type": "string",
946+ "description": "Id of parent OrgUnit"
947+ },
948+ "parentOrgUnitPath": {
949+ "type": "string",
950+ "description": "Path of parent OrgUnit"
951+ }
952+ }
953+ },
954+ "OrgUnits": {
955+ "id": "OrgUnits",
956+ "type": "object",
957+ "description": "JSON response template for List Organization Units operation in Directory API.",
958+ "properties": {
959+ "etag": {
960+ "type": "string",
961+ "description": "ETag of the resource."
962+ },
963+ "kind": {
964+ "type": "string",
965+ "description": "Kind of resource this is.",
966+ "default": "admin#directory#orgUnits"
967+ },
968+ "organizationUnits": {
969+ "type": "array",
970+ "description": "List of user objects.",
971+ "items": {
972+ "$ref": "OrgUnit"
973+ }
974+ }
975+ }
976+ },
977+ "Schema": {
978+ "id": "Schema",
979+ "type": "object",
980+ "description": "JSON template for Schema resource in Directory API.",
981+ "properties": {
982+ "etag": {
983+ "type": "string",
984+ "description": "ETag of the resource."
985+ },
986+ "fields": {
987+ "type": "array",
988+ "description": "Fields of Schema",
989+ "items": {
990+ "$ref": "SchemaFieldSpec"
991+ },
992+ "annotations": {
993+ "required": [
994+ "directory.schemas.insert",
995+ "directory.schemas.update"
996+ ]
997+ }
998+ },
999+ "kind": {
1000+ "type": "string",
1001+ "description": "Kind of resource this is.",
1002+ "default": "admin#directory#schema"
1003+ },
1004+ "schemaId": {
1005+ "type": "string",
1006+ "description": "Unique identifier of Schema (Read-only)"
1007+ },
1008+ "schemaName": {
1009+ "type": "string",
1010+ "description": "Schema name",
1011+ "annotations": {
1012+ "required": [
1013+ "directory.schemas.insert"
1014+ ]
1015+ }
1016+ }
1017+ }
1018+ },
1019+ "SchemaFieldSpec": {
1020+ "id": "SchemaFieldSpec",
1021+ "type": "object",
1022+ "description": "JSON template for FieldSpec resource for Schemas in Directory API.",
1023+ "properties": {
1024+ "etag": {
1025+ "type": "string",
1026+ "description": "ETag of the resource."
1027+ },
1028+ "fieldId": {
1029+ "type": "string",
1030+ "description": "Unique identifier of Field (Read-only)"
1031+ },
1032+ "fieldName": {
1033+ "type": "string",
1034+ "description": "Name of the field.",
1035+ "annotations": {
1036+ "required": [
1037+ "directory.schemas.insert",
1038+ "directory.schemas.update"
1039+ ]
1040+ }
1041+ },
1042+ "fieldType": {
1043+ "type": "string",
1044+ "description": "Type of the field.",
1045+ "annotations": {
1046+ "required": [
1047+ "directory.schemas.insert",
1048+ "directory.schemas.update"
1049+ ]
1050+ }
1051+ },
1052+ "indexed": {
1053+ "type": "boolean",
1054+ "description": "Boolean specifying whether the field is indexed or not.",
1055+ "default": "true"
1056+ },
1057+ "kind": {
1058+ "type": "string",
1059+ "description": "Kind of resource this is.",
1060+ "default": "admin#directory#schema#fieldspec"
1061+ },
1062+ "multiValued": {
1063+ "type": "boolean",
1064+ "description": "Boolean specifying whether this is a multi-valued field or not."
1065+ },
1066+ "numericIndexingSpec": {
1067+ "type": "object",
1068+ "description": "Indexing spec for a numeric field. By default, only exact match queries will be supported for numeric fields. Setting the numericIndexingSpec allows range queries to be supported.",
1069+ "properties": {
1070+ "maxValue": {
1071+ "type": "number",
1072+ "description": "Maximum value of this field. This is meant to be indicative rather than enforced. Values outside this range will still be indexed, but search may not be as performant.",
1073+ "format": "double"
1074+ },
1075+ "minValue": {
1076+ "type": "number",
1077+ "description": "Minimum value of this field. This is meant to be indicative rather than enforced. Values outside this range will still be indexed, but search may not be as performant.",
1078+ "format": "double"
1079+ }
1080+ }
1081+ },
1082+ "readAccessType": {
1083+ "type": "string",
1084+ "description": "Read ACLs on the field specifying who can view values of this field. Valid values are \"ALL_DOMAIN_USERS\" and \"ADMINS_AND_SELF\".",
1085+ "default": "ALL_DOMAIN_USERS"
1086+ }
1087+ }
1088+ },
1089+ "Schemas": {
1090+ "id": "Schemas",
1091+ "type": "object",
1092+ "description": "JSON response template for List Schema operation in Directory API.",
1093+ "properties": {
1094+ "etag": {
1095+ "type": "string",
1096+ "description": "ETag of the resource."
1097+ },
1098+ "kind": {
1099+ "type": "string",
1100+ "description": "Kind of resource this is.",
1101+ "default": "admin#directory#schemas"
1102+ },
1103+ "schemas": {
1104+ "type": "array",
1105+ "description": "List of UserSchema objects.",
1106+ "items": {
1107+ "$ref": "Schema"
1108+ }
1109+ }
1110+ }
1111+ },
1112+ "Token": {
1113+ "id": "Token",
1114+ "type": "object",
1115+ "description": "JSON template for token resource in Directory API.",
1116+ "properties": {
1117+ "anonymous": {
1118+ "type": "boolean",
1119+ "description": "Whether the application is registered with Google. The value is true if the application has an anonymous Client ID."
1120+ },
1121+ "clientId": {
1122+ "type": "string",
1123+ "description": "The Client ID of the application the token is issued to."
1124+ },
1125+ "displayText": {
1126+ "type": "string",
1127+ "description": "The displayable name of the application the token is issued to."
1128+ },
1129+ "etag": {
1130+ "type": "string",
1131+ "description": "ETag of the resource."
1132+ },
1133+ "kind": {
1134+ "type": "string",
1135+ "description": "The type of the API resource. This is always admin#directory#token.",
1136+ "default": "admin#directory#token"
1137+ },
1138+ "nativeApp": {
1139+ "type": "boolean",
1140+ "description": "Whether the token is issued to an installed application. The value is true if the application is installed to a desktop or mobile device."
1141+ },
1142+ "scopes": {
1143+ "type": "array",
1144+ "description": "A list of authorization scopes the application is granted.",
1145+ "items": {
1146+ "type": "string"
1147+ }
1148+ },
1149+ "userKey": {
1150+ "type": "string",
1151+ "description": "The unique ID of the user that issued the token."
1152+ }
1153+ }
1154+ },
1155+ "Tokens": {
1156+ "id": "Tokens",
1157+ "type": "object",
1158+ "description": "JSON response template for List tokens operation in Directory API.",
1159+ "properties": {
1160+ "etag": {
1161+ "type": "string",
1162+ "description": "ETag of the resource."
1163+ },
1164+ "items": {
1165+ "type": "array",
1166+ "description": "A list of Token resources.",
1167+ "items": {
1168+ "$ref": "Token"
1169+ }
1170+ },
1171+ "kind": {
1172+ "type": "string",
1173+ "description": "The type of the API resource. This is always admin#directory#tokenList.",
1174+ "default": "admin#directory#tokenList"
1175+ }
1176+ }
1177+ },
1178+ "User": {
1179+ "id": "User",
1180+ "type": "object",
1181+ "description": "JSON template for User object in Directory API.",
1182+ "properties": {
1183+ "addresses": {
1184+ "type": "any"
1185+ },
1186+ "agreedToTerms": {
1187+ "type": "boolean",
1188+ "description": "Indicates if user has agreed to terms (Read-only)"
1189+ },
1190+ "aliases": {
1191+ "type": "array",
1192+ "description": "List of aliases (Read-only)",
1193+ "items": {
1194+ "type": "string"
1195+ }
1196+ },
1197+ "changePasswordAtNextLogin": {
1198+ "type": "boolean",
1199+ "description": "Boolean indicating if the user should change password in next login"
1200+ },
1201+ "creationTime": {
1202+ "type": "string",
1203+ "description": "User's Google account creation time. (Read-only)",
1204+ "format": "date-time"
1205+ },
1206+ "customSchemas": {
1207+ "type": "object",
1208+ "description": "Custom fields of the user.",
1209+ "additionalProperties": {
1210+ "$ref": "UserCustomProperties"
1211+ }
1212+ },
1213+ "customerId": {
1214+ "type": "string",
1215+ "description": "CustomerId of User (Read-only)"
1216+ },
1217+ "deletionTime": {
1218+ "type": "string",
1219+ "format": "date-time"
1220+ },
1221+ "emails": {
1222+ "type": "any"
1223+ },
1224+ "etag": {
1225+ "type": "string",
1226+ "description": "ETag of the resource."
1227+ },
1228+ "externalIds": {
1229+ "type": "any"
1230+ },
1231+ "hashFunction": {
1232+ "type": "string",
1233+ "description": "Hash function name for password. Supported are MD5, SHA-1 and crypt"
1234+ },
1235+ "id": {
1236+ "type": "string",
1237+ "description": "Unique identifier of User (Read-only)"
1238+ },
1239+ "ims": {
1240+ "type": "any"
1241+ },
1242+ "includeInGlobalAddressList": {
1243+ "type": "boolean",
1244+ "description": "Boolean indicating if user is included in Global Address List"
1245+ },
1246+ "ipWhitelisted": {
1247+ "type": "boolean",
1248+ "description": "Boolean indicating if ip is whitelisted"
1249+ },
1250+ "isAdmin": {
1251+ "type": "boolean",
1252+ "description": "Boolean indicating if the user is admin (Read-only)"
1253+ },
1254+ "isDelegatedAdmin": {
1255+ "type": "boolean",
1256+ "description": "Boolean indicating if the user is delegated admin (Read-only)"
1257+ },
1258+ "isMailboxSetup": {
1259+ "type": "boolean",
1260+ "description": "Is mailbox setup (Read-only)"
1261+ },
1262+ "kind": {
1263+ "type": "string",
1264+ "description": "Kind of resource this is.",
1265+ "default": "admin#directory#user"
1266+ },
1267+ "lastLoginTime": {
1268+ "type": "string",
1269+ "description": "User's last login time. (Read-only)",
1270+ "format": "date-time"
1271+ },
1272+ "name": {
1273+ "$ref": "UserName",
1274+ "description": "User's name",
1275+ "annotations": {
1276+ "required": [
1277+ "directory.users.insert"
1278+ ]
1279+ }
1280+ },
1281+ "nonEditableAliases": {
1282+ "type": "array",
1283+ "description": "List of non editable aliases (Read-only)",
1284+ "items": {
1285+ "type": "string"
1286+ }
1287+ },
1288+ "notes": {
1289+ "type": "any"
1290+ },
1291+ "orgUnitPath": {
1292+ "type": "string",
1293+ "description": "OrgUnit of User"
1294+ },
1295+ "organizations": {
1296+ "type": "any"
1297+ },
1298+ "password": {
1299+ "type": "string",
1300+ "description": "User's password",
1301+ "annotations": {
1302+ "required": [
1303+ "directory.users.insert"
1304+ ]
1305+ }
1306+ },
1307+ "phones": {
1308+ "type": "any"
1309+ },
1310+ "primaryEmail": {
1311+ "type": "string",
1312+ "description": "username of User",
1313+ "annotations": {
1314+ "required": [
1315+ "directory.users.insert"
1316+ ]
1317+ }
1318+ },
1319+ "relations": {
1320+ "type": "any"
1321+ },
1322+ "suspended": {
1323+ "type": "boolean",
1324+ "description": "Indicates if user is suspended"
1325+ },
1326+ "suspensionReason": {
1327+ "type": "string",
1328+ "description": "Suspension reason if user is suspended (Read-only)"
1329+ },
1330+ "thumbnailPhotoEtag": {
1331+ "type": "string",
1332+ "description": "ETag of the user's photo (Read-only)"
1333+ },
1334+ "thumbnailPhotoUrl": {
1335+ "type": "string",
1336+ "description": "Photo Url of the user (Read-only)"
1337+ },
1338+ "websites": {
1339+ "type": "any"
1340+ }
1341+ }
1342+ },
1343+ "UserAbout": {
1344+ "id": "UserAbout",
1345+ "type": "object",
1346+ "description": "JSON template for About (notes) of a user in Directory API.",
1347+ "properties": {
1348+ "contentType": {
1349+ "type": "string",
1350+ "description": "About entry can have a type which indicates the content type. It can either be plain or html. By default, notes contents are assumed to contain plain text."
1351+ },
1352+ "value": {
1353+ "type": "string",
1354+ "description": "Actual value of notes."
1355+ }
1356+ }
1357+ },
1358+ "UserAddress": {
1359+ "id": "UserAddress",
1360+ "type": "object",
1361+ "description": "JSON template for address.",
1362+ "properties": {
1363+ "country": {
1364+ "type": "string",
1365+ "description": "Country."
1366+ },
1367+ "countryCode": {
1368+ "type": "string",
1369+ "description": "Country code."
1370+ },
1371+ "customType": {
1372+ "type": "string",
1373+ "description": "Custom type."
1374+ },
1375+ "extendedAddress": {
1376+ "type": "string",
1377+ "description": "Extended Address."
1378+ },
1379+ "formatted": {
1380+ "type": "string",
1381+ "description": "Formatted address."
1382+ },
1383+ "locality": {
1384+ "type": "string",
1385+ "description": "Locality."
1386+ },
1387+ "poBox": {
1388+ "type": "string",
1389+ "description": "Other parts of address."
1390+ },
1391+ "postalCode": {
1392+ "type": "string",
1393+ "description": "Postal code."
1394+ },
1395+ "primary": {
1396+ "type": "boolean",
1397+ "description": "If this is user's primary address. Only one entry could be marked as primary."
1398+ },
1399+ "region": {
1400+ "type": "string",
1401+ "description": "Region."
1402+ },
1403+ "sourceIsStructured": {
1404+ "type": "boolean",
1405+ "description": "User supplied address was structured. Structured addresses are NOT supported at this time. You might be able to write structured addresses, but any values will eventually be clobbered."
1406+ },
1407+ "streetAddress": {
1408+ "type": "string",
1409+ "description": "Street."
1410+ },
1411+ "type": {
1412+ "type": "string",
1413+ "description": "Each entry can have a type which indicates standard values of that entry. For example address could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such type should have the CUSTOM value as type and also have a customType value."
1414+ }
1415+ }
1416+ },
1417+ "UserCustomProperties": {
1418+ "id": "UserCustomProperties",
1419+ "type": "object",
1420+ "description": "JSON template for a set of custom properties (i.e. all fields in a particular schema)",
1421+ "additionalProperties": {
1422+ "type": "any"
1423+ }
1424+ },
1425+ "UserEmail": {
1426+ "id": "UserEmail",
1427+ "type": "object",
1428+ "description": "JSON template for an email.",
1429+ "properties": {
1430+ "address": {
1431+ "type": "string",
1432+ "description": "Email id of the user."
1433+ },
1434+ "customType": {
1435+ "type": "string",
1436+ "description": "Custom Type."
1437+ },
1438+ "primary": {
1439+ "type": "boolean",
1440+ "description": "If this is user's primary email. Only one entry could be marked as primary."
1441+ },
1442+ "type": {
1443+ "type": "string",
1444+ "description": "Each entry can have a type which indicates standard types of that entry. For example email could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value Such types should have the CUSTOM value as type and also have a customType value."
1445+ }
1446+ }
1447+ },
1448+ "UserExternalId": {
1449+ "id": "UserExternalId",
1450+ "type": "object",
1451+ "description": "JSON template for an externalId entry.",
1452+ "properties": {
1453+ "customType": {
1454+ "type": "string",
1455+ "description": "Custom type."
1456+ },
1457+ "type": {
1458+ "type": "string",
1459+ "description": "The type of the Id."
1460+ },
1461+ "value": {
1462+ "type": "string",
1463+ "description": "The value of the id."
1464+ }
1465+ }
1466+ },
1467+ "UserIm": {
1468+ "id": "UserIm",
1469+ "type": "object",
1470+ "description": "JSON template for instant messenger of an user.",
1471+ "properties": {
1472+ "customProtocol": {
1473+ "type": "string",
1474+ "description": "Custom protocol."
1475+ },
1476+ "customType": {
1477+ "type": "string",
1478+ "description": "Custom type."
1479+ },
1480+ "im": {
1481+ "type": "string",
1482+ "description": "Instant messenger id."
1483+ },
1484+ "primary": {
1485+ "type": "boolean",
1486+ "description": "If this is user's primary im. Only one entry could be marked as primary."
1487+ },
1488+ "protocol": {
1489+ "type": "string",
1490+ "description": "Protocol used in the instant messenger. It should be one of the values from ImProtocolTypes map. Similar to type, it can take a CUSTOM value and specify the custom name in customProtocol field."
1491+ },
1492+ "type": {
1493+ "type": "string",
1494+ "description": "Each entry can have a type which indicates standard types of that entry. For example instant messengers could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such types should have the CUSTOM value as type and also have a customType value."
1495+ }
1496+ }
1497+ },
1498+ "UserMakeAdmin": {
1499+ "id": "UserMakeAdmin",
1500+ "type": "object",
1501+ "description": "JSON request template for setting/revoking admin status of a user in Directory API.",
1502+ "properties": {
1503+ "status": {
1504+ "type": "boolean",
1505+ "description": "Boolean indicating new admin status of the user",
1506+ "annotations": {
1507+ "required": [
1508+ "directory.users.makeAdmin"
1509+ ]
1510+ }
1511+ }
1512+ }
1513+ },
1514+ "UserName": {
1515+ "id": "UserName",
1516+ "type": "object",
1517+ "description": "JSON template for name of a user in Directory API.",
1518+ "properties": {
1519+ "familyName": {
1520+ "type": "string",
1521+ "description": "Last Name",
1522+ "annotations": {
1523+ "required": [
1524+ "directory.users.insert"
1525+ ]
1526+ }
1527+ },
1528+ "fullName": {
1529+ "type": "string",
1530+ "description": "Full Name"
1531+ },
1532+ "givenName": {
1533+ "type": "string",
1534+ "description": "First Name",
1535+ "annotations": {
1536+ "required": [
1537+ "directory.users.insert"
1538+ ]
1539+ }
1540+ }
1541+ }
1542+ },
1543+ "UserOrganization": {
1544+ "id": "UserOrganization",
1545+ "type": "object",
1546+ "description": "JSON template for an organization entry.",
1547+ "properties": {
1548+ "costCenter": {
1549+ "type": "string",
1550+ "description": "The cost center of the users department."
1551+ },
1552+ "customType": {
1553+ "type": "string",
1554+ "description": "Custom type."
1555+ },
1556+ "department": {
1557+ "type": "string",
1558+ "description": "Department within the organization."
1559+ },
1560+ "description": {
1561+ "type": "string",
1562+ "description": "Description of the organization."
1563+ },
1564+ "domain": {
1565+ "type": "string",
1566+ "description": "The domain to which the organization belongs to."
1567+ },
1568+ "location": {
1569+ "type": "string",
1570+ "description": "Location of the organization. This need not be fully qualified address."
1571+ },
1572+ "name": {
1573+ "type": "string",
1574+ "description": "Name of the organization"
1575+ },
1576+ "primary": {
1577+ "type": "boolean",
1578+ "description": "If it user's primary organization."
1579+ },
1580+ "symbol": {
1581+ "type": "string",
1582+ "description": "Symbol of the organization."
1583+ },
1584+ "title": {
1585+ "type": "string",
1586+ "description": "Title (designation) of the user in the organization."
1587+ },
1588+ "type": {
1589+ "type": "string",
1590+ "description": "Each entry can have a type which indicates standard types of that entry. For example organization could be of school, work etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a CustomType value."
1591+ }
1592+ }
1593+ },
1594+ "UserPhone": {
1595+ "id": "UserPhone",
1596+ "type": "object",
1597+ "description": "JSON template for a phone entry.",
1598+ "properties": {
1599+ "customType": {
1600+ "type": "string",
1601+ "description": "Custom Type."
1602+ },
1603+ "primary": {
1604+ "type": "boolean",
1605+ "description": "If this is user's primary phone or not."
1606+ },
1607+ "type": {
1608+ "type": "string",
1609+ "description": "Each entry can have a type which indicates standard types of that entry. For example phone could be of home_fax, work, mobile etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value."
1610+ },
1611+ "value": {
1612+ "type": "string",
1613+ "description": "Phone number."
1614+ }
1615+ }
1616+ },
1617+ "UserPhoto": {
1618+ "id": "UserPhoto",
1619+ "type": "object",
1620+ "description": "JSON template for Photo object in Directory API.",
1621+ "properties": {
1622+ "etag": {
1623+ "type": "string",
1624+ "description": "ETag of the resource."
1625+ },
1626+ "height": {
1627+ "type": "integer",
1628+ "description": "Height in pixels of the photo",
1629+ "format": "int32"
1630+ },
1631+ "id": {
1632+ "type": "string",
1633+ "description": "Unique identifier of User (Read-only)"
1634+ },
1635+ "kind": {
1636+ "type": "string",
1637+ "description": "Kind of resource this is.",
1638+ "default": "admin#directory#user#photo"
1639+ },
1640+ "mimeType": {
1641+ "type": "string",
1642+ "description": "Mime Type of the photo"
1643+ },
1644+ "photoData": {
1645+ "type": "string",
1646+ "description": "Base64 encoded photo data",
1647+ "format": "byte",
1648+ "annotations": {
1649+ "required": [
1650+ "directory.users.photos.update"
1651+ ]
1652+ }
1653+ },
1654+ "primaryEmail": {
1655+ "type": "string",
1656+ "description": "Primary email of User (Read-only)"
1657+ },
1658+ "width": {
1659+ "type": "integer",
1660+ "description": "Width in pixels of the photo",
1661+ "format": "int32"
1662+ }
1663+ }
1664+ },
1665+ "UserRelation": {
1666+ "id": "UserRelation",
1667+ "type": "object",
1668+ "description": "JSON template for a relation entry.",
1669+ "properties": {
1670+ "customType": {
1671+ "type": "string",
1672+ "description": "Custom Type."
1673+ },
1674+ "type": {
1675+ "type": "string",
1676+ "description": "The relation of the user. Some of the possible values are mother, father, sister, brother, manager, assistant, partner."
1677+ },
1678+ "value": {
1679+ "type": "string",
1680+ "description": "The name of the relation."
1681+ }
1682+ }
1683+ },
1684+ "UserUndelete": {
1685+ "id": "UserUndelete",
1686+ "type": "object",
1687+ "description": "JSON request template to undelete a user in Directory API.",
1688+ "properties": {
1689+ "orgUnitPath": {
1690+ "type": "string",
1691+ "description": "OrgUnit of User"
1692+ }
1693+ }
1694+ },
1695+ "UserWebsite": {
1696+ "id": "UserWebsite",
1697+ "type": "object",
1698+ "description": "JSON template for a website entry.",
1699+ "properties": {
1700+ "customType": {
1701+ "type": "string",
1702+ "description": "Custom Type."
1703+ },
1704+ "primary": {
1705+ "type": "boolean",
1706+ "description": "If this is user's primary website or not."
1707+ },
1708+ "type": {
1709+ "type": "string",
1710+ "description": "Each entry can have a type which indicates standard types of that entry. For example website could be of home, work, blog etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value."
1711+ },
1712+ "value": {
1713+ "type": "string",
1714+ "description": "Website."
1715+ }
1716+ }
1717+ },
1718+ "Users": {
1719+ "id": "Users",
1720+ "type": "object",
1721+ "description": "JSON response template for List Users operation in Apps Directory API.",
1722+ "properties": {
1723+ "etag": {
1724+ "type": "string",
1725+ "description": "ETag of the resource."
1726+ },
1727+ "kind": {
1728+ "type": "string",
1729+ "description": "Kind of resource this is.",
1730+ "default": "admin#directory#users"
1731+ },
1732+ "nextPageToken": {
1733+ "type": "string",
1734+ "description": "Token used to access next page of this result."
1735+ },
1736+ "trigger_event": {
1737+ "type": "string",
1738+ "description": "Event that triggered this response (only used in case of Push Response)"
1739+ },
1740+ "users": {
1741+ "type": "array",
1742+ "description": "List of user objects.",
1743+ "items": {
1744+ "$ref": "User"
1745+ }
1746+ }
1747+ }
1748+ },
1749+ "VerificationCode": {
1750+ "id": "VerificationCode",
1751+ "type": "object",
1752+ "description": "JSON template for verification codes in Directory API.",
1753+ "properties": {
1754+ "etag": {
1755+ "type": "string",
1756+ "description": "ETag of the resource."
1757+ },
1758+ "kind": {
1759+ "type": "string",
1760+ "description": "The type of the resource. This is always admin#directory#verificationCode.",
1761+ "default": "admin#directory#verificationCode"
1762+ },
1763+ "userId": {
1764+ "type": "string",
1765+ "description": "The obfuscated unique ID of the user."
1766+ },
1767+ "verificationCode": {
1768+ "type": "string",
1769+ "description": "A current verification code for the user. Invalidated or used verification codes are not returned as part of the result."
1770+ }
1771+ }
1772+ },
1773+ "VerificationCodes": {
1774+ "id": "VerificationCodes",
1775+ "type": "object",
1776+ "description": "JSON response template for List verification codes operation in Directory API.",
1777+ "properties": {
1778+ "etag": {
1779+ "type": "string",
1780+ "description": "ETag of the resource."
1781+ },
1782+ "items": {
1783+ "type": "array",
1784+ "description": "A list of verification code resources.",
1785+ "items": {
1786+ "$ref": "VerificationCode"
1787+ }
1788+ },
1789+ "kind": {
1790+ "type": "string",
1791+ "description": "The type of the resource. This is always admin#directory#verificationCodesList.",
1792+ "default": "admin#directory#verificationCodesList"
1793+ }
1794+ }
1795+ }
1796+ },
1797+ "resources": {
1798+ "asps": {
1799+ "methods": {
1800+ "delete": {
1801+ "id": "directory.asps.delete",
1802+ "path": "users/{userKey}/asps/{codeId}",
1803+ "httpMethod": "DELETE",
1804+ "description": "Delete an ASP issued by a user.",
1805+ "parameters": {
1806+ "codeId": {
1807+ "type": "integer",
1808+ "description": "The unique ID of the ASP to be deleted.",
1809+ "required": true,
1810+ "format": "int32",
1811+ "location": "path"
1812+ },
1813+ "userKey": {
1814+ "type": "string",
1815+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
1816+ "required": true,
1817+ "location": "path"
1818+ }
1819+ },
1820+ "parameterOrder": [
1821+ "userKey",
1822+ "codeId"
1823+ ],
1824+ "scopes": [
1825+ "https://www.googleapis.com/auth/admin.directory.user.security"
1826+ ]
1827+ },
1828+ "get": {
1829+ "id": "directory.asps.get",
1830+ "path": "users/{userKey}/asps/{codeId}",
1831+ "httpMethod": "GET",
1832+ "description": "Get information about an ASP issued by a user.",
1833+ "parameters": {
1834+ "codeId": {
1835+ "type": "integer",
1836+ "description": "The unique ID of the ASP.",
1837+ "required": true,
1838+ "format": "int32",
1839+ "location": "path"
1840+ },
1841+ "userKey": {
1842+ "type": "string",
1843+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
1844+ "required": true,
1845+ "location": "path"
1846+ }
1847+ },
1848+ "parameterOrder": [
1849+ "userKey",
1850+ "codeId"
1851+ ],
1852+ "response": {
1853+ "$ref": "Asp"
1854+ },
1855+ "scopes": [
1856+ "https://www.googleapis.com/auth/admin.directory.user.security"
1857+ ]
1858+ },
1859+ "list": {
1860+ "id": "directory.asps.list",
1861+ "path": "users/{userKey}/asps",
1862+ "httpMethod": "GET",
1863+ "description": "List the ASPs issued by a user.",
1864+ "parameters": {
1865+ "userKey": {
1866+ "type": "string",
1867+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
1868+ "required": true,
1869+ "location": "path"
1870+ }
1871+ },
1872+ "parameterOrder": [
1873+ "userKey"
1874+ ],
1875+ "response": {
1876+ "$ref": "Asps"
1877+ },
1878+ "scopes": [
1879+ "https://www.googleapis.com/auth/admin.directory.user.security"
1880+ ]
1881+ }
1882+ }
1883+ },
1884+ "channels": {
1885+ "methods": {
1886+ "stop": {
1887+ "id": "admin.channels.stop",
1888+ "path": "/admin/directory_v1/channels/stop",
1889+ "httpMethod": "POST",
1890+ "description": "Stop watching resources through this channel",
1891+ "request": {
1892+ "$ref": "Channel",
1893+ "parameterName": "resource"
1894+ },
1895+ "scopes": [
1896+ "https://www.googleapis.com/auth/admin.directory.user",
1897+ "https://www.googleapis.com/auth/admin.directory.user.alias",
1898+ "https://www.googleapis.com/auth/admin.directory.user.alias.readonly",
1899+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
1900+ ]
1901+ }
1902+ }
1903+ },
1904+ "chromeosdevices": {
1905+ "methods": {
1906+ "get": {
1907+ "id": "directory.chromeosdevices.get",
1908+ "path": "customer/{customerId}/devices/chromeos/{deviceId}",
1909+ "httpMethod": "GET",
1910+ "description": "Retrieve Chrome OS Device",
1911+ "parameters": {
1912+ "customerId": {
1913+ "type": "string",
1914+ "description": "Immutable id of the Google Apps account",
1915+ "required": true,
1916+ "location": "path"
1917+ },
1918+ "deviceId": {
1919+ "type": "string",
1920+ "description": "Immutable id of Chrome OS Device",
1921+ "required": true,
1922+ "location": "path"
1923+ },
1924+ "projection": {
1925+ "type": "string",
1926+ "description": "Restrict information returned to a set of selected fields.",
1927+ "enum": [
1928+ "BASIC",
1929+ "FULL"
1930+ ],
1931+ "enumDescriptions": [
1932+ "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)",
1933+ "Includes all metadata fields"
1934+ ],
1935+ "location": "query"
1936+ }
1937+ },
1938+ "parameterOrder": [
1939+ "customerId",
1940+ "deviceId"
1941+ ],
1942+ "response": {
1943+ "$ref": "ChromeOsDevice"
1944+ },
1945+ "scopes": [
1946+ "https://www.googleapis.com/auth/admin.directory.device.chromeos",
1947+ "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly"
1948+ ]
1949+ },
1950+ "list": {
1951+ "id": "directory.chromeosdevices.list",
1952+ "path": "customer/{customerId}/devices/chromeos",
1953+ "httpMethod": "GET",
1954+ "description": "Retrieve all Chrome OS Devices of a customer (paginated)",
1955+ "parameters": {
1956+ "customerId": {
1957+ "type": "string",
1958+ "description": "Immutable id of the Google Apps account",
1959+ "required": true,
1960+ "location": "path"
1961+ },
1962+ "maxResults": {
1963+ "type": "integer",
1964+ "description": "Maximum number of results to return. Default is 100",
1965+ "format": "int32",
1966+ "minimum": "1",
1967+ "location": "query"
1968+ },
1969+ "orderBy": {
1970+ "type": "string",
1971+ "description": "Column to use for sorting results",
1972+ "enum": [
1973+ "annotatedLocation",
1974+ "annotatedUser",
1975+ "lastSync",
1976+ "notes",
1977+ "serialNumber",
1978+ "status",
1979+ "supportEndDate"
1980+ ],
1981+ "enumDescriptions": [
1982+ "Chromebook location as annotated by the administrator.",
1983+ "Chromebook user as annotated by administrator.",
1984+ "Chromebook last sync.",
1985+ "Chromebook notes as annotated by the administrator.",
1986+ "Chromebook Serial Number.",
1987+ "Chromebook status.",
1988+ "Chromebook support end date."
1989+ ],
1990+ "location": "query"
1991+ },
1992+ "pageToken": {
1993+ "type": "string",
1994+ "description": "Token to specify next page in the list",
1995+ "location": "query"
1996+ },
1997+ "projection": {
1998+ "type": "string",
1999+ "description": "Restrict information returned to a set of selected fields.",
2000+ "enum": [
2001+ "BASIC",
2002+ "FULL"
2003+ ],
2004+ "enumDescriptions": [
2005+ "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)",
2006+ "Includes all metadata fields"
2007+ ],
2008+ "location": "query"
2009+ },
2010+ "query": {
2011+ "type": "string",
2012+ "description": "Search string in the format given at http://support.google.com/chromeos/a/bin/answer.py?hl=en&answer=1698333",
2013+ "location": "query"
2014+ },
2015+ "sortOrder": {
2016+ "type": "string",
2017+ "description": "Whether to return results in ascending or descending order. Only of use when orderBy is also used",
2018+ "enum": [
2019+ "ASCENDING",
2020+ "DESCENDING"
2021+ ],
2022+ "enumDescriptions": [
2023+ "Ascending order.",
2024+ "Descending order."
2025+ ],
2026+ "location": "query"
2027+ }
2028+ },
2029+ "parameterOrder": [
2030+ "customerId"
2031+ ],
2032+ "response": {
2033+ "$ref": "ChromeOsDevices"
2034+ },
2035+ "scopes": [
2036+ "https://www.googleapis.com/auth/admin.directory.device.chromeos",
2037+ "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly"
2038+ ]
2039+ },
2040+ "patch": {
2041+ "id": "directory.chromeosdevices.patch",
2042+ "path": "customer/{customerId}/devices/chromeos/{deviceId}",
2043+ "httpMethod": "PATCH",
2044+ "description": "Update Chrome OS Device. This method supports patch semantics.",
2045+ "parameters": {
2046+ "customerId": {
2047+ "type": "string",
2048+ "description": "Immutable id of the Google Apps account",
2049+ "required": true,
2050+ "location": "path"
2051+ },
2052+ "deviceId": {
2053+ "type": "string",
2054+ "description": "Immutable id of Chrome OS Device",
2055+ "required": true,
2056+ "location": "path"
2057+ },
2058+ "projection": {
2059+ "type": "string",
2060+ "description": "Restrict information returned to a set of selected fields.",
2061+ "enum": [
2062+ "BASIC",
2063+ "FULL"
2064+ ],
2065+ "enumDescriptions": [
2066+ "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)",
2067+ "Includes all metadata fields"
2068+ ],
2069+ "location": "query"
2070+ }
2071+ },
2072+ "parameterOrder": [
2073+ "customerId",
2074+ "deviceId"
2075+ ],
2076+ "request": {
2077+ "$ref": "ChromeOsDevice"
2078+ },
2079+ "response": {
2080+ "$ref": "ChromeOsDevice"
2081+ },
2082+ "scopes": [
2083+ "https://www.googleapis.com/auth/admin.directory.device.chromeos"
2084+ ]
2085+ },
2086+ "update": {
2087+ "id": "directory.chromeosdevices.update",
2088+ "path": "customer/{customerId}/devices/chromeos/{deviceId}",
2089+ "httpMethod": "PUT",
2090+ "description": "Update Chrome OS Device",
2091+ "parameters": {
2092+ "customerId": {
2093+ "type": "string",
2094+ "description": "Immutable id of the Google Apps account",
2095+ "required": true,
2096+ "location": "path"
2097+ },
2098+ "deviceId": {
2099+ "type": "string",
2100+ "description": "Immutable id of Chrome OS Device",
2101+ "required": true,
2102+ "location": "path"
2103+ },
2104+ "projection": {
2105+ "type": "string",
2106+ "description": "Restrict information returned to a set of selected fields.",
2107+ "enum": [
2108+ "BASIC",
2109+ "FULL"
2110+ ],
2111+ "enumDescriptions": [
2112+ "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)",
2113+ "Includes all metadata fields"
2114+ ],
2115+ "location": "query"
2116+ }
2117+ },
2118+ "parameterOrder": [
2119+ "customerId",
2120+ "deviceId"
2121+ ],
2122+ "request": {
2123+ "$ref": "ChromeOsDevice"
2124+ },
2125+ "response": {
2126+ "$ref": "ChromeOsDevice"
2127+ },
2128+ "scopes": [
2129+ "https://www.googleapis.com/auth/admin.directory.device.chromeos"
2130+ ]
2131+ }
2132+ }
2133+ },
2134+ "groups": {
2135+ "methods": {
2136+ "delete": {
2137+ "id": "directory.groups.delete",
2138+ "path": "groups/{groupKey}",
2139+ "httpMethod": "DELETE",
2140+ "description": "Delete Group",
2141+ "parameters": {
2142+ "groupKey": {
2143+ "type": "string",
2144+ "description": "Email or immutable Id of the group",
2145+ "required": true,
2146+ "location": "path"
2147+ }
2148+ },
2149+ "parameterOrder": [
2150+ "groupKey"
2151+ ],
2152+ "scopes": [
2153+ "https://www.googleapis.com/auth/admin.directory.group"
2154+ ]
2155+ },
2156+ "get": {
2157+ "id": "directory.groups.get",
2158+ "path": "groups/{groupKey}",
2159+ "httpMethod": "GET",
2160+ "description": "Retrieve Group",
2161+ "parameters": {
2162+ "groupKey": {
2163+ "type": "string",
2164+ "description": "Email or immutable Id of the group",
2165+ "required": true,
2166+ "location": "path"
2167+ }
2168+ },
2169+ "parameterOrder": [
2170+ "groupKey"
2171+ ],
2172+ "response": {
2173+ "$ref": "Group"
2174+ },
2175+ "scopes": [
2176+ "https://www.googleapis.com/auth/admin.directory.group",
2177+ "https://www.googleapis.com/auth/admin.directory.group.readonly"
2178+ ]
2179+ },
2180+ "insert": {
2181+ "id": "directory.groups.insert",
2182+ "path": "groups",
2183+ "httpMethod": "POST",
2184+ "description": "Create Group",
2185+ "request": {
2186+ "$ref": "Group"
2187+ },
2188+ "response": {
2189+ "$ref": "Group"
2190+ },
2191+ "scopes": [
2192+ "https://www.googleapis.com/auth/admin.directory.group"
2193+ ]
2194+ },
2195+ "list": {
2196+ "id": "directory.groups.list",
2197+ "path": "groups",
2198+ "httpMethod": "GET",
2199+ "description": "Retrieve all groups in a domain (paginated)",
2200+ "parameters": {
2201+ "customer": {
2202+ "type": "string",
2203+ "description": "Immutable id of the Google Apps account. In case of multi-domain, to fetch all groups for a customer, fill this field instead of domain.",
2204+ "location": "query"
2205+ },
2206+ "domain": {
2207+ "type": "string",
2208+ "description": "Name of the domain. Fill this field to get groups from only this domain. To return all groups in a multi-domain fill customer field instead.",
2209+ "location": "query"
2210+ },
2211+ "maxResults": {
2212+ "type": "integer",
2213+ "description": "Maximum number of results to return. Default is 200",
2214+ "format": "int32",
2215+ "minimum": "1",
2216+ "location": "query"
2217+ },
2218+ "pageToken": {
2219+ "type": "string",
2220+ "description": "Token to specify next page in the list",
2221+ "location": "query"
2222+ },
2223+ "userKey": {
2224+ "type": "string",
2225+ "description": "Email or immutable Id of the user if only those groups are to be listed, the given user is a member of. If Id, it should match with id of user object",
2226+ "location": "query"
2227+ }
2228+ },
2229+ "response": {
2230+ "$ref": "Groups"
2231+ },
2232+ "scopes": [
2233+ "https://www.googleapis.com/auth/admin.directory.group",
2234+ "https://www.googleapis.com/auth/admin.directory.group.readonly"
2235+ ]
2236+ },
2237+ "patch": {
2238+ "id": "directory.groups.patch",
2239+ "path": "groups/{groupKey}",
2240+ "httpMethod": "PATCH",
2241+ "description": "Update Group. This method supports patch semantics.",
2242+ "parameters": {
2243+ "groupKey": {
2244+ "type": "string",
2245+ "description": "Email or immutable Id of the group. If Id, it should match with id of group object",
2246+ "required": true,
2247+ "location": "path"
2248+ }
2249+ },
2250+ "parameterOrder": [
2251+ "groupKey"
2252+ ],
2253+ "request": {
2254+ "$ref": "Group"
2255+ },
2256+ "response": {
2257+ "$ref": "Group"
2258+ },
2259+ "scopes": [
2260+ "https://www.googleapis.com/auth/admin.directory.group"
2261+ ]
2262+ },
2263+ "update": {
2264+ "id": "directory.groups.update",
2265+ "path": "groups/{groupKey}",
2266+ "httpMethod": "PUT",
2267+ "description": "Update Group",
2268+ "parameters": {
2269+ "groupKey": {
2270+ "type": "string",
2271+ "description": "Email or immutable Id of the group. If Id, it should match with id of group object",
2272+ "required": true,
2273+ "location": "path"
2274+ }
2275+ },
2276+ "parameterOrder": [
2277+ "groupKey"
2278+ ],
2279+ "request": {
2280+ "$ref": "Group"
2281+ },
2282+ "response": {
2283+ "$ref": "Group"
2284+ },
2285+ "scopes": [
2286+ "https://www.googleapis.com/auth/admin.directory.group"
2287+ ]
2288+ }
2289+ },
2290+ "resources": {
2291+ "aliases": {
2292+ "methods": {
2293+ "delete": {
2294+ "id": "directory.groups.aliases.delete",
2295+ "path": "groups/{groupKey}/aliases/{alias}",
2296+ "httpMethod": "DELETE",
2297+ "description": "Remove a alias for the group",
2298+ "parameters": {
2299+ "alias": {
2300+ "type": "string",
2301+ "description": "The alias to be removed",
2302+ "required": true,
2303+ "location": "path"
2304+ },
2305+ "groupKey": {
2306+ "type": "string",
2307+ "description": "Email or immutable Id of the group",
2308+ "required": true,
2309+ "location": "path"
2310+ }
2311+ },
2312+ "parameterOrder": [
2313+ "groupKey",
2314+ "alias"
2315+ ],
2316+ "scopes": [
2317+ "https://www.googleapis.com/auth/admin.directory.group"
2318+ ]
2319+ },
2320+ "insert": {
2321+ "id": "directory.groups.aliases.insert",
2322+ "path": "groups/{groupKey}/aliases",
2323+ "httpMethod": "POST",
2324+ "description": "Add a alias for the group",
2325+ "parameters": {
2326+ "groupKey": {
2327+ "type": "string",
2328+ "description": "Email or immutable Id of the group",
2329+ "required": true,
2330+ "location": "path"
2331+ }
2332+ },
2333+ "parameterOrder": [
2334+ "groupKey"
2335+ ],
2336+ "request": {
2337+ "$ref": "Alias"
2338+ },
2339+ "response": {
2340+ "$ref": "Alias"
2341+ },
2342+ "scopes": [
2343+ "https://www.googleapis.com/auth/admin.directory.group"
2344+ ]
2345+ },
2346+ "list": {
2347+ "id": "directory.groups.aliases.list",
2348+ "path": "groups/{groupKey}/aliases",
2349+ "httpMethod": "GET",
2350+ "description": "List all aliases for a group",
2351+ "parameters": {
2352+ "groupKey": {
2353+ "type": "string",
2354+ "description": "Email or immutable Id of the group",
2355+ "required": true,
2356+ "location": "path"
2357+ }
2358+ },
2359+ "parameterOrder": [
2360+ "groupKey"
2361+ ],
2362+ "response": {
2363+ "$ref": "Aliases"
2364+ },
2365+ "scopes": [
2366+ "https://www.googleapis.com/auth/admin.directory.group",
2367+ "https://www.googleapis.com/auth/admin.directory.group.readonly"
2368+ ],
2369+ "supportsSubscription": true
2370+ }
2371+ }
2372+ }
2373+ }
2374+ },
2375+ "members": {
2376+ "methods": {
2377+ "delete": {
2378+ "id": "directory.members.delete",
2379+ "path": "groups/{groupKey}/members/{memberKey}",
2380+ "httpMethod": "DELETE",
2381+ "description": "Remove membership.",
2382+ "parameters": {
2383+ "groupKey": {
2384+ "type": "string",
2385+ "description": "Email or immutable Id of the group",
2386+ "required": true,
2387+ "location": "path"
2388+ },
2389+ "memberKey": {
2390+ "type": "string",
2391+ "description": "Email or immutable Id of the member",
2392+ "required": true,
2393+ "location": "path"
2394+ }
2395+ },
2396+ "parameterOrder": [
2397+ "groupKey",
2398+ "memberKey"
2399+ ],
2400+ "scopes": [
2401+ "https://www.googleapis.com/auth/admin.directory.group",
2402+ "https://www.googleapis.com/auth/admin.directory.group.member"
2403+ ]
2404+ },
2405+ "get": {
2406+ "id": "directory.members.get",
2407+ "path": "groups/{groupKey}/members/{memberKey}",
2408+ "httpMethod": "GET",
2409+ "description": "Retrieve Group Member",
2410+ "parameters": {
2411+ "groupKey": {
2412+ "type": "string",
2413+ "description": "Email or immutable Id of the group",
2414+ "required": true,
2415+ "location": "path"
2416+ },
2417+ "memberKey": {
2418+ "type": "string",
2419+ "description": "Email or immutable Id of the member",
2420+ "required": true,
2421+ "location": "path"
2422+ }
2423+ },
2424+ "parameterOrder": [
2425+ "groupKey",
2426+ "memberKey"
2427+ ],
2428+ "response": {
2429+ "$ref": "Member"
2430+ },
2431+ "scopes": [
2432+ "https://www.googleapis.com/auth/admin.directory.group",
2433+ "https://www.googleapis.com/auth/admin.directory.group.member",
2434+ "https://www.googleapis.com/auth/admin.directory.group.member.readonly",
2435+ "https://www.googleapis.com/auth/admin.directory.group.readonly"
2436+ ]
2437+ },
2438+ "insert": {
2439+ "id": "directory.members.insert",
2440+ "path": "groups/{groupKey}/members",
2441+ "httpMethod": "POST",
2442+ "description": "Add user to the specified group.",
2443+ "parameters": {
2444+ "groupKey": {
2445+ "type": "string",
2446+ "description": "Email or immutable Id of the group",
2447+ "required": true,
2448+ "location": "path"
2449+ }
2450+ },
2451+ "parameterOrder": [
2452+ "groupKey"
2453+ ],
2454+ "request": {
2455+ "$ref": "Member"
2456+ },
2457+ "response": {
2458+ "$ref": "Member"
2459+ },
2460+ "scopes": [
2461+ "https://www.googleapis.com/auth/admin.directory.group",
2462+ "https://www.googleapis.com/auth/admin.directory.group.member"
2463+ ]
2464+ },
2465+ "list": {
2466+ "id": "directory.members.list",
2467+ "path": "groups/{groupKey}/members",
2468+ "httpMethod": "GET",
2469+ "description": "Retrieve all members in a group (paginated)",
2470+ "parameters": {
2471+ "groupKey": {
2472+ "type": "string",
2473+ "description": "Email or immutable Id of the group",
2474+ "required": true,
2475+ "location": "path"
2476+ },
2477+ "maxResults": {
2478+ "type": "integer",
2479+ "description": "Maximum number of results to return. Default is 200",
2480+ "format": "int32",
2481+ "minimum": "1",
2482+ "location": "query"
2483+ },
2484+ "pageToken": {
2485+ "type": "string",
2486+ "description": "Token to specify next page in the list",
2487+ "location": "query"
2488+ },
2489+ "roles": {
2490+ "type": "string",
2491+ "description": "Comma separated role values to filter list results on.",
2492+ "location": "query"
2493+ }
2494+ },
2495+ "parameterOrder": [
2496+ "groupKey"
2497+ ],
2498+ "response": {
2499+ "$ref": "Members"
2500+ },
2501+ "scopes": [
2502+ "https://www.googleapis.com/auth/admin.directory.group",
2503+ "https://www.googleapis.com/auth/admin.directory.group.member",
2504+ "https://www.googleapis.com/auth/admin.directory.group.member.readonly",
2505+ "https://www.googleapis.com/auth/admin.directory.group.readonly"
2506+ ]
2507+ },
2508+ "patch": {
2509+ "id": "directory.members.patch",
2510+ "path": "groups/{groupKey}/members/{memberKey}",
2511+ "httpMethod": "PATCH",
2512+ "description": "Update membership of a user in the specified group. This method supports patch semantics.",
2513+ "parameters": {
2514+ "groupKey": {
2515+ "type": "string",
2516+ "description": "Email or immutable Id of the group. If Id, it should match with id of group object",
2517+ "required": true,
2518+ "location": "path"
2519+ },
2520+ "memberKey": {
2521+ "type": "string",
2522+ "description": "Email or immutable Id of the user. If Id, it should match with id of member object",
2523+ "required": true,
2524+ "location": "path"
2525+ }
2526+ },
2527+ "parameterOrder": [
2528+ "groupKey",
2529+ "memberKey"
2530+ ],
2531+ "request": {
2532+ "$ref": "Member"
2533+ },
2534+ "response": {
2535+ "$ref": "Member"
2536+ },
2537+ "scopes": [
2538+ "https://www.googleapis.com/auth/admin.directory.group",
2539+ "https://www.googleapis.com/auth/admin.directory.group.member"
2540+ ]
2541+ },
2542+ "update": {
2543+ "id": "directory.members.update",
2544+ "path": "groups/{groupKey}/members/{memberKey}",
2545+ "httpMethod": "PUT",
2546+ "description": "Update membership of a user in the specified group.",
2547+ "parameters": {
2548+ "groupKey": {
2549+ "type": "string",
2550+ "description": "Email or immutable Id of the group. If Id, it should match with id of group object",
2551+ "required": true,
2552+ "location": "path"
2553+ },
2554+ "memberKey": {
2555+ "type": "string",
2556+ "description": "Email or immutable Id of the user. If Id, it should match with id of member object",
2557+ "required": true,
2558+ "location": "path"
2559+ }
2560+ },
2561+ "parameterOrder": [
2562+ "groupKey",
2563+ "memberKey"
2564+ ],
2565+ "request": {
2566+ "$ref": "Member"
2567+ },
2568+ "response": {
2569+ "$ref": "Member"
2570+ },
2571+ "scopes": [
2572+ "https://www.googleapis.com/auth/admin.directory.group",
2573+ "https://www.googleapis.com/auth/admin.directory.group.member"
2574+ ]
2575+ }
2576+ }
2577+ },
2578+ "mobiledevices": {
2579+ "methods": {
2580+ "action": {
2581+ "id": "directory.mobiledevices.action",
2582+ "path": "customer/{customerId}/devices/mobile/{resourceId}/action",
2583+ "httpMethod": "POST",
2584+ "description": "Take action on Mobile Device",
2585+ "parameters": {
2586+ "customerId": {
2587+ "type": "string",
2588+ "description": "Immutable id of the Google Apps account",
2589+ "required": true,
2590+ "location": "path"
2591+ },
2592+ "resourceId": {
2593+ "type": "string",
2594+ "description": "Immutable id of Mobile Device",
2595+ "required": true,
2596+ "location": "path"
2597+ }
2598+ },
2599+ "parameterOrder": [
2600+ "customerId",
2601+ "resourceId"
2602+ ],
2603+ "request": {
2604+ "$ref": "MobileDeviceAction"
2605+ },
2606+ "scopes": [
2607+ "https://www.googleapis.com/auth/admin.directory.device.mobile",
2608+ "https://www.googleapis.com/auth/admin.directory.device.mobile.action"
2609+ ]
2610+ },
2611+ "delete": {
2612+ "id": "directory.mobiledevices.delete",
2613+ "path": "customer/{customerId}/devices/mobile/{resourceId}",
2614+ "httpMethod": "DELETE",
2615+ "description": "Delete Mobile Device",
2616+ "parameters": {
2617+ "customerId": {
2618+ "type": "string",
2619+ "description": "Immutable id of the Google Apps account",
2620+ "required": true,
2621+ "location": "path"
2622+ },
2623+ "resourceId": {
2624+ "type": "string",
2625+ "description": "Immutable id of Mobile Device",
2626+ "required": true,
2627+ "location": "path"
2628+ }
2629+ },
2630+ "parameterOrder": [
2631+ "customerId",
2632+ "resourceId"
2633+ ],
2634+ "scopes": [
2635+ "https://www.googleapis.com/auth/admin.directory.device.mobile"
2636+ ]
2637+ },
2638+ "get": {
2639+ "id": "directory.mobiledevices.get",
2640+ "path": "customer/{customerId}/devices/mobile/{resourceId}",
2641+ "httpMethod": "GET",
2642+ "description": "Retrieve Mobile Device",
2643+ "parameters": {
2644+ "customerId": {
2645+ "type": "string",
2646+ "description": "Immutable id of the Google Apps account",
2647+ "required": true,
2648+ "location": "path"
2649+ },
2650+ "projection": {
2651+ "type": "string",
2652+ "description": "Restrict information returned to a set of selected fields.",
2653+ "enum": [
2654+ "BASIC",
2655+ "FULL"
2656+ ],
2657+ "enumDescriptions": [
2658+ "Includes only the basic metadata fields (e.g., deviceId, model, status, type, and status)",
2659+ "Includes all metadata fields"
2660+ ],
2661+ "location": "query"
2662+ },
2663+ "resourceId": {
2664+ "type": "string",
2665+ "description": "Immutable id of Mobile Device",
2666+ "required": true,
2667+ "location": "path"
2668+ }
2669+ },
2670+ "parameterOrder": [
2671+ "customerId",
2672+ "resourceId"
2673+ ],
2674+ "response": {
2675+ "$ref": "MobileDevice"
2676+ },
2677+ "scopes": [
2678+ "https://www.googleapis.com/auth/admin.directory.device.mobile",
2679+ "https://www.googleapis.com/auth/admin.directory.device.mobile.action",
2680+ "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly"
2681+ ]
2682+ },
2683+ "list": {
2684+ "id": "directory.mobiledevices.list",
2685+ "path": "customer/{customerId}/devices/mobile",
2686+ "httpMethod": "GET",
2687+ "description": "Retrieve all Mobile Devices of a customer (paginated)",
2688+ "parameters": {
2689+ "customerId": {
2690+ "type": "string",
2691+ "description": "Immutable id of the Google Apps account",
2692+ "required": true,
2693+ "location": "path"
2694+ },
2695+ "maxResults": {
2696+ "type": "integer",
2697+ "description": "Maximum number of results to return. Default is 100",
2698+ "format": "int32",
2699+ "minimum": "1",
2700+ "location": "query"
2701+ },
2702+ "orderBy": {
2703+ "type": "string",
2704+ "description": "Column to use for sorting results",
2705+ "enum": [
2706+ "deviceId",
2707+ "email",
2708+ "lastSync",
2709+ "model",
2710+ "name",
2711+ "os",
2712+ "status",
2713+ "type"
2714+ ],
2715+ "enumDescriptions": [
2716+ "Mobile Device serial number.",
2717+ "Owner user email.",
2718+ "Last policy settings sync date time of the device.",
2719+ "Mobile Device model.",
2720+ "Owner user name.",
2721+ "Mobile operating system.",
2722+ "Status of the device.",
2723+ "Type of the device."
2724+ ],
2725+ "location": "query"
2726+ },
2727+ "pageToken": {
2728+ "type": "string",
2729+ "description": "Token to specify next page in the list",
2730+ "location": "query"
2731+ },
2732+ "projection": {
2733+ "type": "string",
2734+ "description": "Restrict information returned to a set of selected fields.",
2735+ "enum": [
2736+ "BASIC",
2737+ "FULL"
2738+ ],
2739+ "enumDescriptions": [
2740+ "Includes only the basic metadata fields (e.g., deviceId, model, status, type, and status)",
2741+ "Includes all metadata fields"
2742+ ],
2743+ "location": "query"
2744+ },
2745+ "query": {
2746+ "type": "string",
2747+ "description": "Search string in the format given at http://support.google.com/a/bin/answer.py?hl=en&answer=1408863#search",
2748+ "location": "query"
2749+ },
2750+ "sortOrder": {
2751+ "type": "string",
2752+ "description": "Whether to return results in ascending or descending order. Only of use when orderBy is also used",
2753+ "enum": [
2754+ "ASCENDING",
2755+ "DESCENDING"
2756+ ],
2757+ "enumDescriptions": [
2758+ "Ascending order.",
2759+ "Descending order."
2760+ ],
2761+ "location": "query"
2762+ }
2763+ },
2764+ "parameterOrder": [
2765+ "customerId"
2766+ ],
2767+ "response": {
2768+ "$ref": "MobileDevices"
2769+ },
2770+ "scopes": [
2771+ "https://www.googleapis.com/auth/admin.directory.device.mobile",
2772+ "https://www.googleapis.com/auth/admin.directory.device.mobile.action",
2773+ "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly"
2774+ ]
2775+ }
2776+ }
2777+ },
2778+ "notifications": {
2779+ "methods": {
2780+ "delete": {
2781+ "id": "directory.notifications.delete",
2782+ "path": "customer/{customer}/notifications/{notificationId}",
2783+ "httpMethod": "DELETE",
2784+ "description": "Deletes a notification",
2785+ "parameters": {
2786+ "customer": {
2787+ "type": "string",
2788+ "description": "The unique ID for the customer's Google account. The customerId is also returned as part of the Users resource.",
2789+ "required": true,
2790+ "location": "path"
2791+ },
2792+ "notificationId": {
2793+ "type": "string",
2794+ "description": "The unique ID of the notification.",
2795+ "required": true,
2796+ "location": "path"
2797+ }
2798+ },
2799+ "parameterOrder": [
2800+ "customer",
2801+ "notificationId"
2802+ ],
2803+ "scopes": [
2804+ "https://www.googleapis.com/auth/admin.directory.notifications"
2805+ ]
2806+ },
2807+ "get": {
2808+ "id": "directory.notifications.get",
2809+ "path": "customer/{customer}/notifications/{notificationId}",
2810+ "httpMethod": "GET",
2811+ "description": "Retrieves a notification.",
2812+ "parameters": {
2813+ "customer": {
2814+ "type": "string",
2815+ "description": "The unique ID for the customer's Google account. The customerId is also returned as part of the Users resource.",
2816+ "required": true,
2817+ "location": "path"
2818+ },
2819+ "notificationId": {
2820+ "type": "string",
2821+ "description": "The unique ID of the notification.",
2822+ "required": true,
2823+ "location": "path"
2824+ }
2825+ },
2826+ "parameterOrder": [
2827+ "customer",
2828+ "notificationId"
2829+ ],
2830+ "response": {
2831+ "$ref": "Notification"
2832+ },
2833+ "scopes": [
2834+ "https://www.googleapis.com/auth/admin.directory.notifications"
2835+ ]
2836+ },
2837+ "list": {
2838+ "id": "directory.notifications.list",
2839+ "path": "customer/{customer}/notifications",
2840+ "httpMethod": "GET",
2841+ "description": "Retrieves a list of notifications.",
2842+ "parameters": {
2843+ "customer": {
2844+ "type": "string",
2845+ "description": "The unique ID for the customer's Google account.",
2846+ "required": true,
2847+ "location": "path"
2848+ },
2849+ "language": {
2850+ "type": "string",
2851+ "description": "The ISO 639-1 code of the language notifications are returned in. The default is English (en).",
2852+ "location": "query"
2853+ },
2854+ "maxResults": {
2855+ "type": "integer",
2856+ "description": "Maximum number of notifications to return per page. The default is 100.",
2857+ "format": "uint32",
2858+ "location": "query"
2859+ },
2860+ "pageToken": {
2861+ "type": "string",
2862+ "description": "The token to specify the page of results to retrieve.",
2863+ "location": "query"
2864+ }
2865+ },
2866+ "parameterOrder": [
2867+ "customer"
2868+ ],
2869+ "response": {
2870+ "$ref": "Notifications"
2871+ },
2872+ "scopes": [
2873+ "https://www.googleapis.com/auth/admin.directory.notifications"
2874+ ]
2875+ },
2876+ "patch": {
2877+ "id": "directory.notifications.patch",
2878+ "path": "customer/{customer}/notifications/{notificationId}",
2879+ "httpMethod": "PATCH",
2880+ "description": "Updates a notification. This method supports patch semantics.",
2881+ "parameters": {
2882+ "customer": {
2883+ "type": "string",
2884+ "description": "The unique ID for the customer's Google account.",
2885+ "required": true,
2886+ "location": "path"
2887+ },
2888+ "notificationId": {
2889+ "type": "string",
2890+ "description": "The unique ID of the notification.",
2891+ "required": true,
2892+ "location": "path"
2893+ }
2894+ },
2895+ "parameterOrder": [
2896+ "customer",
2897+ "notificationId"
2898+ ],
2899+ "request": {
2900+ "$ref": "Notification"
2901+ },
2902+ "response": {
2903+ "$ref": "Notification"
2904+ },
2905+ "scopes": [
2906+ "https://www.googleapis.com/auth/admin.directory.notifications"
2907+ ]
2908+ },
2909+ "update": {
2910+ "id": "directory.notifications.update",
2911+ "path": "customer/{customer}/notifications/{notificationId}",
2912+ "httpMethod": "PUT",
2913+ "description": "Updates a notification.",
2914+ "parameters": {
2915+ "customer": {
2916+ "type": "string",
2917+ "description": "The unique ID for the customer's Google account.",
2918+ "required": true,
2919+ "location": "path"
2920+ },
2921+ "notificationId": {
2922+ "type": "string",
2923+ "description": "The unique ID of the notification.",
2924+ "required": true,
2925+ "location": "path"
2926+ }
2927+ },
2928+ "parameterOrder": [
2929+ "customer",
2930+ "notificationId"
2931+ ],
2932+ "request": {
2933+ "$ref": "Notification"
2934+ },
2935+ "response": {
2936+ "$ref": "Notification"
2937+ },
2938+ "scopes": [
2939+ "https://www.googleapis.com/auth/admin.directory.notifications"
2940+ ]
2941+ }
2942+ }
2943+ },
2944+ "orgunits": {
2945+ "methods": {
2946+ "delete": {
2947+ "id": "directory.orgunits.delete",
2948+ "path": "customer/{customerId}/orgunits{/orgUnitPath*}",
2949+ "httpMethod": "DELETE",
2950+ "description": "Remove Organization Unit",
2951+ "parameters": {
2952+ "customerId": {
2953+ "type": "string",
2954+ "description": "Immutable id of the Google Apps account",
2955+ "required": true,
2956+ "location": "path"
2957+ },
2958+ "orgUnitPath": {
2959+ "type": "string",
2960+ "description": "Full path of the organization unit or its Id",
2961+ "required": true,
2962+ "repeated": true,
2963+ "location": "path"
2964+ }
2965+ },
2966+ "parameterOrder": [
2967+ "customerId",
2968+ "orgUnitPath"
2969+ ],
2970+ "scopes": [
2971+ "https://www.googleapis.com/auth/admin.directory.orgunit"
2972+ ]
2973+ },
2974+ "get": {
2975+ "id": "directory.orgunits.get",
2976+ "path": "customer/{customerId}/orgunits{/orgUnitPath*}",
2977+ "httpMethod": "GET",
2978+ "description": "Retrieve Organization Unit",
2979+ "parameters": {
2980+ "customerId": {
2981+ "type": "string",
2982+ "description": "Immutable id of the Google Apps account",
2983+ "required": true,
2984+ "location": "path"
2985+ },
2986+ "orgUnitPath": {
2987+ "type": "string",
2988+ "description": "Full path of the organization unit or its Id",
2989+ "required": true,
2990+ "repeated": true,
2991+ "location": "path"
2992+ }
2993+ },
2994+ "parameterOrder": [
2995+ "customerId",
2996+ "orgUnitPath"
2997+ ],
2998+ "response": {
2999+ "$ref": "OrgUnit"
3000+ },
3001+ "scopes": [
3002+ "https://www.googleapis.com/auth/admin.directory.orgunit",
3003+ "https://www.googleapis.com/auth/admin.directory.orgunit.readonly"
3004+ ]
3005+ },
3006+ "insert": {
3007+ "id": "directory.orgunits.insert",
3008+ "path": "customer/{customerId}/orgunits",
3009+ "httpMethod": "POST",
3010+ "description": "Add Organization Unit",
3011+ "parameters": {
3012+ "customerId": {
3013+ "type": "string",
3014+ "description": "Immutable id of the Google Apps account",
3015+ "required": true,
3016+ "location": "path"
3017+ }
3018+ },
3019+ "parameterOrder": [
3020+ "customerId"
3021+ ],
3022+ "request": {
3023+ "$ref": "OrgUnit"
3024+ },
3025+ "response": {
3026+ "$ref": "OrgUnit"
3027+ },
3028+ "scopes": [
3029+ "https://www.googleapis.com/auth/admin.directory.orgunit"
3030+ ]
3031+ },
3032+ "list": {
3033+ "id": "directory.orgunits.list",
3034+ "path": "customer/{customerId}/orgunits",
3035+ "httpMethod": "GET",
3036+ "description": "Retrieve all Organization Units",
3037+ "parameters": {
3038+ "customerId": {
3039+ "type": "string",
3040+ "description": "Immutable id of the Google Apps account",
3041+ "required": true,
3042+ "location": "path"
3043+ },
3044+ "orgUnitPath": {
3045+ "type": "string",
3046+ "description": "the URL-encoded organization unit's path or its Id",
3047+ "default": "",
3048+ "location": "query"
3049+ },
3050+ "type": {
3051+ "type": "string",
3052+ "description": "Whether to return all sub-organizations or just immediate children",
3053+ "enum": [
3054+ "all",
3055+ "children"
3056+ ],
3057+ "enumDescriptions": [
3058+ "All sub-organization units.",
3059+ "Immediate children only (default)."
3060+ ],
3061+ "location": "query"
3062+ }
3063+ },
3064+ "parameterOrder": [
3065+ "customerId"
3066+ ],
3067+ "response": {
3068+ "$ref": "OrgUnits"
3069+ },
3070+ "scopes": [
3071+ "https://www.googleapis.com/auth/admin.directory.orgunit",
3072+ "https://www.googleapis.com/auth/admin.directory.orgunit.readonly"
3073+ ]
3074+ },
3075+ "patch": {
3076+ "id": "directory.orgunits.patch",
3077+ "path": "customer/{customerId}/orgunits{/orgUnitPath*}",
3078+ "httpMethod": "PATCH",
3079+ "description": "Update Organization Unit. This method supports patch semantics.",
3080+ "parameters": {
3081+ "customerId": {
3082+ "type": "string",
3083+ "description": "Immutable id of the Google Apps account",
3084+ "required": true,
3085+ "location": "path"
3086+ },
3087+ "orgUnitPath": {
3088+ "type": "string",
3089+ "description": "Full path of the organization unit or its Id",
3090+ "required": true,
3091+ "repeated": true,
3092+ "location": "path"
3093+ }
3094+ },
3095+ "parameterOrder": [
3096+ "customerId",
3097+ "orgUnitPath"
3098+ ],
3099+ "request": {
3100+ "$ref": "OrgUnit"
3101+ },
3102+ "response": {
3103+ "$ref": "OrgUnit"
3104+ },
3105+ "scopes": [
3106+ "https://www.googleapis.com/auth/admin.directory.orgunit"
3107+ ]
3108+ },
3109+ "update": {
3110+ "id": "directory.orgunits.update",
3111+ "path": "customer/{customerId}/orgunits{/orgUnitPath*}",
3112+ "httpMethod": "PUT",
3113+ "description": "Update Organization Unit",
3114+ "parameters": {
3115+ "customerId": {
3116+ "type": "string",
3117+ "description": "Immutable id of the Google Apps account",
3118+ "required": true,
3119+ "location": "path"
3120+ },
3121+ "orgUnitPath": {
3122+ "type": "string",
3123+ "description": "Full path of the organization unit or its Id",
3124+ "required": true,
3125+ "repeated": true,
3126+ "location": "path"
3127+ }
3128+ },
3129+ "parameterOrder": [
3130+ "customerId",
3131+ "orgUnitPath"
3132+ ],
3133+ "request": {
3134+ "$ref": "OrgUnit"
3135+ },
3136+ "response": {
3137+ "$ref": "OrgUnit"
3138+ },
3139+ "scopes": [
3140+ "https://www.googleapis.com/auth/admin.directory.orgunit"
3141+ ]
3142+ }
3143+ }
3144+ },
3145+ "schemas": {
3146+ "methods": {
3147+ "delete": {
3148+ "id": "directory.schemas.delete",
3149+ "path": "customer/{customerId}/schemas/{schemaKey}",
3150+ "httpMethod": "DELETE",
3151+ "description": "Delete schema",
3152+ "parameters": {
3153+ "customerId": {
3154+ "type": "string",
3155+ "description": "Immutable id of the Google Apps account",
3156+ "required": true,
3157+ "location": "path"
3158+ },
3159+ "schemaKey": {
3160+ "type": "string",
3161+ "description": "Name or immutable Id of the schema",
3162+ "required": true,
3163+ "location": "path"
3164+ }
3165+ },
3166+ "parameterOrder": [
3167+ "customerId",
3168+ "schemaKey"
3169+ ],
3170+ "scopes": [
3171+ "https://www.googleapis.com/auth/admin.directory.userschema"
3172+ ]
3173+ },
3174+ "get": {
3175+ "id": "directory.schemas.get",
3176+ "path": "customer/{customerId}/schemas/{schemaKey}",
3177+ "httpMethod": "GET",
3178+ "description": "Retrieve schema",
3179+ "parameters": {
3180+ "customerId": {
3181+ "type": "string",
3182+ "description": "Immutable id of the Google Apps account",
3183+ "required": true,
3184+ "location": "path"
3185+ },
3186+ "schemaKey": {
3187+ "type": "string",
3188+ "description": "Name or immutable Id of the schema",
3189+ "required": true,
3190+ "location": "path"
3191+ }
3192+ },
3193+ "parameterOrder": [
3194+ "customerId",
3195+ "schemaKey"
3196+ ],
3197+ "response": {
3198+ "$ref": "Schema"
3199+ },
3200+ "scopes": [
3201+ "https://www.googleapis.com/auth/admin.directory.userschema",
3202+ "https://www.googleapis.com/auth/admin.directory.userschema.readonly"
3203+ ]
3204+ },
3205+ "insert": {
3206+ "id": "directory.schemas.insert",
3207+ "path": "customer/{customerId}/schemas",
3208+ "httpMethod": "POST",
3209+ "description": "Create schema.",
3210+ "parameters": {
3211+ "customerId": {
3212+ "type": "string",
3213+ "description": "Immutable id of the Google Apps account",
3214+ "required": true,
3215+ "location": "path"
3216+ }
3217+ },
3218+ "parameterOrder": [
3219+ "customerId"
3220+ ],
3221+ "request": {
3222+ "$ref": "Schema"
3223+ },
3224+ "response": {
3225+ "$ref": "Schema"
3226+ },
3227+ "scopes": [
3228+ "https://www.googleapis.com/auth/admin.directory.userschema"
3229+ ]
3230+ },
3231+ "list": {
3232+ "id": "directory.schemas.list",
3233+ "path": "customer/{customerId}/schemas",
3234+ "httpMethod": "GET",
3235+ "description": "Retrieve all schemas for a customer",
3236+ "parameters": {
3237+ "customerId": {
3238+ "type": "string",
3239+ "description": "Immutable id of the Google Apps account",
3240+ "required": true,
3241+ "location": "path"
3242+ }
3243+ },
3244+ "parameterOrder": [
3245+ "customerId"
3246+ ],
3247+ "response": {
3248+ "$ref": "Schemas"
3249+ },
3250+ "scopes": [
3251+ "https://www.googleapis.com/auth/admin.directory.userschema",
3252+ "https://www.googleapis.com/auth/admin.directory.userschema.readonly"
3253+ ]
3254+ },
3255+ "patch": {
3256+ "id": "directory.schemas.patch",
3257+ "path": "customer/{customerId}/schemas/{schemaKey}",
3258+ "httpMethod": "PATCH",
3259+ "description": "Update schema. This method supports patch semantics.",
3260+ "parameters": {
3261+ "customerId": {
3262+ "type": "string",
3263+ "description": "Immutable id of the Google Apps account",
3264+ "required": true,
3265+ "location": "path"
3266+ },
3267+ "schemaKey": {
3268+ "type": "string",
3269+ "description": "Name or immutable Id of the schema.",
3270+ "required": true,
3271+ "location": "path"
3272+ }
3273+ },
3274+ "parameterOrder": [
3275+ "customerId",
3276+ "schemaKey"
3277+ ],
3278+ "request": {
3279+ "$ref": "Schema"
3280+ },
3281+ "response": {
3282+ "$ref": "Schema"
3283+ },
3284+ "scopes": [
3285+ "https://www.googleapis.com/auth/admin.directory.userschema"
3286+ ]
3287+ },
3288+ "update": {
3289+ "id": "directory.schemas.update",
3290+ "path": "customer/{customerId}/schemas/{schemaKey}",
3291+ "httpMethod": "PUT",
3292+ "description": "Update schema",
3293+ "parameters": {
3294+ "customerId": {
3295+ "type": "string",
3296+ "description": "Immutable id of the Google Apps account",
3297+ "required": true,
3298+ "location": "path"
3299+ },
3300+ "schemaKey": {
3301+ "type": "string",
3302+ "description": "Name or immutable Id of the schema.",
3303+ "required": true,
3304+ "location": "path"
3305+ }
3306+ },
3307+ "parameterOrder": [
3308+ "customerId",
3309+ "schemaKey"
3310+ ],
3311+ "request": {
3312+ "$ref": "Schema"
3313+ },
3314+ "response": {
3315+ "$ref": "Schema"
3316+ },
3317+ "scopes": [
3318+ "https://www.googleapis.com/auth/admin.directory.userschema"
3319+ ]
3320+ }
3321+ }
3322+ },
3323+ "tokens": {
3324+ "methods": {
3325+ "delete": {
3326+ "id": "directory.tokens.delete",
3327+ "path": "users/{userKey}/tokens/{clientId}",
3328+ "httpMethod": "DELETE",
3329+ "description": "Delete all access tokens issued by a user for an application.",
3330+ "parameters": {
3331+ "clientId": {
3332+ "type": "string",
3333+ "description": "The Client ID of the application the token is issued to.",
3334+ "required": true,
3335+ "location": "path"
3336+ },
3337+ "userKey": {
3338+ "type": "string",
3339+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
3340+ "required": true,
3341+ "location": "path"
3342+ }
3343+ },
3344+ "parameterOrder": [
3345+ "userKey",
3346+ "clientId"
3347+ ],
3348+ "scopes": [
3349+ "https://www.googleapis.com/auth/admin.directory.user.security"
3350+ ]
3351+ },
3352+ "get": {
3353+ "id": "directory.tokens.get",
3354+ "path": "users/{userKey}/tokens/{clientId}",
3355+ "httpMethod": "GET",
3356+ "description": "Get information about an access token issued by a user.",
3357+ "parameters": {
3358+ "clientId": {
3359+ "type": "string",
3360+ "description": "The Client ID of the application the token is issued to.",
3361+ "required": true,
3362+ "location": "path"
3363+ },
3364+ "userKey": {
3365+ "type": "string",
3366+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
3367+ "required": true,
3368+ "location": "path"
3369+ }
3370+ },
3371+ "parameterOrder": [
3372+ "userKey",
3373+ "clientId"
3374+ ],
3375+ "response": {
3376+ "$ref": "Token"
3377+ },
3378+ "scopes": [
3379+ "https://www.googleapis.com/auth/admin.directory.user.security"
3380+ ]
3381+ },
3382+ "list": {
3383+ "id": "directory.tokens.list",
3384+ "path": "users/{userKey}/tokens",
3385+ "httpMethod": "GET",
3386+ "description": "Returns the set of tokens specified user has issued to 3rd party applications.",
3387+ "parameters": {
3388+ "userKey": {
3389+ "type": "string",
3390+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
3391+ "required": true,
3392+ "location": "path"
3393+ }
3394+ },
3395+ "parameterOrder": [
3396+ "userKey"
3397+ ],
3398+ "response": {
3399+ "$ref": "Tokens"
3400+ },
3401+ "scopes": [
3402+ "https://www.googleapis.com/auth/admin.directory.user.security"
3403+ ]
3404+ }
3405+ }
3406+ },
3407+ "users": {
3408+ "methods": {
3409+ "delete": {
3410+ "id": "directory.users.delete",
3411+ "path": "users/{userKey}",
3412+ "httpMethod": "DELETE",
3413+ "description": "Delete user",
3414+ "parameters": {
3415+ "userKey": {
3416+ "type": "string",
3417+ "description": "Email or immutable Id of the user",
3418+ "required": true,
3419+ "location": "path"
3420+ }
3421+ },
3422+ "parameterOrder": [
3423+ "userKey"
3424+ ],
3425+ "scopes": [
3426+ "https://www.googleapis.com/auth/admin.directory.user"
3427+ ]
3428+ },
3429+ "get": {
3430+ "id": "directory.users.get",
3431+ "path": "users/{userKey}",
3432+ "httpMethod": "GET",
3433+ "description": "retrieve user",
3434+ "parameters": {
3435+ "customFieldMask": {
3436+ "type": "string",
3437+ "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.",
3438+ "location": "query"
3439+ },
3440+ "projection": {
3441+ "type": "string",
3442+ "description": "What subset of fields to fetch for this user.",
3443+ "default": "basic",
3444+ "enum": [
3445+ "basic",
3446+ "custom",
3447+ "full"
3448+ ],
3449+ "enumDescriptions": [
3450+ "Do not include any custom fields for the user.",
3451+ "Include custom fields from schemas mentioned in customFieldMask.",
3452+ "Include all fields associated with this user."
3453+ ],
3454+ "location": "query"
3455+ },
3456+ "userKey": {
3457+ "type": "string",
3458+ "description": "Email or immutable Id of the user",
3459+ "required": true,
3460+ "location": "path"
3461+ },
3462+ "viewType": {
3463+ "type": "string",
3464+ "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.",
3465+ "default": "admin_view",
3466+ "enum": [
3467+ "admin_view",
3468+ "domain_public"
3469+ ],
3470+ "enumDescriptions": [
3471+ "Fetches the ADMIN_VIEW of the user.",
3472+ "Fetches the DOMAIN_PUBLIC view of the user."
3473+ ],
3474+ "location": "query"
3475+ }
3476+ },
3477+ "parameterOrder": [
3478+ "userKey"
3479+ ],
3480+ "response": {
3481+ "$ref": "User"
3482+ },
3483+ "scopes": [
3484+ "https://www.googleapis.com/auth/admin.directory.user",
3485+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
3486+ ]
3487+ },
3488+ "insert": {
3489+ "id": "directory.users.insert",
3490+ "path": "users",
3491+ "httpMethod": "POST",
3492+ "description": "create user.",
3493+ "request": {
3494+ "$ref": "User"
3495+ },
3496+ "response": {
3497+ "$ref": "User"
3498+ },
3499+ "scopes": [
3500+ "https://www.googleapis.com/auth/admin.directory.user"
3501+ ]
3502+ },
3503+ "list": {
3504+ "id": "directory.users.list",
3505+ "path": "users",
3506+ "httpMethod": "GET",
3507+ "description": "Retrieve either deleted users or all users in a domain (paginated)",
3508+ "parameters": {
3509+ "customFieldMask": {
3510+ "type": "string",
3511+ "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.",
3512+ "location": "query"
3513+ },
3514+ "customer": {
3515+ "type": "string",
3516+ "description": "Immutable id of the Google Apps account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.",
3517+ "location": "query"
3518+ },
3519+ "domain": {
3520+ "type": "string",
3521+ "description": "Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.",
3522+ "location": "query"
3523+ },
3524+ "event": {
3525+ "type": "string",
3526+ "description": "Event on which subscription is intended (if subscribing)",
3527+ "enum": [
3528+ "add",
3529+ "delete",
3530+ "makeAdmin",
3531+ "undelete",
3532+ "update"
3533+ ],
3534+ "enumDescriptions": [
3535+ "User Created Event",
3536+ "User Deleted Event",
3537+ "User Admin Status Change Event",
3538+ "User Undeleted Event",
3539+ "User Updated Event"
3540+ ],
3541+ "location": "query"
3542+ },
3543+ "maxResults": {
3544+ "type": "integer",
3545+ "description": "Maximum number of results to return. Default is 100. Max allowed is 500",
3546+ "format": "int32",
3547+ "minimum": "1",
3548+ "maximum": "500",
3549+ "location": "query"
3550+ },
3551+ "orderBy": {
3552+ "type": "string",
3553+ "description": "Column to use for sorting results",
3554+ "enum": [
3555+ "email",
3556+ "familyName",
3557+ "givenName"
3558+ ],
3559+ "enumDescriptions": [
3560+ "Primary email of the user.",
3561+ "User's family name.",
3562+ "User's given name."
3563+ ],
3564+ "location": "query"
3565+ },
3566+ "pageToken": {
3567+ "type": "string",
3568+ "description": "Token to specify next page in the list",
3569+ "location": "query"
3570+ },
3571+ "projection": {
3572+ "type": "string",
3573+ "description": "What subset of fields to fetch for this user.",
3574+ "default": "basic",
3575+ "enum": [
3576+ "basic",
3577+ "custom",
3578+ "full"
3579+ ],
3580+ "enumDescriptions": [
3581+ "Do not include any custom fields for the user.",
3582+ "Include custom fields from schemas mentioned in customFieldMask.",
3583+ "Include all fields associated with this user."
3584+ ],
3585+ "location": "query"
3586+ },
3587+ "query": {
3588+ "type": "string",
3589+ "description": "Query string search. Should be of the form \"\". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users",
3590+ "location": "query"
3591+ },
3592+ "showDeleted": {
3593+ "type": "string",
3594+ "description": "If set to true retrieves the list of deleted users. Default is false",
3595+ "location": "query"
3596+ },
3597+ "sortOrder": {
3598+ "type": "string",
3599+ "description": "Whether to return results in ascending or descending order.",
3600+ "enum": [
3601+ "ASCENDING",
3602+ "DESCENDING"
3603+ ],
3604+ "enumDescriptions": [
3605+ "Ascending order.",
3606+ "Descending order."
3607+ ],
3608+ "location": "query"
3609+ },
3610+ "viewType": {
3611+ "type": "string",
3612+ "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.",
3613+ "default": "admin_view",
3614+ "enum": [
3615+ "admin_view",
3616+ "domain_public"
3617+ ],
3618+ "enumDescriptions": [
3619+ "Fetches the ADMIN_VIEW of the user.",
3620+ "Fetches the DOMAIN_PUBLIC view of the user."
3621+ ],
3622+ "location": "query"
3623+ }
3624+ },
3625+ "response": {
3626+ "$ref": "Users"
3627+ },
3628+ "scopes": [
3629+ "https://www.googleapis.com/auth/admin.directory.user",
3630+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
3631+ ],
3632+ "supportsSubscription": true
3633+ },
3634+ "makeAdmin": {
3635+ "id": "directory.users.makeAdmin",
3636+ "path": "users/{userKey}/makeAdmin",
3637+ "httpMethod": "POST",
3638+ "description": "change admin status of a user",
3639+ "parameters": {
3640+ "userKey": {
3641+ "type": "string",
3642+ "description": "Email or immutable Id of the user as admin",
3643+ "required": true,
3644+ "location": "path"
3645+ }
3646+ },
3647+ "parameterOrder": [
3648+ "userKey"
3649+ ],
3650+ "request": {
3651+ "$ref": "UserMakeAdmin"
3652+ },
3653+ "scopes": [
3654+ "https://www.googleapis.com/auth/admin.directory.user"
3655+ ]
3656+ },
3657+ "patch": {
3658+ "id": "directory.users.patch",
3659+ "path": "users/{userKey}",
3660+ "httpMethod": "PATCH",
3661+ "description": "update user. This method supports patch semantics.",
3662+ "parameters": {
3663+ "userKey": {
3664+ "type": "string",
3665+ "description": "Email or immutable Id of the user. If Id, it should match with id of user object",
3666+ "required": true,
3667+ "location": "path"
3668+ }
3669+ },
3670+ "parameterOrder": [
3671+ "userKey"
3672+ ],
3673+ "request": {
3674+ "$ref": "User"
3675+ },
3676+ "response": {
3677+ "$ref": "User"
3678+ },
3679+ "scopes": [
3680+ "https://www.googleapis.com/auth/admin.directory.user"
3681+ ]
3682+ },
3683+ "undelete": {
3684+ "id": "directory.users.undelete",
3685+ "path": "users/{userKey}/undelete",
3686+ "httpMethod": "POST",
3687+ "description": "Undelete a deleted user",
3688+ "parameters": {
3689+ "userKey": {
3690+ "type": "string",
3691+ "description": "The immutable id of the user",
3692+ "required": true,
3693+ "location": "path"
3694+ }
3695+ },
3696+ "parameterOrder": [
3697+ "userKey"
3698+ ],
3699+ "request": {
3700+ "$ref": "UserUndelete"
3701+ },
3702+ "scopes": [
3703+ "https://www.googleapis.com/auth/admin.directory.user"
3704+ ]
3705+ },
3706+ "update": {
3707+ "id": "directory.users.update",
3708+ "path": "users/{userKey}",
3709+ "httpMethod": "PUT",
3710+ "description": "update user",
3711+ "parameters": {
3712+ "userKey": {
3713+ "type": "string",
3714+ "description": "Email or immutable Id of the user. If Id, it should match with id of user object",
3715+ "required": true,
3716+ "location": "path"
3717+ }
3718+ },
3719+ "parameterOrder": [
3720+ "userKey"
3721+ ],
3722+ "request": {
3723+ "$ref": "User"
3724+ },
3725+ "response": {
3726+ "$ref": "User"
3727+ },
3728+ "scopes": [
3729+ "https://www.googleapis.com/auth/admin.directory.user"
3730+ ]
3731+ },
3732+ "watch": {
3733+ "id": "directory.users.watch",
3734+ "path": "users/watch",
3735+ "httpMethod": "POST",
3736+ "description": "Watch for changes in users list",
3737+ "parameters": {
3738+ "customFieldMask": {
3739+ "type": "string",
3740+ "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.",
3741+ "location": "query"
3742+ },
3743+ "customer": {
3744+ "type": "string",
3745+ "description": "Immutable id of the Google Apps account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.",
3746+ "location": "query"
3747+ },
3748+ "domain": {
3749+ "type": "string",
3750+ "description": "Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.",
3751+ "location": "query"
3752+ },
3753+ "event": {
3754+ "type": "string",
3755+ "description": "Event on which subscription is intended (if subscribing)",
3756+ "enum": [
3757+ "add",
3758+ "delete",
3759+ "makeAdmin",
3760+ "undelete",
3761+ "update"
3762+ ],
3763+ "enumDescriptions": [
3764+ "User Created Event",
3765+ "User Deleted Event",
3766+ "User Admin Status Change Event",
3767+ "User Undeleted Event",
3768+ "User Updated Event"
3769+ ],
3770+ "location": "query"
3771+ },
3772+ "maxResults": {
3773+ "type": "integer",
3774+ "description": "Maximum number of results to return. Default is 100. Max allowed is 500",
3775+ "format": "int32",
3776+ "minimum": "1",
3777+ "maximum": "500",
3778+ "location": "query"
3779+ },
3780+ "orderBy": {
3781+ "type": "string",
3782+ "description": "Column to use for sorting results",
3783+ "enum": [
3784+ "email",
3785+ "familyName",
3786+ "givenName"
3787+ ],
3788+ "enumDescriptions": [
3789+ "Primary email of the user.",
3790+ "User's family name.",
3791+ "User's given name."
3792+ ],
3793+ "location": "query"
3794+ },
3795+ "pageToken": {
3796+ "type": "string",
3797+ "description": "Token to specify next page in the list",
3798+ "location": "query"
3799+ },
3800+ "projection": {
3801+ "type": "string",
3802+ "description": "What subset of fields to fetch for this user.",
3803+ "default": "basic",
3804+ "enum": [
3805+ "basic",
3806+ "custom",
3807+ "full"
3808+ ],
3809+ "enumDescriptions": [
3810+ "Do not include any custom fields for the user.",
3811+ "Include custom fields from schemas mentioned in customFieldMask.",
3812+ "Include all fields associated with this user."
3813+ ],
3814+ "location": "query"
3815+ },
3816+ "query": {
3817+ "type": "string",
3818+ "description": "Query string search. Should be of the form \"\". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users",
3819+ "location": "query"
3820+ },
3821+ "showDeleted": {
3822+ "type": "string",
3823+ "description": "If set to true retrieves the list of deleted users. Default is false",
3824+ "location": "query"
3825+ },
3826+ "sortOrder": {
3827+ "type": "string",
3828+ "description": "Whether to return results in ascending or descending order.",
3829+ "enum": [
3830+ "ASCENDING",
3831+ "DESCENDING"
3832+ ],
3833+ "enumDescriptions": [
3834+ "Ascending order.",
3835+ "Descending order."
3836+ ],
3837+ "location": "query"
3838+ },
3839+ "viewType": {
3840+ "type": "string",
3841+ "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.",
3842+ "default": "admin_view",
3843+ "enum": [
3844+ "admin_view",
3845+ "domain_public"
3846+ ],
3847+ "enumDescriptions": [
3848+ "Fetches the ADMIN_VIEW of the user.",
3849+ "Fetches the DOMAIN_PUBLIC view of the user."
3850+ ],
3851+ "location": "query"
3852+ }
3853+ },
3854+ "request": {
3855+ "$ref": "Channel",
3856+ "parameterName": "resource"
3857+ },
3858+ "response": {
3859+ "$ref": "Channel"
3860+ },
3861+ "scopes": [
3862+ "https://www.googleapis.com/auth/admin.directory.user",
3863+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
3864+ ],
3865+ "supportsSubscription": true
3866+ }
3867+ },
3868+ "resources": {
3869+ "aliases": {
3870+ "methods": {
3871+ "delete": {
3872+ "id": "directory.users.aliases.delete",
3873+ "path": "users/{userKey}/aliases/{alias}",
3874+ "httpMethod": "DELETE",
3875+ "description": "Remove a alias for the user",
3876+ "parameters": {
3877+ "alias": {
3878+ "type": "string",
3879+ "description": "The alias to be removed",
3880+ "required": true,
3881+ "location": "path"
3882+ },
3883+ "userKey": {
3884+ "type": "string",
3885+ "description": "Email or immutable Id of the user",
3886+ "required": true,
3887+ "location": "path"
3888+ }
3889+ },
3890+ "parameterOrder": [
3891+ "userKey",
3892+ "alias"
3893+ ],
3894+ "scopes": [
3895+ "https://www.googleapis.com/auth/admin.directory.user",
3896+ "https://www.googleapis.com/auth/admin.directory.user.alias"
3897+ ]
3898+ },
3899+ "insert": {
3900+ "id": "directory.users.aliases.insert",
3901+ "path": "users/{userKey}/aliases",
3902+ "httpMethod": "POST",
3903+ "description": "Add a alias for the user",
3904+ "parameters": {
3905+ "userKey": {
3906+ "type": "string",
3907+ "description": "Email or immutable Id of the user",
3908+ "required": true,
3909+ "location": "path"
3910+ }
3911+ },
3912+ "parameterOrder": [
3913+ "userKey"
3914+ ],
3915+ "request": {
3916+ "$ref": "Alias"
3917+ },
3918+ "response": {
3919+ "$ref": "Alias"
3920+ },
3921+ "scopes": [
3922+ "https://www.googleapis.com/auth/admin.directory.user",
3923+ "https://www.googleapis.com/auth/admin.directory.user.alias"
3924+ ]
3925+ },
3926+ "list": {
3927+ "id": "directory.users.aliases.list",
3928+ "path": "users/{userKey}/aliases",
3929+ "httpMethod": "GET",
3930+ "description": "List all aliases for a user",
3931+ "parameters": {
3932+ "event": {
3933+ "type": "string",
3934+ "description": "Event on which subscription is intended (if subscribing)",
3935+ "enum": [
3936+ "add",
3937+ "delete"
3938+ ],
3939+ "enumDescriptions": [
3940+ "Alias Created Event",
3941+ "Alias Deleted Event"
3942+ ],
3943+ "location": "query"
3944+ },
3945+ "userKey": {
3946+ "type": "string",
3947+ "description": "Email or immutable Id of the user",
3948+ "required": true,
3949+ "location": "path"
3950+ }
3951+ },
3952+ "parameterOrder": [
3953+ "userKey"
3954+ ],
3955+ "response": {
3956+ "$ref": "Aliases"
3957+ },
3958+ "scopes": [
3959+ "https://www.googleapis.com/auth/admin.directory.user",
3960+ "https://www.googleapis.com/auth/admin.directory.user.alias",
3961+ "https://www.googleapis.com/auth/admin.directory.user.alias.readonly",
3962+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
3963+ ],
3964+ "supportsSubscription": true
3965+ },
3966+ "watch": {
3967+ "id": "directory.users.aliases.watch",
3968+ "path": "users/{userKey}/aliases/watch",
3969+ "httpMethod": "POST",
3970+ "description": "Watch for changes in user aliases list",
3971+ "parameters": {
3972+ "event": {
3973+ "type": "string",
3974+ "description": "Event on which subscription is intended (if subscribing)",
3975+ "enum": [
3976+ "add",
3977+ "delete"
3978+ ],
3979+ "enumDescriptions": [
3980+ "Alias Created Event",
3981+ "Alias Deleted Event"
3982+ ],
3983+ "location": "query"
3984+ },
3985+ "userKey": {
3986+ "type": "string",
3987+ "description": "Email or immutable Id of the user",
3988+ "required": true,
3989+ "location": "path"
3990+ }
3991+ },
3992+ "parameterOrder": [
3993+ "userKey"
3994+ ],
3995+ "request": {
3996+ "$ref": "Channel",
3997+ "parameterName": "resource"
3998+ },
3999+ "response": {
4000+ "$ref": "Channel"
4001+ },
4002+ "scopes": [
4003+ "https://www.googleapis.com/auth/admin.directory.user",
4004+ "https://www.googleapis.com/auth/admin.directory.user.alias",
4005+ "https://www.googleapis.com/auth/admin.directory.user.alias.readonly",
4006+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
4007+ ],
4008+ "supportsSubscription": true
4009+ }
4010+ }
4011+ },
4012+ "photos": {
4013+ "methods": {
4014+ "delete": {
4015+ "id": "directory.users.photos.delete",
4016+ "path": "users/{userKey}/photos/thumbnail",
4017+ "httpMethod": "DELETE",
4018+ "description": "Remove photos for the user",
4019+ "parameters": {
4020+ "userKey": {
4021+ "type": "string",
4022+ "description": "Email or immutable Id of the user",
4023+ "required": true,
4024+ "location": "path"
4025+ }
4026+ },
4027+ "parameterOrder": [
4028+ "userKey"
4029+ ],
4030+ "scopes": [
4031+ "https://www.googleapis.com/auth/admin.directory.user"
4032+ ]
4033+ },
4034+ "get": {
4035+ "id": "directory.users.photos.get",
4036+ "path": "users/{userKey}/photos/thumbnail",
4037+ "httpMethod": "GET",
4038+ "description": "Retrieve photo of a user",
4039+ "parameters": {
4040+ "userKey": {
4041+ "type": "string",
4042+ "description": "Email or immutable Id of the user",
4043+ "required": true,
4044+ "location": "path"
4045+ }
4046+ },
4047+ "parameterOrder": [
4048+ "userKey"
4049+ ],
4050+ "response": {
4051+ "$ref": "UserPhoto"
4052+ },
4053+ "scopes": [
4054+ "https://www.googleapis.com/auth/admin.directory.user",
4055+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
4056+ ]
4057+ },
4058+ "patch": {
4059+ "id": "directory.users.photos.patch",
4060+ "path": "users/{userKey}/photos/thumbnail",
4061+ "httpMethod": "PATCH",
4062+ "description": "Add a photo for the user. This method supports patch semantics.",
4063+ "parameters": {
4064+ "userKey": {
4065+ "type": "string",
4066+ "description": "Email or immutable Id of the user",
4067+ "required": true,
4068+ "location": "path"
4069+ }
4070+ },
4071+ "parameterOrder": [
4072+ "userKey"
4073+ ],
4074+ "request": {
4075+ "$ref": "UserPhoto"
4076+ },
4077+ "response": {
4078+ "$ref": "UserPhoto"
4079+ },
4080+ "scopes": [
4081+ "https://www.googleapis.com/auth/admin.directory.user"
4082+ ]
4083+ },
4084+ "update": {
4085+ "id": "directory.users.photos.update",
4086+ "path": "users/{userKey}/photos/thumbnail",
4087+ "httpMethod": "PUT",
4088+ "description": "Add a photo for the user",
4089+ "parameters": {
4090+ "userKey": {
4091+ "type": "string",
4092+ "description": "Email or immutable Id of the user",
4093+ "required": true,
4094+ "location": "path"
4095+ }
4096+ },
4097+ "parameterOrder": [
4098+ "userKey"
4099+ ],
4100+ "request": {
4101+ "$ref": "UserPhoto"
4102+ },
4103+ "response": {
4104+ "$ref": "UserPhoto"
4105+ },
4106+ "scopes": [
4107+ "https://www.googleapis.com/auth/admin.directory.user"
4108+ ]
4109+ }
4110+ }
4111+ }
4112+ }
4113+ },
4114+ "verificationCodes": {
4115+ "methods": {
4116+ "generate": {
4117+ "id": "directory.verificationCodes.generate",
4118+ "path": "users/{userKey}/verificationCodes/generate",
4119+ "httpMethod": "POST",
4120+ "description": "Generate new backup verification codes for the user.",
4121+ "parameters": {
4122+ "userKey": {
4123+ "type": "string",
4124+ "description": "Email or immutable Id of the user",
4125+ "required": true,
4126+ "location": "path"
4127+ }
4128+ },
4129+ "parameterOrder": [
4130+ "userKey"
4131+ ],
4132+ "scopes": [
4133+ "https://www.googleapis.com/auth/admin.directory.user.security"
4134+ ]
4135+ },
4136+ "invalidate": {
4137+ "id": "directory.verificationCodes.invalidate",
4138+ "path": "users/{userKey}/verificationCodes/invalidate",
4139+ "httpMethod": "POST",
4140+ "description": "Invalidate the current backup verification codes for the user.",
4141+ "parameters": {
4142+ "userKey": {
4143+ "type": "string",
4144+ "description": "Email or immutable Id of the user",
4145+ "required": true,
4146+ "location": "path"
4147+ }
4148+ },
4149+ "parameterOrder": [
4150+ "userKey"
4151+ ],
4152+ "scopes": [
4153+ "https://www.googleapis.com/auth/admin.directory.user.security"
4154+ ]
4155+ },
4156+ "list": {
4157+ "id": "directory.verificationCodes.list",
4158+ "path": "users/{userKey}/verificationCodes",
4159+ "httpMethod": "GET",
4160+ "description": "Returns the current set of valid backup verification codes for the specified user.",
4161+ "parameters": {
4162+ "userKey": {
4163+ "type": "string",
4164+ "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.",
4165+ "required": true,
4166+ "location": "path"
4167+ }
4168+ },
4169+ "parameterOrder": [
4170+ "userKey"
4171+ ],
4172+ "response": {
4173+ "$ref": "VerificationCodes"
4174+ },
4175+ "scopes": [
4176+ "https://www.googleapis.com/auth/admin.directory.user.security"
4177+ ]
4178+ }
4179+ }
4180+ }
4181+ }
4182+}