Documentation

Overview

Package admin provides access to the Admin SDK API.

For product documentation, see: http://developers.google.com/admin-sdk/

Creating a client

Usage example:

import "google.golang.org/api/admin/reports/v1"
...
ctx := context.Background()
adminService, err := admin.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication.

For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:

adminService, err := admin.NewService(ctx, option.WithScopes(admin.AdminReportsUsageReadonlyScope))

To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:

adminService, err := admin.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
adminService, err := admin.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See https://godoc.org/google.golang.org/api/option/ for details on options.

Index

Constants

View Source
const (
	// View audit reports for your G Suite domain
	AdminReportsAuditReadonlyScope = "https://www.googleapis.com/auth/admin.reports.audit.readonly"

	// View usage reports for your G Suite domain
	AdminReportsUsageReadonlyScope = "https://www.googleapis.com/auth/admin.reports.usage.readonly"
)

    OAuth2 scopes used by this API.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type Activities

    type Activities struct {
    	// Etag: ETag of the resource.
    	Etag string `json:"etag,omitempty"`
    
    	// Items: Each activity record in the response.
    	Items []*Activity `json:"items,omitempty"`
    
    	// Kind: The type of API resource. For an activity report, the value is
    	// `reports#activities`.
    	Kind string `json:"kind,omitempty"`
    
    	// NextPageToken: Token for retrieving the follow-on next page of the
    	// report. The `nextPageToken` value is used in the request's
    	// `pageToken` query string.
    	NextPageToken string `json:"nextPageToken,omitempty"`
    
    	// ServerResponse contains the HTTP response code and headers from the
    	// server.
    	googleapi.ServerResponse `json:"-"`
    
    	// ForceSendFields is a list of field names (e.g. "Etag") to
    	// unconditionally include in API requests. By default, fields with
    	// empty values are omitted from API requests. However, any non-pointer,
    	// non-interface field appearing in ForceSendFields will be sent to the
    	// server regardless of whether the field is empty or not. This may be
    	// used to include empty fields in Patch requests.
    	ForceSendFields []string `json:"-"`
    
    	// NullFields is a list of field names (e.g. "Etag") to include in API
    	// requests with the JSON null value. By default, fields with empty
    	// values are omitted from API requests. However, any field with an
    	// empty value appearing in NullFields will be sent to the server as
    	// null. It is an error if a field in this list has a non-empty value.
    	// This may be used to include null fields in Patch requests.
    	NullFields []string `json:"-"`
    }

      Activities: JSON template for a collection of activities.

      func (*Activities) MarshalJSON

      func (s *Activities) MarshalJSON() ([]byte, error)

      type ActivitiesListCall

      type ActivitiesListCall struct {
      	// contains filtered or unexported fields
      }

      func (*ActivitiesListCall) ActorIpAddress

      func (c *ActivitiesListCall) ActorIpAddress(actorIpAddress string) *ActivitiesListCall

        ActorIpAddress sets the optional parameter "actorIpAddress": The Internet Protocol (IP) Address of host where the event was performed. This is an additional way to filter a report's summary using the IP address of the user whose activity is being reported. This IP address may or may not reflect the user's physical location. For example, the IP address can be the user's proxy server's address or a virtual private network (VPN) address. This parameter supports both IPv4 and IPv6 address versions.

        func (*ActivitiesListCall) Context

          Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

          func (*ActivitiesListCall) CustomerId

          func (c *ActivitiesListCall) CustomerId(customerId string) *ActivitiesListCall

            CustomerId sets the optional parameter "customerId": The unique ID of the customer to retrieve data for.

            func (*ActivitiesListCall) Do

              Do executes the "reports.activities.list" call. Exactly one of *Activities or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Activities.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

              func (*ActivitiesListCall) EndTime

              func (c *ActivitiesListCall) EndTime(endTime string) *ActivitiesListCall

                EndTime sets the optional parameter "endTime": Sets the end of the range of time shown in the report. The date is in the RFC 3339 format, for example 2010-10-28T10:26:35.000Z. The default value is the approximate time of the API request. An API report has three basic time concepts: - *Date of the API's request for a report*: When the API created and retrieved the report. - *Report's start time*: The beginning of the timespan shown in the report. The `startTime` must be before the `endTime` (if specified) and the current time when the request is made, or the API returns an error. - *Report's end time*: The end of the timespan shown in the report. For example, the timespan of events summarized in a report can start in April and end in May. The report itself can be requested in August. If the `endTime` is not specified, the report returns all activities from the `startTime` until the current time or the most recent 180 days if the `startTime` is more than 180 days in the past.

                func (*ActivitiesListCall) EventName

                func (c *ActivitiesListCall) EventName(eventName string) *ActivitiesListCall

                  EventName sets the optional parameter "eventName": The name of the event being queried by the API. Each `eventName` is related to a specific G Suite service or feature which the API organizes into types of events. An example is the Google Calendar events in the Admin console application's reports. The Calendar Settings `type` structure has all of the Calendar `eventName` activities reported by the API. When an administrator changes a Calendar setting, the API reports this activity in the Calendar Settings `type` and `eventName` parameters. For more information about `eventName` query strings and parameters, see the list of event names for various applications above in `applicationName`.

                  func (*ActivitiesListCall) Fields

                    Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                    func (*ActivitiesListCall) Filters

                    func (c *ActivitiesListCall) Filters(filters string) *ActivitiesListCall

                      Filters sets the optional parameter "filters": The `filters` query string is a comma-separated list. The list is composed of event parameters that are manipulated by relational operators. Event parameters are in the form `parameter1 name[parameter1 value],parameter2 name[parameter2 value],...` These event parameters are associated with a specific `eventName`. An empty report is returned if the filtered request's parameter does not belong to the `eventName`. For more information about `eventName` parameters, see the list of event names for various applications above in `applicationName`. In the following Admin Activity example, the <> operator is URL-encoded in the request's query string (%3C%3E): GET...&eventName=CHANGE_CALENDAR_SETTING &filters=NEW_VALUE%3C%3EREAD_ONLY_ACCESS In the following Drive example, the list can be a view or edit event's `doc_id` parameter with a value that is manipulated by an 'equal to' (==) or 'not equal to' (<>) relational operator. In the first example, the report returns each edited document's `doc_id`. In the second example, the report returns each viewed document's `doc_id` that equals the value 12345 and does not return any viewed document's which have a `doc_id` value of 98765. The <> operator is URL-encoded in the request's query string (%3C%3E): GET...&eventName=edit&filters=doc_id GET...&eventName=view&filters=doc_id==12345,doc_id%3C%3E98765 The relational operators include: - `==` - 'equal to'. - `<>` - 'not equal to'. It is URL-encoded (%3C%3E). - `<` - 'less than'. It is URL-encoded (%3C). - `<=` - 'less than or equal to'. It is URL-encoded (%3C=). - `>` - 'greater than'. It is URL-encoded (%3E). - `>=` - 'greater than or equal to'. It is URL-encoded (%3E=). *Note:* The API doesn't accept multiple values of a parameter. If a particular parameter is supplied more than once in the API request, the API only accepts the last value of that request parameter. In addition, if an invalid request parameter is supplied in the API request, the API ignores that request parameter and returns the response corresponding to the remaining valid request parameters. If no parameters are requested, all parameters are returned.

                      func (*ActivitiesListCall) GroupIdFilter

                      func (c *ActivitiesListCall) GroupIdFilter(groupIdFilter string) *ActivitiesListCall

                        GroupIdFilter sets the optional parameter "groupIdFilter": Comma separated group ids (obfuscated) on which user activities are filtered, i.e, the response will contain activities for only those users that are a part of at least one of the group ids mentioned here. Format: "id:abc123,id:xyz456"

                        func (*ActivitiesListCall) Header

                        func (c *ActivitiesListCall) Header() http.Header

                          Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                          func (*ActivitiesListCall) IfNoneMatch

                          func (c *ActivitiesListCall) IfNoneMatch(entityTag string) *ActivitiesListCall

                            IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                            func (*ActivitiesListCall) MaxResults

                            func (c *ActivitiesListCall) MaxResults(maxResults int64) *ActivitiesListCall

                              MaxResults sets the optional parameter "maxResults": Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page. The `maxResults` query string is optional in the request. The default value is 1000.

                              func (*ActivitiesListCall) OrgUnitID

                              func (c *ActivitiesListCall) OrgUnitID(orgUnitID string) *ActivitiesListCall

                                OrgUnitID sets the optional parameter "orgUnitID": ID of the organizational unit to report on. Activity records will be shown only for users who belong to the specified organizational unit. Data before Dec 17, 2018 doesn't appear in the filtered results.

                                func (*ActivitiesListCall) PageToken

                                func (c *ActivitiesListCall) PageToken(pageToken string) *ActivitiesListCall

                                  PageToken sets the optional parameter "pageToken": The token to specify next page. A report with multiple pages has a `nextPageToken` property in the response. In your follow-on request getting the next page of the report, enter the `nextPageToken` value in the `pageToken` query string.

                                  func (*ActivitiesListCall) Pages

                                  func (c *ActivitiesListCall) Pages(ctx context.Context, f func(*Activities) error) error

                                    Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                    func (*ActivitiesListCall) StartTime

                                    func (c *ActivitiesListCall) StartTime(startTime string) *ActivitiesListCall

                                      StartTime sets the optional parameter "startTime": Sets the beginning of the range of time shown in the report. The date is in the RFC 3339 format, for example 2010-10-28T10:26:35.000Z. The report returns all activities from `startTime` until `endTime`. The `startTime` must be before the `endTime` (if specified) and the current time when the request is made, or the API returns an error.

                                      type ActivitiesService

                                      type ActivitiesService struct {
                                      	// contains filtered or unexported fields
                                      }

                                      func NewActivitiesService

                                      func NewActivitiesService(s *Service) *ActivitiesService

                                      func (*ActivitiesService) List

                                      func (r *ActivitiesService) List(userKey string, applicationName string) *ActivitiesListCall

                                        List: Retrieves a list of activities for a specific customer's account and application such as the Admin console application or the Google Drive application. For more information, see the guides for administrator and Google Drive activity reports. For more information about the activity report's parameters, see the activity parameters reference guides.

                                        func (*ActivitiesService) Watch

                                        func (r *ActivitiesService) Watch(userKey string, applicationName string, channel *Channel) *ActivitiesWatchCall

                                          Watch: Start receiving notifications for account activities. For more information, see Receiving Push Notifications.

                                          type ActivitiesWatchCall

                                          type ActivitiesWatchCall struct {
                                          	// contains filtered or unexported fields
                                          }

                                          func (*ActivitiesWatchCall) ActorIpAddress

                                          func (c *ActivitiesWatchCall) ActorIpAddress(actorIpAddress string) *ActivitiesWatchCall

                                            ActorIpAddress sets the optional parameter "actorIpAddress": The Internet Protocol (IP) Address of host where the event was performed. This is an additional way to filter a report's summary using the IP address of the user whose activity is being reported. This IP address may or may not reflect the user's physical location. For example, the IP address can be the user's proxy server's address or a virtual private network (VPN) address. This parameter supports both IPv4 and IPv6 address versions.

                                            func (*ActivitiesWatchCall) Context

                                              Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                              func (*ActivitiesWatchCall) CustomerId

                                              func (c *ActivitiesWatchCall) CustomerId(customerId string) *ActivitiesWatchCall

                                                CustomerId sets the optional parameter "customerId": The unique ID of the customer to retrieve data for.

                                                func (*ActivitiesWatchCall) Do

                                                  Do executes the "reports.activities.watch" call. Exactly one of *Channel or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Channel.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                  func (*ActivitiesWatchCall) EndTime

                                                  func (c *ActivitiesWatchCall) EndTime(endTime string) *ActivitiesWatchCall

                                                    EndTime sets the optional parameter "endTime": Sets the end of the range of time shown in the report. The date is in the RFC 3339 format, for example 2010-10-28T10:26:35.000Z. The default value is the approximate time of the API request. An API report has three basic time concepts: - *Date of the API's request for a report*: When the API created and retrieved the report. - *Report's start time*: The beginning of the timespan shown in the report. The `startTime` must be before the `endTime` (if specified) and the current time when the request is made, or the API returns an error. - *Report's end time*: The end of the timespan shown in the report. For example, the timespan of events summarized in a report can start in April and end in May. The report itself can be requested in August. If the `endTime` is not specified, the report returns all activities from the `startTime` until the current time or the most recent 180 days if the `startTime` is more than 180 days in the past.

                                                    func (*ActivitiesWatchCall) EventName

                                                    func (c *ActivitiesWatchCall) EventName(eventName string) *ActivitiesWatchCall

                                                      EventName sets the optional parameter "eventName": The name of the event being queried by the API. Each `eventName` is related to a specific G Suite service or feature which the API organizes into types of events. An example is the Google Calendar events in the Admin console application's reports. The Calendar Settings `type` structure has all of the Calendar `eventName` activities reported by the API. When an administrator changes a Calendar setting, the API reports this activity in the Calendar Settings `type` and `eventName` parameters. For more information about `eventName` query strings and parameters, see the list of event names for various applications above in `applicationName`.

                                                      func (*ActivitiesWatchCall) Fields

                                                        Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                        func (*ActivitiesWatchCall) Filters

                                                        func (c *ActivitiesWatchCall) Filters(filters string) *ActivitiesWatchCall

                                                          Filters sets the optional parameter "filters": The `filters` query string is a comma-separated list. The list is composed of event parameters that are manipulated by relational operators. Event parameters are in the form `parameter1 name[parameter1 value],parameter2 name[parameter2 value],...` These event parameters are associated with a specific `eventName`. An empty report is returned if the filtered request's parameter does not belong to the `eventName`. For more information about `eventName` parameters, see the list of event names for various applications above in `applicationName`. In the following Admin Activity example, the <> operator is URL-encoded in the request's query string (%3C%3E): GET...&eventName=CHANGE_CALENDAR_SETTING &filters=NEW_VALUE%3C%3EREAD_ONLY_ACCESS In the following Drive example, the list can be a view or edit event's `doc_id` parameter with a value that is manipulated by an 'equal to' (==) or 'not equal to' (<>) relational operator. In the first example, the report returns each edited document's `doc_id`. In the second example, the report returns each viewed document's `doc_id` that equals the value 12345 and does not return any viewed document's which have a `doc_id` value of 98765. The <> operator is URL-encoded in the request's query string (%3C%3E): GET...&eventName=edit&filters=doc_id GET...&eventName=view&filters=doc_id==12345,doc_id%3C%3E98765 The relational operators include: - `==` - 'equal to'. - `<>` - 'not equal to'. It is URL-encoded (%3C%3E). - `<` - 'less than'. It is URL-encoded (%3C). - `<=` - 'less than or equal to'. It is URL-encoded (%3C=). - `>` - 'greater than'. It is URL-encoded (%3E). - `>=` - 'greater than or equal to'. It is URL-encoded (%3E=). *Note:* The API doesn't accept multiple values of a parameter. If a particular parameter is supplied more than once in the API request, the API only accepts the last value of that request parameter. In addition, if an invalid request parameter is supplied in the API request, the API ignores that request parameter and returns the response corresponding to the remaining valid request parameters. If no parameters are requested, all parameters are returned.

                                                          func (*ActivitiesWatchCall) GroupIdFilter

                                                          func (c *ActivitiesWatchCall) GroupIdFilter(groupIdFilter string) *ActivitiesWatchCall

                                                            GroupIdFilter sets the optional parameter "groupIdFilter": Comma separated group ids (obfuscated) on which user activities are filtered, i.e, the response will contain activities for only those users that are a part of at least one of the group ids mentioned here. Format: "id:abc123,id:xyz456"

                                                            func (*ActivitiesWatchCall) Header

                                                            func (c *ActivitiesWatchCall) Header() http.Header

                                                              Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                              func (*ActivitiesWatchCall) MaxResults

                                                              func (c *ActivitiesWatchCall) MaxResults(maxResults int64) *ActivitiesWatchCall

                                                                MaxResults sets the optional parameter "maxResults": Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page. The `maxResults` query string is optional in the request. The default value is 1000.

                                                                func (*ActivitiesWatchCall) OrgUnitID

                                                                func (c *ActivitiesWatchCall) OrgUnitID(orgUnitID string) *ActivitiesWatchCall

                                                                  OrgUnitID sets the optional parameter "orgUnitID": ID of the organizational unit to report on. Activity records will be shown only for users who belong to the specified organizational unit. Data before Dec 17, 2018 doesn't appear in the filtered results.

                                                                  func (*ActivitiesWatchCall) PageToken

                                                                  func (c *ActivitiesWatchCall) PageToken(pageToken string) *ActivitiesWatchCall

                                                                    PageToken sets the optional parameter "pageToken": The token to specify next page. A report with multiple pages has a `nextPageToken` property in the response. In your follow-on request getting the next page of the report, enter the `nextPageToken` value in the `pageToken` query string.

                                                                    func (*ActivitiesWatchCall) StartTime

                                                                    func (c *ActivitiesWatchCall) StartTime(startTime string) *ActivitiesWatchCall

                                                                      StartTime sets the optional parameter "startTime": Sets the beginning of the range of time shown in the report. The date is in the RFC 3339 format, for example 2010-10-28T10:26:35.000Z. The report returns all activities from `startTime` until `endTime`. The `startTime` must be before the `endTime` (if specified) and the current time when the request is made, or the API returns an error.

                                                                      type Activity

                                                                      type Activity struct {
                                                                      	// Actor: User doing the action.
                                                                      	Actor *ActivityActor `json:"actor,omitempty"`
                                                                      
                                                                      	// Etag: ETag of the entry.
                                                                      	Etag string `json:"etag,omitempty"`
                                                                      
                                                                      	// Events: Activity events in the report.
                                                                      	Events []*ActivityEvents `json:"events,omitempty"`
                                                                      
                                                                      	// Id: Unique identifier for each activity record.
                                                                      	Id *ActivityId `json:"id,omitempty"`
                                                                      
                                                                      	// IpAddress: IP address of the user doing the action. This is the
                                                                      	// Internet Protocol (IP) address of the user when logging into G Suite
                                                                      	// which may or may not reflect the user's physical location. For
                                                                      	// example, the IP address can be the user's proxy server's address or a
                                                                      	// virtual private network (VPN) address. The API supports IPv4 and
                                                                      	// IPv6.
                                                                      	IpAddress string `json:"ipAddress,omitempty"`
                                                                      
                                                                      	// Kind: The type of API resource. For an activity report, the value is
                                                                      	// `audit#activity`.
                                                                      	Kind string `json:"kind,omitempty"`
                                                                      
                                                                      	// OwnerDomain: This is the domain that is affected by the report's
                                                                      	// event. For example domain of Admin console or the Drive application's
                                                                      	// document owner.
                                                                      	OwnerDomain string `json:"ownerDomain,omitempty"`
                                                                      
                                                                      	// ForceSendFields is a list of field names (e.g. "Actor") to
                                                                      	// unconditionally include in API requests. By default, fields with
                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                      	// used to include empty fields in Patch requests.
                                                                      	ForceSendFields []string `json:"-"`
                                                                      
                                                                      	// NullFields is a list of field names (e.g. "Actor") to include in API
                                                                      	// requests with the JSON null value. By default, fields with empty
                                                                      	// values are omitted from API requests. However, any field with an
                                                                      	// empty value appearing in NullFields will be sent to the server as
                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                      	// This may be used to include null fields in Patch requests.
                                                                      	NullFields []string `json:"-"`
                                                                      }

                                                                        Activity: JSON template for the activity resource.

                                                                        func (*Activity) MarshalJSON

                                                                        func (s *Activity) MarshalJSON() ([]byte, error)

                                                                        type ActivityActor

                                                                        type ActivityActor struct {
                                                                        	// CallerType: The type of actor.
                                                                        	CallerType string `json:"callerType,omitempty"`
                                                                        
                                                                        	// Email: The primary email address of the actor. May be absent if there
                                                                        	// is no email address associated with the actor.
                                                                        	Email string `json:"email,omitempty"`
                                                                        
                                                                        	// Key: Only present when `callerType` is `KEY`. Can be the
                                                                        	// `consumer_key` of the requestor for OAuth 2LO API requests or an
                                                                        	// identifier for robot accounts.
                                                                        	Key string `json:"key,omitempty"`
                                                                        
                                                                        	// ProfileId: The unique G Suite profile ID of the actor. May be absent
                                                                        	// if the actor is not a G Suite user.
                                                                        	ProfileId string `json:"profileId,omitempty"`
                                                                        
                                                                        	// ForceSendFields is a list of field names (e.g. "CallerType") to
                                                                        	// unconditionally include in API requests. By default, fields with
                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                        	// used to include empty fields in Patch requests.
                                                                        	ForceSendFields []string `json:"-"`
                                                                        
                                                                        	// NullFields is a list of field names (e.g. "CallerType") to include in
                                                                        	// API requests with the JSON null value. By default, fields with empty
                                                                        	// values are omitted from API requests. However, any field with an
                                                                        	// empty value appearing in NullFields will be sent to the server as
                                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                                        	// This may be used to include null fields in Patch requests.
                                                                        	NullFields []string `json:"-"`
                                                                        }

                                                                          ActivityActor: User doing the action.

                                                                          func (*ActivityActor) MarshalJSON

                                                                          func (s *ActivityActor) MarshalJSON() ([]byte, error)

                                                                          type ActivityEvents

                                                                          type ActivityEvents struct {
                                                                          	// Name: Name of the event. This is the specific name of the activity
                                                                          	// reported by the API. And each `eventName` is related to a specific G
                                                                          	// Suite service or feature which the API organizes into types of
                                                                          	// events. For `eventName` request parameters in general: - If no
                                                                          	// `eventName` is given, the report returns all possible instances of an
                                                                          	// `eventName`. - When you request an `eventName`, the API's response
                                                                          	// returns all activities which contain that `eventName`. It is possible
                                                                          	// that the returned activities will have other `eventName` properties
                                                                          	// in addition to the one requested. For more information about
                                                                          	// `eventName` properties, see the list of event names for various
                                                                          	// applications above in `applicationName`.
                                                                          	Name string `json:"name,omitempty"`
                                                                          
                                                                          	// Parameters: Parameter value pairs for various applications. For more
                                                                          	// information about `eventName` parameters, see the list of event names
                                                                          	// for various applications above in `applicationName`.
                                                                          	Parameters []*ActivityEventsParameters `json:"parameters,omitempty"`
                                                                          
                                                                          	// Type: Type of event. The G Suite service or feature that an
                                                                          	// administrator changes is identified in the `type` property which
                                                                          	// identifies an event using the `eventName` property. For a full list
                                                                          	// of the API's `type` categories, see the list of event names for
                                                                          	// various applications above in `applicationName`.
                                                                          	Type string `json:"type,omitempty"`
                                                                          
                                                                          	// ForceSendFields is a list of field names (e.g. "Name") to
                                                                          	// unconditionally include in API requests. By default, fields with
                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                          	// used to include empty fields in Patch requests.
                                                                          	ForceSendFields []string `json:"-"`
                                                                          
                                                                          	// NullFields is a list of field names (e.g. "Name") to include in API
                                                                          	// requests with the JSON null value. By default, fields with empty
                                                                          	// values are omitted from API requests. However, any field with an
                                                                          	// empty value appearing in NullFields will be sent to the server as
                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                          	// This may be used to include null fields in Patch requests.
                                                                          	NullFields []string `json:"-"`
                                                                          }

                                                                          func (*ActivityEvents) MarshalJSON

                                                                          func (s *ActivityEvents) MarshalJSON() ([]byte, error)

                                                                          type ActivityEventsParameters

                                                                          type ActivityEventsParameters struct {
                                                                          	// BoolValue: Boolean value of the parameter.
                                                                          	BoolValue bool `json:"boolValue,omitempty"`
                                                                          
                                                                          	// IntValue: Integer value of the parameter.
                                                                          	IntValue int64 `json:"intValue,omitempty,string"`
                                                                          
                                                                          	// MessageValue: Nested parameter value pairs associated with this
                                                                          	// parameter. Complex value type for a parameter are returned as a list
                                                                          	// of parameter values. For example, the address parameter may have a
                                                                          	// value as `[{parameter: [{name: city, value: abc}]}]`
                                                                          	MessageValue *ActivityEventsParametersMessageValue `json:"messageValue,omitempty"`
                                                                          
                                                                          	// MultiIntValue: Integer values of the parameter.
                                                                          	MultiIntValue googleapi.Int64s `json:"multiIntValue,omitempty"`
                                                                          
                                                                          	// MultiMessageValue: List of `messageValue` objects.
                                                                          	MultiMessageValue []*ActivityEventsParametersMultiMessageValue `json:"multiMessageValue,omitempty"`
                                                                          
                                                                          	// MultiValue: String values of the parameter.
                                                                          	MultiValue []string `json:"multiValue,omitempty"`
                                                                          
                                                                          	// Name: The name of the parameter.
                                                                          	Name string `json:"name,omitempty"`
                                                                          
                                                                          	// Value: String value of the parameter.
                                                                          	Value string `json:"value,omitempty"`
                                                                          
                                                                          	// ForceSendFields is a list of field names (e.g. "BoolValue") to
                                                                          	// unconditionally include in API requests. By default, fields with
                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                          	// used to include empty fields in Patch requests.
                                                                          	ForceSendFields []string `json:"-"`
                                                                          
                                                                          	// NullFields is a list of field names (e.g. "BoolValue") to include in
                                                                          	// API requests with the JSON null value. By default, fields with empty
                                                                          	// values are omitted from API requests. However, any field with an
                                                                          	// empty value appearing in NullFields will be sent to the server as
                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                          	// This may be used to include null fields in Patch requests.
                                                                          	NullFields []string `json:"-"`
                                                                          }

                                                                          func (*ActivityEventsParameters) MarshalJSON

                                                                          func (s *ActivityEventsParameters) MarshalJSON() ([]byte, error)

                                                                          type ActivityEventsParametersMessageValue

                                                                          type ActivityEventsParametersMessageValue struct {
                                                                          	// Parameter: Parameter values
                                                                          	Parameter []*NestedParameter `json:"parameter,omitempty"`
                                                                          
                                                                          	// ForceSendFields is a list of field names (e.g. "Parameter") to
                                                                          	// unconditionally include in API requests. By default, fields with
                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                          	// used to include empty fields in Patch requests.
                                                                          	ForceSendFields []string `json:"-"`
                                                                          
                                                                          	// NullFields is a list of field names (e.g. "Parameter") to include in
                                                                          	// API requests with the JSON null value. By default, fields with empty
                                                                          	// values are omitted from API requests. However, any field with an
                                                                          	// empty value appearing in NullFields will be sent to the server as
                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                          	// This may be used to include null fields in Patch requests.
                                                                          	NullFields []string `json:"-"`
                                                                          }

                                                                            ActivityEventsParametersMessageValue: Nested parameter value pairs associated with this parameter. Complex value type for a parameter are returned as a list of parameter values. For example, the address parameter may have a value as `[{parameter: [{name: city, value: abc}]}]`

                                                                            func (*ActivityEventsParametersMessageValue) MarshalJSON

                                                                            func (s *ActivityEventsParametersMessageValue) MarshalJSON() ([]byte, error)

                                                                            type ActivityEventsParametersMultiMessageValue

                                                                            type ActivityEventsParametersMultiMessageValue struct {
                                                                            	// Parameter: Parameter values
                                                                            	Parameter []*NestedParameter `json:"parameter,omitempty"`
                                                                            
                                                                            	// ForceSendFields is a list of field names (e.g. "Parameter") to
                                                                            	// unconditionally include in API requests. By default, fields with
                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                            	// used to include empty fields in Patch requests.
                                                                            	ForceSendFields []string `json:"-"`
                                                                            
                                                                            	// NullFields is a list of field names (e.g. "Parameter") to include in
                                                                            	// API requests with the JSON null value. By default, fields with empty
                                                                            	// values are omitted from API requests. However, any field with an
                                                                            	// empty value appearing in NullFields will be sent to the server as
                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                            	// This may be used to include null fields in Patch requests.
                                                                            	NullFields []string `json:"-"`
                                                                            }

                                                                            func (*ActivityEventsParametersMultiMessageValue) MarshalJSON

                                                                            type ActivityId

                                                                            type ActivityId struct {
                                                                            	// ApplicationName: Application name to which the event belongs. For
                                                                            	// possible values see the list of applications above in
                                                                            	// `applicationName`.
                                                                            	ApplicationName string `json:"applicationName,omitempty"`
                                                                            
                                                                            	// CustomerId: The unique identifier for a G suite account.
                                                                            	CustomerId string `json:"customerId,omitempty"`
                                                                            
                                                                            	// Time: Time of occurrence of the activity. This is in UNIX epoch time
                                                                            	// in seconds.
                                                                            	Time string `json:"time,omitempty"`
                                                                            
                                                                            	// UniqueQualifier: Unique qualifier if multiple events have the same
                                                                            	// time.
                                                                            	UniqueQualifier int64 `json:"uniqueQualifier,omitempty,string"`
                                                                            
                                                                            	// ForceSendFields is a list of field names (e.g. "ApplicationName") to
                                                                            	// unconditionally include in API requests. By default, fields with
                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                            	// used to include empty fields in Patch requests.
                                                                            	ForceSendFields []string `json:"-"`
                                                                            
                                                                            	// NullFields is a list of field names (e.g. "ApplicationName") to
                                                                            	// include in API requests with the JSON null value. By default, fields
                                                                            	// with empty values are omitted from API requests. However, any field
                                                                            	// with an empty value appearing in NullFields will be sent to the
                                                                            	// server as null. It is an error if a field in this list has a
                                                                            	// non-empty value. This may be used to include null fields in Patch
                                                                            	// requests.
                                                                            	NullFields []string `json:"-"`
                                                                            }

                                                                              ActivityId: Unique identifier for each activity record.

                                                                              func (*ActivityId) MarshalJSON

                                                                              func (s *ActivityId) MarshalJSON() ([]byte, error)

                                                                              type Channel

                                                                              type Channel struct {
                                                                              	// Address: The address where notifications are delivered for this
                                                                              	// channel.
                                                                              	Address string `json:"address,omitempty"`
                                                                              
                                                                              	// Expiration: Date and time of notification channel expiration,
                                                                              	// expressed as a Unix timestamp, in milliseconds. Optional.
                                                                              	Expiration int64 `json:"expiration,omitempty,string"`
                                                                              
                                                                              	// Id: A UUID or similar unique string that identifies this channel.
                                                                              	Id string `json:"id,omitempty"`
                                                                              
                                                                              	// Kind: Identifies this as a notification channel used to watch for
                                                                              	// changes to a resource, which is "api#channel".
                                                                              	Kind string `json:"kind,omitempty"`
                                                                              
                                                                              	// Params: Additional parameters controlling delivery channel behavior.
                                                                              	// Optional.
                                                                              	Params map[string]string `json:"params,omitempty"`
                                                                              
                                                                              	// Payload: A Boolean value to indicate whether payload is wanted.
                                                                              	// Optional.
                                                                              	Payload bool `json:"payload,omitempty"`
                                                                              
                                                                              	// ResourceId: An opaque ID that identifies the resource being watched
                                                                              	// on this channel. Stable across different API versions.
                                                                              	ResourceId string `json:"resourceId,omitempty"`
                                                                              
                                                                              	// ResourceUri: A version-specific identifier for the watched resource.
                                                                              	ResourceUri string `json:"resourceUri,omitempty"`
                                                                              
                                                                              	// Token: An arbitrary string delivered to the target address with each
                                                                              	// notification delivered over this channel. Optional.
                                                                              	Token string `json:"token,omitempty"`
                                                                              
                                                                              	// Type: The type of delivery mechanism used for this channel. The value
                                                                              	// should be set to "web_hook".
                                                                              	Type string `json:"type,omitempty"`
                                                                              
                                                                              	// ServerResponse contains the HTTP response code and headers from the
                                                                              	// server.
                                                                              	googleapi.ServerResponse `json:"-"`
                                                                              
                                                                              	// ForceSendFields is a list of field names (e.g. "Address") to
                                                                              	// unconditionally include in API requests. By default, fields with
                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                              	// used to include empty fields in Patch requests.
                                                                              	ForceSendFields []string `json:"-"`
                                                                              
                                                                              	// NullFields is a list of field names (e.g. "Address") to include in
                                                                              	// API requests with the JSON null value. By default, fields with empty
                                                                              	// values are omitted from API requests. However, any field with an
                                                                              	// empty value appearing in NullFields will be sent to the server as
                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                              	// This may be used to include null fields in Patch requests.
                                                                              	NullFields []string `json:"-"`
                                                                              }

                                                                                Channel: A notification channel used to watch for resource changes.

                                                                                func (*Channel) MarshalJSON

                                                                                func (s *Channel) MarshalJSON() ([]byte, error)

                                                                                type ChannelsService

                                                                                type ChannelsService struct {
                                                                                	// contains filtered or unexported fields
                                                                                }

                                                                                func NewChannelsService

                                                                                func NewChannelsService(s *Service) *ChannelsService

                                                                                func (*ChannelsService) Stop

                                                                                func (r *ChannelsService) Stop(channel *Channel) *ChannelsStopCall

                                                                                  Stop: Stop watching resources through this channel.

                                                                                  type ChannelsStopCall

                                                                                  type ChannelsStopCall struct {
                                                                                  	// contains filtered or unexported fields
                                                                                  }

                                                                                  func (*ChannelsStopCall) Context

                                                                                    Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                    func (*ChannelsStopCall) Do

                                                                                    func (c *ChannelsStopCall) Do(opts ...googleapi.CallOption) error

                                                                                      Do executes the "admin.channels.stop" call.

                                                                                      func (*ChannelsStopCall) Fields

                                                                                        Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                        func (*ChannelsStopCall) Header

                                                                                        func (c *ChannelsStopCall) Header() http.Header

                                                                                          Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                          type CustomerUsageReportsGetCall

                                                                                          type CustomerUsageReportsGetCall struct {
                                                                                          	// contains filtered or unexported fields
                                                                                          }

                                                                                          func (*CustomerUsageReportsGetCall) Context

                                                                                            Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                            func (*CustomerUsageReportsGetCall) CustomerId

                                                                                              CustomerId sets the optional parameter "customerId": The unique ID of the customer to retrieve data for.

                                                                                              func (*CustomerUsageReportsGetCall) Do

                                                                                                Do executes the "reports.customerUsageReports.get" call. Exactly one of *UsageReports or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *UsageReports.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                func (*CustomerUsageReportsGetCall) Fields

                                                                                                  Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                  func (*CustomerUsageReportsGetCall) Header

                                                                                                    Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                    func (*CustomerUsageReportsGetCall) IfNoneMatch

                                                                                                      IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                      func (*CustomerUsageReportsGetCall) PageToken

                                                                                                        PageToken sets the optional parameter "pageToken": Token to specify next page. A report with multiple pages has a `nextPageToken` property in the response. For your follow-on requests getting all of the report's pages, enter the `nextPageToken` value in the `pageToken` query string.

                                                                                                        func (*CustomerUsageReportsGetCall) Pages

                                                                                                          Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                                                                                          func (*CustomerUsageReportsGetCall) Parameters

                                                                                                            Parameters sets the optional parameter "parameters": The `parameters` query string is a comma-separated list of event parameters that refine a report's results. The parameter is associated with a specific application. The application values for the Customers usage report include `accounts`, `app_maker`, `apps_scripts`, `calendar`, `classroom`, `cros`, `docs`, `gmail`, `gplus`, `device_management`, `meet`, and `sites`. A `parameters` query string is in the CSV form of `app_name1:param_name1, app_name2:param_name2`. *Note:* The API doesn't accept multiple values of a parameter. If a particular parameter is supplied more than once in the API request, the API only accepts the last value of that request parameter. In addition, if an invalid request parameter is supplied in the API request, the API ignores that request parameter and returns the response corresponding to the remaining valid request parameters. An example of an invalid request parameter is one that does not belong to the application. If no parameters are requested, all parameters are returned.

                                                                                                            type CustomerUsageReportsService

                                                                                                            type CustomerUsageReportsService struct {
                                                                                                            	// contains filtered or unexported fields
                                                                                                            }

                                                                                                            func NewCustomerUsageReportsService

                                                                                                            func NewCustomerUsageReportsService(s *Service) *CustomerUsageReportsService

                                                                                                            func (*CustomerUsageReportsService) Get

                                                                                                              Get: Retrieves a report which is a collection of properties and statistics for a specific customer's account. For more information, see the Customers Usage Report guide. For more information about the customer report's parameters, see the Customers Usage parameters reference guides.

                                                                                                              type EntityUsageReportsGetCall

                                                                                                              type EntityUsageReportsGetCall struct {
                                                                                                              	// contains filtered or unexported fields
                                                                                                              }

                                                                                                              func (*EntityUsageReportsGetCall) Context

                                                                                                                Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                func (*EntityUsageReportsGetCall) CustomerId

                                                                                                                func (c *EntityUsageReportsGetCall) CustomerId(customerId string) *EntityUsageReportsGetCall

                                                                                                                  CustomerId sets the optional parameter "customerId": The unique ID of the customer to retrieve data for.

                                                                                                                  func (*EntityUsageReportsGetCall) Do

                                                                                                                    Do executes the "reports.entityUsageReports.get" call. Exactly one of *UsageReports or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *UsageReports.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                    func (*EntityUsageReportsGetCall) Fields

                                                                                                                      Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                      func (*EntityUsageReportsGetCall) Filters

                                                                                                                        Filters sets the optional parameter "filters": The `filters` query string is a comma-separated list of an application's event parameters where the parameter's value is manipulated by a relational operator. The `filters` query string includes the name of the application whose usage is returned in the report. The application values for the Entities usage report include `accounts`, `docs`, and `gmail`. Filters are in the form `[application name]:parameter name[parameter value],...`. In this example, the `<>` 'not equal to' operator is URL-encoded in the request's query string (%3C%3E): GET https://www.googleapis.com/admin/reports/v1/usage/gplus_communities/all/dates/2017-12-01 ?parameters=gplus:community_name,gplus:num_total_members &filters=gplus:num_total_members%3C%3E0 The relational operators include: - `==` - 'equal to'. - `<>` - 'not equal to'. It is URL-encoded (%3C%3E). - `<` - 'less than'. It is URL-encoded (%3C). - `<=` - 'less than or equal to'. It is URL-encoded (%3C=). - `>` - 'greater than'. It is URL-encoded (%3E). - `>=` - 'greater than or equal to'. It is URL-encoded (%3E=). Filters can only be applied to numeric parameters.

                                                                                                                        func (*EntityUsageReportsGetCall) Header

                                                                                                                          Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                          func (*EntityUsageReportsGetCall) IfNoneMatch

                                                                                                                          func (c *EntityUsageReportsGetCall) IfNoneMatch(entityTag string) *EntityUsageReportsGetCall

                                                                                                                            IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                                            func (*EntityUsageReportsGetCall) MaxResults

                                                                                                                            func (c *EntityUsageReportsGetCall) MaxResults(maxResults int64) *EntityUsageReportsGetCall

                                                                                                                              MaxResults sets the optional parameter "maxResults": Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page.

                                                                                                                              func (*EntityUsageReportsGetCall) PageToken

                                                                                                                                PageToken sets the optional parameter "pageToken": Token to specify next page. A report with multiple pages has a `nextPageToken` property in the response. In your follow-on request getting the next page of the report, enter the `nextPageToken` value in the `pageToken` query string.

                                                                                                                                func (*EntityUsageReportsGetCall) Pages

                                                                                                                                  Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                                                                                                                  func (*EntityUsageReportsGetCall) Parameters

                                                                                                                                  func (c *EntityUsageReportsGetCall) Parameters(parameters string) *EntityUsageReportsGetCall

                                                                                                                                    Parameters sets the optional parameter "parameters": The `parameters` query string is a comma-separated list of event parameters that refine a report's results. The parameter is associated with a specific application. The application values for the Entities usage report are only `gplus`. A `parameter` query string is in the CSV form of `[app_name1:param_name1], [app_name2:param_name2]...`. *Note:* The API doesn't accept multiple values of a parameter. If a particular parameter is supplied more than once in the API request, the API only accepts the last value of that request parameter. In addition, if an invalid request parameter is supplied in the API request, the API ignores that request parameter and returns the response corresponding to the remaining valid request parameters. An example of an invalid request parameter is one that does not belong to the application. If no parameters are requested, all parameters are returned.

                                                                                                                                    type EntityUsageReportsService

                                                                                                                                    type EntityUsageReportsService struct {
                                                                                                                                    	// contains filtered or unexported fields
                                                                                                                                    }

                                                                                                                                    func NewEntityUsageReportsService

                                                                                                                                    func NewEntityUsageReportsService(s *Service) *EntityUsageReportsService

                                                                                                                                    func (*EntityUsageReportsService) Get

                                                                                                                                    func (r *EntityUsageReportsService) Get(entityType string, entityKey string, date string) *EntityUsageReportsGetCall

                                                                                                                                      Get: Retrieves a report which is a collection of properties and statistics for entities used by users within the account. For more information, see the Entities Usage Report guide. For more information about the entities report's parameters, see the Entities Usage parameters reference guides.

                                                                                                                                      type NestedParameter

                                                                                                                                      type NestedParameter struct {
                                                                                                                                      	// BoolValue: Boolean value of the parameter.
                                                                                                                                      	BoolValue bool `json:"boolValue,omitempty"`
                                                                                                                                      
                                                                                                                                      	// IntValue: Integer value of the parameter.
                                                                                                                                      	IntValue int64 `json:"intValue,omitempty,string"`
                                                                                                                                      
                                                                                                                                      	// MultiBoolValue: Multiple boolean values of the parameter.
                                                                                                                                      	MultiBoolValue []bool `json:"multiBoolValue,omitempty"`
                                                                                                                                      
                                                                                                                                      	// MultiIntValue: Multiple integer values of the parameter.
                                                                                                                                      	MultiIntValue googleapi.Int64s `json:"multiIntValue,omitempty"`
                                                                                                                                      
                                                                                                                                      	// MultiValue: Multiple string values of the parameter.
                                                                                                                                      	MultiValue []string `json:"multiValue,omitempty"`
                                                                                                                                      
                                                                                                                                      	// Name: The name of the parameter.
                                                                                                                                      	Name string `json:"name,omitempty"`
                                                                                                                                      
                                                                                                                                      	// Value: String value of the parameter.
                                                                                                                                      	Value string `json:"value,omitempty"`
                                                                                                                                      
                                                                                                                                      	// ForceSendFields is a list of field names (e.g. "BoolValue") to
                                                                                                                                      	// unconditionally include in API requests. By default, fields with
                                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                                      
                                                                                                                                      	// NullFields is a list of field names (e.g. "BoolValue") to include in
                                                                                                                                      	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                      	// values are omitted from API requests. However, any field with an
                                                                                                                                      	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                      	// This may be used to include null fields in Patch requests.
                                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                                      }

                                                                                                                                        NestedParameter: JSON template for a parameter used in various reports.

                                                                                                                                        func (*NestedParameter) MarshalJSON

                                                                                                                                        func (s *NestedParameter) MarshalJSON() ([]byte, error)

                                                                                                                                        type Service

                                                                                                                                        type Service struct {
                                                                                                                                        	BasePath  string // API endpoint base URL
                                                                                                                                        	UserAgent string // optional additional User-Agent fragment
                                                                                                                                        
                                                                                                                                        	Activities *ActivitiesService
                                                                                                                                        
                                                                                                                                        	Channels *ChannelsService
                                                                                                                                        
                                                                                                                                        	CustomerUsageReports *CustomerUsageReportsService
                                                                                                                                        
                                                                                                                                        	EntityUsageReports *EntityUsageReportsService
                                                                                                                                        
                                                                                                                                        	UserUsageReport *UserUsageReportService
                                                                                                                                        	// contains filtered or unexported fields
                                                                                                                                        }

                                                                                                                                        func New

                                                                                                                                        func New(client *http.Client) (*Service, error)

                                                                                                                                          New creates a new Service. It uses the provided http.Client for requests.

                                                                                                                                          Deprecated: please use NewService instead. To provide a custom HTTP client, use option.WithHTTPClient. If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.

                                                                                                                                          func NewService

                                                                                                                                          func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error)

                                                                                                                                            NewService creates a new Service.

                                                                                                                                            type UsageReport

                                                                                                                                            type UsageReport struct {
                                                                                                                                            	// Date: Output only. The date of the report request.
                                                                                                                                            	Date string `json:"date,omitempty"`
                                                                                                                                            
                                                                                                                                            	// Entity: Output only. Information about the type of the item.
                                                                                                                                            	Entity *UsageReportEntity `json:"entity,omitempty"`
                                                                                                                                            
                                                                                                                                            	// Etag: ETag of the resource.
                                                                                                                                            	Etag string `json:"etag,omitempty"`
                                                                                                                                            
                                                                                                                                            	// Kind: The type of API resource. For a usage report, the value is
                                                                                                                                            	// `admin#reports#usageReport`.
                                                                                                                                            	Kind string `json:"kind,omitempty"`
                                                                                                                                            
                                                                                                                                            	// Parameters: Output only. Parameter value pairs for various
                                                                                                                                            	// applications. For the Entity Usage Report parameters and values, see
                                                                                                                                            	// the Entity Usage parameters reference
                                                                                                                                            	// (/admin-sdk/reports/v1/reference/usage-ref-appendix-a/entities).
                                                                                                                                            	Parameters []*UsageReportParameters `json:"parameters,omitempty"`
                                                                                                                                            
                                                                                                                                            	// ForceSendFields is a list of field names (e.g. "Date") to
                                                                                                                                            	// unconditionally include in API requests. By default, fields with
                                                                                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                                                                                            	// used to include empty fields in Patch requests.
                                                                                                                                            	ForceSendFields []string `json:"-"`
                                                                                                                                            
                                                                                                                                            	// NullFields is a list of field names (e.g. "Date") to include in API
                                                                                                                                            	// requests with the JSON null value. By default, fields with empty
                                                                                                                                            	// values are omitted from API requests. However, any field with an
                                                                                                                                            	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                            	// This may be used to include null fields in Patch requests.
                                                                                                                                            	NullFields []string `json:"-"`
                                                                                                                                            }

                                                                                                                                              UsageReport: JSON template for a usage report.

                                                                                                                                              func (*UsageReport) MarshalJSON

                                                                                                                                              func (s *UsageReport) MarshalJSON() ([]byte, error)

                                                                                                                                              type UsageReportEntity

                                                                                                                                              type UsageReportEntity struct {
                                                                                                                                              	// CustomerId: Output only. The unique identifier of the customer's
                                                                                                                                              	// account.
                                                                                                                                              	CustomerId string `json:"customerId,omitempty"`
                                                                                                                                              
                                                                                                                                              	// EntityId: Output only. Object key. Only relevant if entity.type =
                                                                                                                                              	// "OBJECT" Note: external-facing name of report is "Entities" rather
                                                                                                                                              	// than "Objects".
                                                                                                                                              	EntityId string `json:"entityId,omitempty"`
                                                                                                                                              
                                                                                                                                              	// ProfileId: Output only. The user's immutable G Suite profile
                                                                                                                                              	// identifier.
                                                                                                                                              	ProfileId string `json:"profileId,omitempty"`
                                                                                                                                              
                                                                                                                                              	// Type: Output only. The type of item. The value is `user`.
                                                                                                                                              	Type string `json:"type,omitempty"`
                                                                                                                                              
                                                                                                                                              	// UserEmail: Output only. The user's email address. Only relevant if
                                                                                                                                              	// entity.type = "USER"
                                                                                                                                              	UserEmail string `json:"userEmail,omitempty"`
                                                                                                                                              
                                                                                                                                              	// ForceSendFields is a list of field names (e.g. "CustomerId") to
                                                                                                                                              	// unconditionally include in API requests. By default, fields with
                                                                                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                                                                                              	// used to include empty fields in Patch requests.
                                                                                                                                              	ForceSendFields []string `json:"-"`
                                                                                                                                              
                                                                                                                                              	// NullFields is a list of field names (e.g. "CustomerId") to include in
                                                                                                                                              	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                              	// values are omitted from API requests. However, any field with an
                                                                                                                                              	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                              	// This may be used to include null fields in Patch requests.
                                                                                                                                              	NullFields []string `json:"-"`
                                                                                                                                              }

                                                                                                                                                UsageReportEntity: Output only. Information about the type of the item.

                                                                                                                                                func (*UsageReportEntity) MarshalJSON

                                                                                                                                                func (s *UsageReportEntity) MarshalJSON() ([]byte, error)

                                                                                                                                                type UsageReportParameters

                                                                                                                                                type UsageReportParameters struct {
                                                                                                                                                	// BoolValue: Output only. Boolean value of the parameter.
                                                                                                                                                	BoolValue bool `json:"boolValue,omitempty"`
                                                                                                                                                
                                                                                                                                                	// DatetimeValue: The RFC 3339 formatted value of the parameter, for
                                                                                                                                                	// example 2010-10-28T10:26:35.000Z.
                                                                                                                                                	DatetimeValue string `json:"datetimeValue,omitempty"`
                                                                                                                                                
                                                                                                                                                	// IntValue: Output only. Integer value of the parameter.
                                                                                                                                                	IntValue int64 `json:"intValue,omitempty,string"`
                                                                                                                                                
                                                                                                                                                	// MsgValue: Output only. Nested message value of the parameter.
                                                                                                                                                	MsgValue []googleapi.RawMessage `json:"msgValue,omitempty"`
                                                                                                                                                
                                                                                                                                                	// Name: The name of the parameter. For the User Usage Report parameter
                                                                                                                                                	// names, see the User Usage parameters reference.
                                                                                                                                                	Name string `json:"name,omitempty"`
                                                                                                                                                
                                                                                                                                                	// StringValue: Output only. String value of the parameter.
                                                                                                                                                	StringValue string `json:"stringValue,omitempty"`
                                                                                                                                                
                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "BoolValue") to
                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                
                                                                                                                                                	// NullFields is a list of field names (e.g. "BoolValue") to include in
                                                                                                                                                	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                	// values are omitted from API requests. However, any field with an
                                                                                                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                }

                                                                                                                                                func (*UsageReportParameters) MarshalJSON

                                                                                                                                                func (s *UsageReportParameters) MarshalJSON() ([]byte, error)

                                                                                                                                                type UsageReports

                                                                                                                                                type UsageReports struct {
                                                                                                                                                	// Etag: ETag of the resource.
                                                                                                                                                	Etag string `json:"etag,omitempty"`
                                                                                                                                                
                                                                                                                                                	// Kind: The type of API resource. For a usage report, the value is
                                                                                                                                                	// `admin#reports#usageReports`.
                                                                                                                                                	Kind string `json:"kind,omitempty"`
                                                                                                                                                
                                                                                                                                                	// NextPageToken: Token to specify next page. A report with multiple
                                                                                                                                                	// pages has a `nextPageToken` property in the response. For your
                                                                                                                                                	// follow-on requests getting all of the report's pages, enter the
                                                                                                                                                	// `nextPageToken` value in the `pageToken` query string.
                                                                                                                                                	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                                
                                                                                                                                                	// UsageReports: Various application parameter records.
                                                                                                                                                	UsageReports []*UsageReport `json:"usageReports,omitempty"`
                                                                                                                                                
                                                                                                                                                	// Warnings: Warnings, if any.
                                                                                                                                                	Warnings []*UsageReportsWarnings `json:"warnings,omitempty"`
                                                                                                                                                
                                                                                                                                                	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                	// server.
                                                                                                                                                	googleapi.ServerResponse `json:"-"`
                                                                                                                                                
                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "Etag") to
                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                
                                                                                                                                                	// NullFields is a list of field names (e.g. "Etag") to include in API
                                                                                                                                                	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                	// values are omitted from API requests. However, any field with an
                                                                                                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                }

                                                                                                                                                func (*UsageReports) MarshalJSON

                                                                                                                                                func (s *UsageReports) MarshalJSON() ([]byte, error)

                                                                                                                                                type UsageReportsWarnings

                                                                                                                                                type UsageReportsWarnings struct {
                                                                                                                                                	// Code: Machine readable code or warning type. The warning code value
                                                                                                                                                	// is `200`.
                                                                                                                                                	Code string `json:"code,omitempty"`
                                                                                                                                                
                                                                                                                                                	// Data: Key-value pairs to give detailed information on the warning.
                                                                                                                                                	Data []*UsageReportsWarningsData `json:"data,omitempty"`
                                                                                                                                                
                                                                                                                                                	// Message: The human readable messages for a warning are: - Data is not
                                                                                                                                                	// available warning - Sorry, data for date yyyy-mm-dd for application
                                                                                                                                                	// "application name" is not available. - Partial data is available
                                                                                                                                                	// warning - Data for date yyyy-mm-dd for application "application
                                                                                                                                                	// name" is not available right now, please try again after a few
                                                                                                                                                	// hours.
                                                                                                                                                	Message string `json:"message,omitempty"`
                                                                                                                                                
                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "Code") to
                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                
                                                                                                                                                	// NullFields is a list of field names (e.g. "Code") to include in API
                                                                                                                                                	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                	// values are omitted from API requests. However, any field with an
                                                                                                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                }

                                                                                                                                                func (*UsageReportsWarnings) MarshalJSON

                                                                                                                                                func (s *UsageReportsWarnings) MarshalJSON() ([]byte, error)

                                                                                                                                                type UsageReportsWarningsData

                                                                                                                                                type UsageReportsWarningsData struct {
                                                                                                                                                	// Key: Key associated with a key-value pair to give detailed
                                                                                                                                                	// information on the warning.
                                                                                                                                                	Key string `json:"key,omitempty"`
                                                                                                                                                
                                                                                                                                                	// Value: Value associated with a key-value pair to give detailed
                                                                                                                                                	// information on the warning.
                                                                                                                                                	Value string `json:"value,omitempty"`
                                                                                                                                                
                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "Key") to
                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                
                                                                                                                                                	// NullFields is a list of field names (e.g. "Key") to include in API
                                                                                                                                                	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                	// values are omitted from API requests. However, any field with an
                                                                                                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                }

                                                                                                                                                func (*UsageReportsWarningsData) MarshalJSON

                                                                                                                                                func (s *UsageReportsWarningsData) MarshalJSON() ([]byte, error)

                                                                                                                                                type UserUsageReportGetCall

                                                                                                                                                type UserUsageReportGetCall struct {
                                                                                                                                                	// contains filtered or unexported fields
                                                                                                                                                }

                                                                                                                                                func (*UserUsageReportGetCall) Context

                                                                                                                                                  Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                  func (*UserUsageReportGetCall) CustomerId

                                                                                                                                                  func (c *UserUsageReportGetCall) CustomerId(customerId string) *UserUsageReportGetCall

                                                                                                                                                    CustomerId sets the optional parameter "customerId": The unique ID of the customer to retrieve data for.

                                                                                                                                                    func (*UserUsageReportGetCall) Do

                                                                                                                                                      Do executes the "reports.userUsageReport.get" call. Exactly one of *UsageReports or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *UsageReports.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                      func (*UserUsageReportGetCall) Fields

                                                                                                                                                        Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                        func (*UserUsageReportGetCall) Filters

                                                                                                                                                          Filters sets the optional parameter "filters": The `filters` query string is a comma-separated list of an application's event parameters where the parameter's value is manipulated by a relational operator. The `filters` query string includes the name of the application whose usage is returned in the report. The application values for the Users Usage Report include `accounts`, `docs`, and `gmail`. Filters are in the form `[application name]:parameter name[parameter value],...`. In this example, the `<>` 'not equal to' operator is URL-encoded in the request's query string (%3C%3E): GET https://www.googleapis.com/admin/reports/v1/usage/users/all/dates/2013-03-03 ?parameters=accounts:last_login_time &filters=accounts:last_login_time%3C%3E2010-10-28T10:26:35.000Z The relational operators include: - `==` - 'equal to'. - `<>` - 'not equal to'. It is URL-encoded (%3C%3E). - `<` - 'less than'. It is URL-encoded (%3C). - `<=` - 'less than or equal to'. It is URL-encoded (%3C=). - `>` - 'greater than'. It is URL-encoded (%3E). - `>=` - 'greater than or equal to'. It is URL-encoded (%3E=).

                                                                                                                                                          func (*UserUsageReportGetCall) GroupIdFilter

                                                                                                                                                          func (c *UserUsageReportGetCall) GroupIdFilter(groupIdFilter string) *UserUsageReportGetCall

                                                                                                                                                            GroupIdFilter sets the optional parameter "groupIdFilter": Comma separated group ids (obfuscated) on which user activities are filtered, i.e, the response will contain activities for only those users that are a part of at least one of the group ids mentioned here. Format: "id:abc123,id:xyz456"

                                                                                                                                                            func (*UserUsageReportGetCall) Header

                                                                                                                                                            func (c *UserUsageReportGetCall) Header() http.Header

                                                                                                                                                              Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                              func (*UserUsageReportGetCall) IfNoneMatch

                                                                                                                                                              func (c *UserUsageReportGetCall) IfNoneMatch(entityTag string) *UserUsageReportGetCall

                                                                                                                                                                IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                                                                                func (*UserUsageReportGetCall) MaxResults

                                                                                                                                                                func (c *UserUsageReportGetCall) MaxResults(maxResults int64) *UserUsageReportGetCall

                                                                                                                                                                  MaxResults sets the optional parameter "maxResults": Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page. The `maxResults` query string is optional.

                                                                                                                                                                  func (*UserUsageReportGetCall) OrgUnitID

                                                                                                                                                                  func (c *UserUsageReportGetCall) OrgUnitID(orgUnitID string) *UserUsageReportGetCall

                                                                                                                                                                    OrgUnitID sets the optional parameter "orgUnitID": ID of the organizational unit to report on. User activity will be shown only for users who belong to the specified organizational unit. Data before Dec 17, 2018 doesn't appear in the filtered results.

                                                                                                                                                                    func (*UserUsageReportGetCall) PageToken

                                                                                                                                                                    func (c *UserUsageReportGetCall) PageToken(pageToken string) *UserUsageReportGetCall

                                                                                                                                                                      PageToken sets the optional parameter "pageToken": Token to specify next page. A report with multiple pages has a `nextPageToken` property in the response. In your follow-on request getting the next page of the report, enter the `nextPageToken` value in the `pageToken` query string.

                                                                                                                                                                      func (*UserUsageReportGetCall) Pages

                                                                                                                                                                        Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                                                                                                                                                        func (*UserUsageReportGetCall) Parameters

                                                                                                                                                                        func (c *UserUsageReportGetCall) Parameters(parameters string) *UserUsageReportGetCall

                                                                                                                                                                          Parameters sets the optional parameter "parameters": The `parameters` query string is a comma-separated list of event parameters that refine a report's results. The parameter is associated with a specific application. The application values for the Customers Usage report include `accounts`, `app_maker`, `apps_scripts`, `calendar`, `classroom`, `cros`, `docs`, `gmail`, `gplus`, `device_management`, `meet`, and `sites`. A `parameters` query string is in the CSV form of `app_name1:param_name1, app_name2:param_name2`. *Note:* The API doesn't accept multiple values of a parameter. If a particular parameter is supplied more than once in the API request, the API only accepts the last value of that request parameter. In addition, if an invalid request parameter is supplied in the API request, the API ignores that request parameter and returns the response corresponding to the remaining valid request parameters. An example of an invalid request parameter is one that does not belong to the application. If no parameters are requested, all parameters are returned.

                                                                                                                                                                          type UserUsageReportService

                                                                                                                                                                          type UserUsageReportService struct {
                                                                                                                                                                          	// contains filtered or unexported fields
                                                                                                                                                                          }

                                                                                                                                                                          func NewUserUsageReportService

                                                                                                                                                                          func NewUserUsageReportService(s *Service) *UserUsageReportService

                                                                                                                                                                          func (*UserUsageReportService) Get

                                                                                                                                                                            Get: Retrieves a report which is a collection of properties and statistics for a set of users with the account. For more information, see the User Usage Report guide. For more information about the user report's parameters, see the Users Usage parameters reference guides.

                                                                                                                                                                            Source Files