1// Copyright 2020 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package plusdomains provides access to the Google+ Domains API.
8//
9// For product documentation, see: https://developers.google.com/+/domains/
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/plusdomains/v1"
16//   ...
17//   ctx := context.Background()
18//   plusdomainsService, err := plusdomains.NewService(ctx)
19//
20// In this example, Google Application Default Credentials are used for authentication.
21//
22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
23//
24// Other authentication options
25//
26// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
27//
28//   plusdomainsService, err := plusdomains.NewService(ctx, option.WithScopes(plusdomains.UserinfoProfileScope))
29//
30// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
31//
32//   plusdomainsService, err := plusdomains.NewService(ctx, option.WithAPIKey("AIza..."))
33//
34// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
35//
36//   config := &oauth2.Config{...}
37//   // ...
38//   token, err := config.Exchange(ctx, ...)
39//   plusdomainsService, err := plusdomains.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
40//
41// See https://godoc.org/google.golang.org/api/option/ for details on options.
42package plusdomains // import "google.golang.org/api/plusdomains/v1"
43
44import (
45	"bytes"
46	"context"
47	"encoding/json"
48	"errors"
49	"fmt"
50	"io"
51	"net/http"
52	"net/url"
53	"strconv"
54	"strings"
55
56	googleapi "google.golang.org/api/googleapi"
57	gensupport "google.golang.org/api/internal/gensupport"
58	option "google.golang.org/api/option"
59	htransport "google.golang.org/api/transport/http"
60)
61
62// Always reference these packages, just in case the auto-generated code
63// below doesn't.
64var _ = bytes.NewBuffer
65var _ = strconv.Itoa
66var _ = fmt.Sprintf
67var _ = json.NewDecoder
68var _ = io.Copy
69var _ = url.Parse
70var _ = gensupport.MarshalJSON
71var _ = googleapi.Version
72var _ = errors.New
73var _ = strings.Replace
74var _ = context.Canceled
75
76const apiId = "plusDomains:v1"
77const apiName = "plusDomains"
78const apiVersion = "v1"
79const basePath = "https://www.googleapis.com/plusDomains/v1/"
80
81// OAuth2 scopes used by this API.
82const (
83	// View your circles and the people and pages in them
84	PlusCirclesReadScope = "https://www.googleapis.com/auth/plus.circles.read"
85
86	// View your basic profile info, including your age range and language
87	PlusLoginScope = "https://www.googleapis.com/auth/plus.login"
88
89	// Associate you with your personal info on Google
90	PlusMeScope = "https://www.googleapis.com/auth/plus.me"
91
92	// Send your photos and videos to Google+
93	PlusMediaUploadScope = "https://www.googleapis.com/auth/plus.media.upload"
94
95	// View your own Google+ profile and profiles visible to you
96	PlusProfilesReadScope = "https://www.googleapis.com/auth/plus.profiles.read"
97
98	// View your Google+ posts, comments, and stream
99	PlusStreamReadScope = "https://www.googleapis.com/auth/plus.stream.read"
100
101	// View your email address
102	UserinfoEmailScope = "https://www.googleapis.com/auth/userinfo.email"
103
104	// See your personal info, including any personal info you've made
105	// publicly available
106	UserinfoProfileScope = "https://www.googleapis.com/auth/userinfo.profile"
107)
108
109// NewService creates a new Service.
110func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
111	scopesOption := option.WithScopes(
112		"https://www.googleapis.com/auth/plus.circles.read",
113		"https://www.googleapis.com/auth/plus.login",
114		"https://www.googleapis.com/auth/plus.me",
115		"https://www.googleapis.com/auth/plus.media.upload",
116		"https://www.googleapis.com/auth/plus.profiles.read",
117		"https://www.googleapis.com/auth/plus.stream.read",
118		"https://www.googleapis.com/auth/userinfo.email",
119		"https://www.googleapis.com/auth/userinfo.profile",
120	)
121	// NOTE: prepend, so we don't override user-specified scopes.
122	opts = append([]option.ClientOption{scopesOption}, opts...)
123	client, endpoint, err := htransport.NewClient(ctx, opts...)
124	if err != nil {
125		return nil, err
126	}
127	s, err := New(client)
128	if err != nil {
129		return nil, err
130	}
131	if endpoint != "" {
132		s.BasePath = endpoint
133	}
134	return s, nil
135}
136
137// New creates a new Service. It uses the provided http.Client for requests.
138//
139// Deprecated: please use NewService instead.
140// To provide a custom HTTP client, use option.WithHTTPClient.
141// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
142func New(client *http.Client) (*Service, error) {
143	if client == nil {
144		return nil, errors.New("client is nil")
145	}
146	s := &Service{client: client, BasePath: basePath}
147	s.Activities = NewActivitiesService(s)
148	s.Audiences = NewAudiencesService(s)
149	s.Circles = NewCirclesService(s)
150	s.Comments = NewCommentsService(s)
151	s.Media = NewMediaService(s)
152	s.People = NewPeopleService(s)
153	return s, nil
154}
155
156type Service struct {
157	client    *http.Client
158	BasePath  string // API endpoint base URL
159	UserAgent string // optional additional User-Agent fragment
160
161	Activities *ActivitiesService
162
163	Audiences *AudiencesService
164
165	Circles *CirclesService
166
167	Comments *CommentsService
168
169	Media *MediaService
170
171	People *PeopleService
172}
173
174func (s *Service) userAgent() string {
175	if s.UserAgent == "" {
176		return googleapi.UserAgent
177	}
178	return googleapi.UserAgent + " " + s.UserAgent
179}
180
181func NewActivitiesService(s *Service) *ActivitiesService {
182	rs := &ActivitiesService{s: s}
183	return rs
184}
185
186type ActivitiesService struct {
187	s *Service
188}
189
190func NewAudiencesService(s *Service) *AudiencesService {
191	rs := &AudiencesService{s: s}
192	return rs
193}
194
195type AudiencesService struct {
196	s *Service
197}
198
199func NewCirclesService(s *Service) *CirclesService {
200	rs := &CirclesService{s: s}
201	return rs
202}
203
204type CirclesService struct {
205	s *Service
206}
207
208func NewCommentsService(s *Service) *CommentsService {
209	rs := &CommentsService{s: s}
210	return rs
211}
212
213type CommentsService struct {
214	s *Service
215}
216
217func NewMediaService(s *Service) *MediaService {
218	rs := &MediaService{s: s}
219	return rs
220}
221
222type MediaService struct {
223	s *Service
224}
225
226func NewPeopleService(s *Service) *PeopleService {
227	rs := &PeopleService{s: s}
228	return rs
229}
230
231type PeopleService struct {
232	s *Service
233}
234
235type Acl struct {
236	// Description: Description of the access granted, suitable for display.
237	Description string `json:"description,omitempty"`
238
239	// DomainRestricted: Whether access is restricted to the domain.
240	DomainRestricted bool `json:"domainRestricted,omitempty"`
241
242	// Items: The list of access entries.
243	Items []*PlusDomainsAclentryResource `json:"items,omitempty"`
244
245	// Kind: Identifies this resource as a collection of access controls.
246	// Value: "plus#acl".
247	Kind string `json:"kind,omitempty"`
248
249	// ForceSendFields is a list of field names (e.g. "Description") to
250	// unconditionally include in API requests. By default, fields with
251	// empty values are omitted from API requests. However, any non-pointer,
252	// non-interface field appearing in ForceSendFields will be sent to the
253	// server regardless of whether the field is empty or not. This may be
254	// used to include empty fields in Patch requests.
255	ForceSendFields []string `json:"-"`
256
257	// NullFields is a list of field names (e.g. "Description") to include
258	// in API requests with the JSON null value. By default, fields with
259	// empty values are omitted from API requests. However, any field with
260	// an empty value appearing in NullFields will be sent to the server as
261	// null. It is an error if a field in this list has a non-empty value.
262	// This may be used to include null fields in Patch requests.
263	NullFields []string `json:"-"`
264}
265
266func (s *Acl) MarshalJSON() ([]byte, error) {
267	type NoMethod Acl
268	raw := NoMethod(*s)
269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
270}
271
272type Activity struct {
273	// Access: Identifies who has access to see this activity.
274	Access *Acl `json:"access,omitempty"`
275
276	// Actor: The person who performed this activity.
277	Actor *ActivityActor `json:"actor,omitempty"`
278
279	// Address: Street address where this activity occurred.
280	Address string `json:"address,omitempty"`
281
282	// Annotation: Additional content added by the person who shared this
283	// activity, applicable only when resharing an activity.
284	Annotation string `json:"annotation,omitempty"`
285
286	// CrosspostSource: If this activity is a crosspost from another system,
287	// this property specifies the ID of the original activity.
288	CrosspostSource string `json:"crosspostSource,omitempty"`
289
290	// Etag: ETag of this response for caching purposes.
291	Etag string `json:"etag,omitempty"`
292
293	// Geocode: Latitude and longitude where this activity occurred. Format
294	// is latitude followed by longitude, space separated.
295	Geocode string `json:"geocode,omitempty"`
296
297	// Id: The ID of this activity.
298	Id string `json:"id,omitempty"`
299
300	// Kind: Identifies this resource as an activity. Value:
301	// "plus#activity".
302	Kind string `json:"kind,omitempty"`
303
304	// Location: The location where this activity occurred.
305	Location *Place `json:"location,omitempty"`
306
307	// Object: The object of this activity.
308	Object *ActivityObject `json:"object,omitempty"`
309
310	// PlaceId: ID of the place where this activity occurred.
311	PlaceId string `json:"placeId,omitempty"`
312
313	// PlaceName: Name of the place where this activity occurred.
314	PlaceName string `json:"placeName,omitempty"`
315
316	// Provider: The service provider that initially published this
317	// activity.
318	Provider *ActivityProvider `json:"provider,omitempty"`
319
320	// Published: The time at which this activity was initially published.
321	// Formatted as an RFC 3339 timestamp.
322	Published string `json:"published,omitempty"`
323
324	// Radius: Radius, in meters, of the region where this activity
325	// occurred, centered at the latitude and longitude identified in
326	// geocode.
327	Radius string `json:"radius,omitempty"`
328
329	// Title: Title of this activity.
330	Title string `json:"title,omitempty"`
331
332	// Updated: The time at which this activity was last updated. Formatted
333	// as an RFC 3339 timestamp.
334	Updated string `json:"updated,omitempty"`
335
336	// Url: The link to this activity.
337	Url string `json:"url,omitempty"`
338
339	// Verb: This activity's verb, which indicates the action that was
340	// performed. Possible values include, but are not limited to, the
341	// following values:
342	// - "post" - Publish content to the stream.
343	// - "share" - Reshare an activity.
344	Verb string `json:"verb,omitempty"`
345
346	// ServerResponse contains the HTTP response code and headers from the
347	// server.
348	googleapi.ServerResponse `json:"-"`
349
350	// ForceSendFields is a list of field names (e.g. "Access") to
351	// unconditionally include in API requests. By default, fields with
352	// empty values are omitted from API requests. However, any non-pointer,
353	// non-interface field appearing in ForceSendFields will be sent to the
354	// server regardless of whether the field is empty or not. This may be
355	// used to include empty fields in Patch requests.
356	ForceSendFields []string `json:"-"`
357
358	// NullFields is a list of field names (e.g. "Access") to include in API
359	// requests with the JSON null value. By default, fields with empty
360	// values are omitted from API requests. However, any field with an
361	// empty value appearing in NullFields will be sent to the server as
362	// null. It is an error if a field in this list has a non-empty value.
363	// This may be used to include null fields in Patch requests.
364	NullFields []string `json:"-"`
365}
366
367func (s *Activity) MarshalJSON() ([]byte, error) {
368	type NoMethod Activity
369	raw := NoMethod(*s)
370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
371}
372
373// ActivityActor: The person who performed this activity.
374type ActivityActor struct {
375	// ClientSpecificActorInfo: Actor info specific to particular clients.
376	ClientSpecificActorInfo *ActivityActorClientSpecificActorInfo `json:"clientSpecificActorInfo,omitempty"`
377
378	// DisplayName: The name of the actor, suitable for display.
379	DisplayName string `json:"displayName,omitempty"`
380
381	// Id: The ID of the actor's Person resource.
382	Id string `json:"id,omitempty"`
383
384	// Image: The image representation of the actor.
385	Image *ActivityActorImage `json:"image,omitempty"`
386
387	// Name: An object representation of the individual components of name.
388	Name *ActivityActorName `json:"name,omitempty"`
389
390	// Url: The link to the actor's Google profile.
391	Url string `json:"url,omitempty"`
392
393	// Verification: Verification status of actor.
394	Verification *ActivityActorVerification `json:"verification,omitempty"`
395
396	// ForceSendFields is a list of field names (e.g.
397	// "ClientSpecificActorInfo") to unconditionally include in API
398	// requests. By default, fields with empty values are omitted from API
399	// requests. However, any non-pointer, non-interface field appearing in
400	// ForceSendFields will be sent to the server regardless of whether the
401	// field is empty or not. This may be used to include empty fields in
402	// Patch requests.
403	ForceSendFields []string `json:"-"`
404
405	// NullFields is a list of field names (e.g. "ClientSpecificActorInfo")
406	// to include in API requests with the JSON null value. By default,
407	// fields with empty values are omitted from API requests. However, any
408	// field with an empty value appearing in NullFields will be sent to the
409	// server as null. It is an error if a field in this list has a
410	// non-empty value. This may be used to include null fields in Patch
411	// requests.
412	NullFields []string `json:"-"`
413}
414
415func (s *ActivityActor) MarshalJSON() ([]byte, error) {
416	type NoMethod ActivityActor
417	raw := NoMethod(*s)
418	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
419}
420
421// ActivityActorClientSpecificActorInfo: Actor info specific to
422// particular clients.
423type ActivityActorClientSpecificActorInfo struct {
424	// YoutubeActorInfo: Actor info specific to YouTube clients.
425	YoutubeActorInfo *ActivityActorClientSpecificActorInfoYoutubeActorInfo `json:"youtubeActorInfo,omitempty"`
426
427	// ForceSendFields is a list of field names (e.g. "YoutubeActorInfo") to
428	// unconditionally include in API requests. By default, fields with
429	// empty values are omitted from API requests. However, any non-pointer,
430	// non-interface field appearing in ForceSendFields will be sent to the
431	// server regardless of whether the field is empty or not. This may be
432	// used to include empty fields in Patch requests.
433	ForceSendFields []string `json:"-"`
434
435	// NullFields is a list of field names (e.g. "YoutubeActorInfo") to
436	// include in API requests with the JSON null value. By default, fields
437	// with empty values are omitted from API requests. However, any field
438	// with an empty value appearing in NullFields will be sent to the
439	// server as null. It is an error if a field in this list has a
440	// non-empty value. This may be used to include null fields in Patch
441	// requests.
442	NullFields []string `json:"-"`
443}
444
445func (s *ActivityActorClientSpecificActorInfo) MarshalJSON() ([]byte, error) {
446	type NoMethod ActivityActorClientSpecificActorInfo
447	raw := NoMethod(*s)
448	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
449}
450
451// ActivityActorClientSpecificActorInfoYoutubeActorInfo: Actor info
452// specific to YouTube clients.
453type ActivityActorClientSpecificActorInfoYoutubeActorInfo struct {
454	// ChannelId: ID of the YouTube channel owned by the Actor.
455	ChannelId string `json:"channelId,omitempty"`
456
457	// ForceSendFields is a list of field names (e.g. "ChannelId") to
458	// unconditionally include in API requests. By default, fields with
459	// empty values are omitted from API requests. However, any non-pointer,
460	// non-interface field appearing in ForceSendFields will be sent to the
461	// server regardless of whether the field is empty or not. This may be
462	// used to include empty fields in Patch requests.
463	ForceSendFields []string `json:"-"`
464
465	// NullFields is a list of field names (e.g. "ChannelId") to include in
466	// API requests with the JSON null value. By default, fields with empty
467	// values are omitted from API requests. However, any field with an
468	// empty value appearing in NullFields will be sent to the server as
469	// null. It is an error if a field in this list has a non-empty value.
470	// This may be used to include null fields in Patch requests.
471	NullFields []string `json:"-"`
472}
473
474func (s *ActivityActorClientSpecificActorInfoYoutubeActorInfo) MarshalJSON() ([]byte, error) {
475	type NoMethod ActivityActorClientSpecificActorInfoYoutubeActorInfo
476	raw := NoMethod(*s)
477	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
478}
479
480// ActivityActorImage: The image representation of the actor.
481type ActivityActorImage struct {
482	// Url: The URL of the actor's profile photo. To resize the image and
483	// crop it to a square, append the query string ?sz=x, where x is the
484	// dimension in pixels of each side.
485	Url string `json:"url,omitempty"`
486
487	// ForceSendFields is a list of field names (e.g. "Url") to
488	// unconditionally include in API requests. By default, fields with
489	// empty values are omitted from API requests. However, any non-pointer,
490	// non-interface field appearing in ForceSendFields will be sent to the
491	// server regardless of whether the field is empty or not. This may be
492	// used to include empty fields in Patch requests.
493	ForceSendFields []string `json:"-"`
494
495	// NullFields is a list of field names (e.g. "Url") to include in API
496	// requests with the JSON null value. By default, fields with empty
497	// values are omitted from API requests. However, any field with an
498	// empty value appearing in NullFields will be sent to the server as
499	// null. It is an error if a field in this list has a non-empty value.
500	// This may be used to include null fields in Patch requests.
501	NullFields []string `json:"-"`
502}
503
504func (s *ActivityActorImage) MarshalJSON() ([]byte, error) {
505	type NoMethod ActivityActorImage
506	raw := NoMethod(*s)
507	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
508}
509
510// ActivityActorName: An object representation of the individual
511// components of name.
512type ActivityActorName struct {
513	// FamilyName: The family name ("last name") of the actor.
514	FamilyName string `json:"familyName,omitempty"`
515
516	// GivenName: The given name ("first name") of the actor.
517	GivenName string `json:"givenName,omitempty"`
518
519	// ForceSendFields is a list of field names (e.g. "FamilyName") to
520	// unconditionally include in API requests. By default, fields with
521	// empty values are omitted from API requests. However, any non-pointer,
522	// non-interface field appearing in ForceSendFields will be sent to the
523	// server regardless of whether the field is empty or not. This may be
524	// used to include empty fields in Patch requests.
525	ForceSendFields []string `json:"-"`
526
527	// NullFields is a list of field names (e.g. "FamilyName") to include in
528	// API requests with the JSON null value. By default, fields with empty
529	// values are omitted from API requests. However, any field with an
530	// empty value appearing in NullFields will be sent to the server as
531	// null. It is an error if a field in this list has a non-empty value.
532	// This may be used to include null fields in Patch requests.
533	NullFields []string `json:"-"`
534}
535
536func (s *ActivityActorName) MarshalJSON() ([]byte, error) {
537	type NoMethod ActivityActorName
538	raw := NoMethod(*s)
539	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
540}
541
542// ActivityActorVerification: Verification status of actor.
543type ActivityActorVerification struct {
544	// AdHocVerified: Verification for one-time or manual processes.
545	AdHocVerified string `json:"adHocVerified,omitempty"`
546
547	// ForceSendFields is a list of field names (e.g. "AdHocVerified") to
548	// unconditionally include in API requests. By default, fields with
549	// empty values are omitted from API requests. However, any non-pointer,
550	// non-interface field appearing in ForceSendFields will be sent to the
551	// server regardless of whether the field is empty or not. This may be
552	// used to include empty fields in Patch requests.
553	ForceSendFields []string `json:"-"`
554
555	// NullFields is a list of field names (e.g. "AdHocVerified") to include
556	// in API requests with the JSON null value. By default, fields with
557	// empty values are omitted from API requests. However, any field with
558	// an empty value appearing in NullFields will be sent to the server as
559	// null. It is an error if a field in this list has a non-empty value.
560	// This may be used to include null fields in Patch requests.
561	NullFields []string `json:"-"`
562}
563
564func (s *ActivityActorVerification) MarshalJSON() ([]byte, error) {
565	type NoMethod ActivityActorVerification
566	raw := NoMethod(*s)
567	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
568}
569
570// ActivityObject: The object of this activity.
571type ActivityObject struct {
572	// Actor: If this activity's object is itself another activity, such as
573	// when a person reshares an activity, this property specifies the
574	// original activity's actor.
575	Actor *ActivityObjectActor `json:"actor,omitempty"`
576
577	// Attachments: The media objects attached to this activity.
578	Attachments []*ActivityObjectAttachments `json:"attachments,omitempty"`
579
580	// Content: The HTML-formatted content, which is suitable for display.
581	Content string `json:"content,omitempty"`
582
583	// Id: The ID of the object. When resharing an activity, this is the ID
584	// of the activity that is being reshared.
585	Id string `json:"id,omitempty"`
586
587	// ObjectType: The type of the object. Possible values include, but are
588	// not limited to, the following values:
589	// - "note" - Textual content.
590	// - "activity" - A Google+ activity.
591	ObjectType string `json:"objectType,omitempty"`
592
593	// OriginalContent: The content (text) as provided by the author, which
594	// is stored without any HTML formatting. When creating or updating an
595	// activity, this value must be supplied as plain text in the request.
596	OriginalContent string `json:"originalContent,omitempty"`
597
598	// Plusoners: People who +1'd this activity.
599	Plusoners *ActivityObjectPlusoners `json:"plusoners,omitempty"`
600
601	// Replies: Comments in reply to this activity.
602	Replies *ActivityObjectReplies `json:"replies,omitempty"`
603
604	// Resharers: People who reshared this activity.
605	Resharers *ActivityObjectResharers `json:"resharers,omitempty"`
606
607	// StatusForViewer: Status of the activity as seen by the viewer.
608	StatusForViewer *ActivityObjectStatusForViewer `json:"statusForViewer,omitempty"`
609
610	// Url: The URL that points to the linked resource.
611	Url string `json:"url,omitempty"`
612
613	// ForceSendFields is a list of field names (e.g. "Actor") to
614	// unconditionally include in API requests. By default, fields with
615	// empty values are omitted from API requests. However, any non-pointer,
616	// non-interface field appearing in ForceSendFields will be sent to the
617	// server regardless of whether the field is empty or not. This may be
618	// used to include empty fields in Patch requests.
619	ForceSendFields []string `json:"-"`
620
621	// NullFields is a list of field names (e.g. "Actor") to include in API
622	// requests with the JSON null value. By default, fields with empty
623	// values are omitted from API requests. However, any field with an
624	// empty value appearing in NullFields will be sent to the server as
625	// null. It is an error if a field in this list has a non-empty value.
626	// This may be used to include null fields in Patch requests.
627	NullFields []string `json:"-"`
628}
629
630func (s *ActivityObject) MarshalJSON() ([]byte, error) {
631	type NoMethod ActivityObject
632	raw := NoMethod(*s)
633	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
634}
635
636// ActivityObjectActor: If this activity's object is itself another
637// activity, such as when a person reshares an activity, this property
638// specifies the original activity's actor.
639type ActivityObjectActor struct {
640	// ClientSpecificActorInfo: Actor info specific to particular clients.
641	ClientSpecificActorInfo *ActivityObjectActorClientSpecificActorInfo `json:"clientSpecificActorInfo,omitempty"`
642
643	// DisplayName: The original actor's name, which is suitable for
644	// display.
645	DisplayName string `json:"displayName,omitempty"`
646
647	// Id: ID of the original actor.
648	Id string `json:"id,omitempty"`
649
650	// Image: The image representation of the original actor.
651	Image *ActivityObjectActorImage `json:"image,omitempty"`
652
653	// Url: A link to the original actor's Google profile.
654	Url string `json:"url,omitempty"`
655
656	// Verification: Verification status of actor.
657	Verification *ActivityObjectActorVerification `json:"verification,omitempty"`
658
659	// ForceSendFields is a list of field names (e.g.
660	// "ClientSpecificActorInfo") to unconditionally include in API
661	// requests. By default, fields with empty values are omitted from API
662	// requests. However, any non-pointer, non-interface field appearing in
663	// ForceSendFields will be sent to the server regardless of whether the
664	// field is empty or not. This may be used to include empty fields in
665	// Patch requests.
666	ForceSendFields []string `json:"-"`
667
668	// NullFields is a list of field names (e.g. "ClientSpecificActorInfo")
669	// to include in API requests with the JSON null value. By default,
670	// fields with empty values are omitted from API requests. However, any
671	// field with an empty value appearing in NullFields will be sent to the
672	// server as null. It is an error if a field in this list has a
673	// non-empty value. This may be used to include null fields in Patch
674	// requests.
675	NullFields []string `json:"-"`
676}
677
678func (s *ActivityObjectActor) MarshalJSON() ([]byte, error) {
679	type NoMethod ActivityObjectActor
680	raw := NoMethod(*s)
681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
682}
683
684// ActivityObjectActorClientSpecificActorInfo: Actor info specific to
685// particular clients.
686type ActivityObjectActorClientSpecificActorInfo struct {
687	// YoutubeActorInfo: Actor info specific to YouTube clients.
688	YoutubeActorInfo *ActivityObjectActorClientSpecificActorInfoYoutubeActorInfo `json:"youtubeActorInfo,omitempty"`
689
690	// ForceSendFields is a list of field names (e.g. "YoutubeActorInfo") to
691	// unconditionally include in API requests. By default, fields with
692	// empty values are omitted from API requests. However, any non-pointer,
693	// non-interface field appearing in ForceSendFields will be sent to the
694	// server regardless of whether the field is empty or not. This may be
695	// used to include empty fields in Patch requests.
696	ForceSendFields []string `json:"-"`
697
698	// NullFields is a list of field names (e.g. "YoutubeActorInfo") to
699	// include in API requests with the JSON null value. By default, fields
700	// with empty values are omitted from API requests. However, any field
701	// with an empty value appearing in NullFields will be sent to the
702	// server as null. It is an error if a field in this list has a
703	// non-empty value. This may be used to include null fields in Patch
704	// requests.
705	NullFields []string `json:"-"`
706}
707
708func (s *ActivityObjectActorClientSpecificActorInfo) MarshalJSON() ([]byte, error) {
709	type NoMethod ActivityObjectActorClientSpecificActorInfo
710	raw := NoMethod(*s)
711	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
712}
713
714// ActivityObjectActorClientSpecificActorInfoYoutubeActorInfo: Actor
715// info specific to YouTube clients.
716type ActivityObjectActorClientSpecificActorInfoYoutubeActorInfo struct {
717	// ChannelId: ID of the YouTube channel owned by the Actor.
718	ChannelId string `json:"channelId,omitempty"`
719
720	// ForceSendFields is a list of field names (e.g. "ChannelId") to
721	// unconditionally include in API requests. By default, fields with
722	// empty values are omitted from API requests. However, any non-pointer,
723	// non-interface field appearing in ForceSendFields will be sent to the
724	// server regardless of whether the field is empty or not. This may be
725	// used to include empty fields in Patch requests.
726	ForceSendFields []string `json:"-"`
727
728	// NullFields is a list of field names (e.g. "ChannelId") to include in
729	// API requests with the JSON null value. By default, fields with empty
730	// values are omitted from API requests. However, any field with an
731	// empty value appearing in NullFields will be sent to the server as
732	// null. It is an error if a field in this list has a non-empty value.
733	// This may be used to include null fields in Patch requests.
734	NullFields []string `json:"-"`
735}
736
737func (s *ActivityObjectActorClientSpecificActorInfoYoutubeActorInfo) MarshalJSON() ([]byte, error) {
738	type NoMethod ActivityObjectActorClientSpecificActorInfoYoutubeActorInfo
739	raw := NoMethod(*s)
740	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
741}
742
743// ActivityObjectActorImage: The image representation of the original
744// actor.
745type ActivityObjectActorImage struct {
746	// Url: A URL that points to a thumbnail photo of the original actor.
747	Url string `json:"url,omitempty"`
748
749	// ForceSendFields is a list of field names (e.g. "Url") to
750	// unconditionally include in API requests. By default, fields with
751	// empty values are omitted from API requests. However, any non-pointer,
752	// non-interface field appearing in ForceSendFields will be sent to the
753	// server regardless of whether the field is empty or not. This may be
754	// used to include empty fields in Patch requests.
755	ForceSendFields []string `json:"-"`
756
757	// NullFields is a list of field names (e.g. "Url") to include in API
758	// requests with the JSON null value. By default, fields with empty
759	// values are omitted from API requests. However, any field with an
760	// empty value appearing in NullFields will be sent to the server as
761	// null. It is an error if a field in this list has a non-empty value.
762	// This may be used to include null fields in Patch requests.
763	NullFields []string `json:"-"`
764}
765
766func (s *ActivityObjectActorImage) MarshalJSON() ([]byte, error) {
767	type NoMethod ActivityObjectActorImage
768	raw := NoMethod(*s)
769	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
770}
771
772// ActivityObjectActorVerification: Verification status of actor.
773type ActivityObjectActorVerification struct {
774	// AdHocVerified: Verification for one-time or manual processes.
775	AdHocVerified string `json:"adHocVerified,omitempty"`
776
777	// ForceSendFields is a list of field names (e.g. "AdHocVerified") to
778	// unconditionally include in API requests. By default, fields with
779	// empty values are omitted from API requests. However, any non-pointer,
780	// non-interface field appearing in ForceSendFields will be sent to the
781	// server regardless of whether the field is empty or not. This may be
782	// used to include empty fields in Patch requests.
783	ForceSendFields []string `json:"-"`
784
785	// NullFields is a list of field names (e.g. "AdHocVerified") to include
786	// in API requests with the JSON null value. By default, fields with
787	// empty values are omitted from API requests. However, any field with
788	// an empty value appearing in NullFields will be sent to the server as
789	// null. It is an error if a field in this list has a non-empty value.
790	// This may be used to include null fields in Patch requests.
791	NullFields []string `json:"-"`
792}
793
794func (s *ActivityObjectActorVerification) MarshalJSON() ([]byte, error) {
795	type NoMethod ActivityObjectActorVerification
796	raw := NoMethod(*s)
797	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
798}
799
800type ActivityObjectAttachments struct {
801	// Content: If the attachment is an article, this property contains a
802	// snippet of text from the article. It can also include descriptions
803	// for other types.
804	Content string `json:"content,omitempty"`
805
806	// DisplayName: The title of the attachment, such as a photo caption or
807	// an article title.
808	DisplayName string `json:"displayName,omitempty"`
809
810	// Embed: If the attachment is a video, the embeddable link.
811	Embed *ActivityObjectAttachmentsEmbed `json:"embed,omitempty"`
812
813	// FullImage: The full image URL for photo attachments.
814	FullImage *ActivityObjectAttachmentsFullImage `json:"fullImage,omitempty"`
815
816	// Id: The ID of the attachment.
817	Id string `json:"id,omitempty"`
818
819	// Image: The preview image for photos or videos.
820	Image *ActivityObjectAttachmentsImage `json:"image,omitempty"`
821
822	// ObjectType: The type of media object. Possible values include, but
823	// are not limited to, the following values:
824	// - "photo" - A photo.
825	// - "album" - A photo album.
826	// - "video" - A video.
827	// - "article" - An article, specified by a link.
828	ObjectType string `json:"objectType,omitempty"`
829
830	// PreviewThumbnails: When previewing, these are the optional thumbnails
831	// for the post. When posting an article, choose one by setting the
832	// attachment.image.url property. If you don't choose one, one will be
833	// chosen for you.
834	PreviewThumbnails []*ActivityObjectAttachmentsPreviewThumbnails `json:"previewThumbnails,omitempty"`
835
836	// Thumbnails: If the attachment is an album, this property is a list of
837	// potential additional thumbnails from the album.
838	Thumbnails []*ActivityObjectAttachmentsThumbnails `json:"thumbnails,omitempty"`
839
840	// Url: The link to the attachment, which should be of type text/html.
841	Url string `json:"url,omitempty"`
842
843	// ForceSendFields is a list of field names (e.g. "Content") to
844	// unconditionally include in API requests. By default, fields with
845	// empty values are omitted from API requests. However, any non-pointer,
846	// non-interface field appearing in ForceSendFields will be sent to the
847	// server regardless of whether the field is empty or not. This may be
848	// used to include empty fields in Patch requests.
849	ForceSendFields []string `json:"-"`
850
851	// NullFields is a list of field names (e.g. "Content") to include in
852	// API requests with the JSON null value. By default, fields with empty
853	// values are omitted from API requests. However, any field with an
854	// empty value appearing in NullFields will be sent to the server as
855	// null. It is an error if a field in this list has a non-empty value.
856	// This may be used to include null fields in Patch requests.
857	NullFields []string `json:"-"`
858}
859
860func (s *ActivityObjectAttachments) MarshalJSON() ([]byte, error) {
861	type NoMethod ActivityObjectAttachments
862	raw := NoMethod(*s)
863	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
864}
865
866// ActivityObjectAttachmentsEmbed: If the attachment is a video, the
867// embeddable link.
868type ActivityObjectAttachmentsEmbed struct {
869	// Type: Media type of the link.
870	Type string `json:"type,omitempty"`
871
872	// Url: URL of the link.
873	Url string `json:"url,omitempty"`
874
875	// ForceSendFields is a list of field names (e.g. "Type") to
876	// unconditionally include in API requests. By default, fields with
877	// empty values are omitted from API requests. However, any non-pointer,
878	// non-interface field appearing in ForceSendFields will be sent to the
879	// server regardless of whether the field is empty or not. This may be
880	// used to include empty fields in Patch requests.
881	ForceSendFields []string `json:"-"`
882
883	// NullFields is a list of field names (e.g. "Type") to include in API
884	// requests with the JSON null value. By default, fields with empty
885	// values are omitted from API requests. However, any field with an
886	// empty value appearing in NullFields will be sent to the server as
887	// null. It is an error if a field in this list has a non-empty value.
888	// This may be used to include null fields in Patch requests.
889	NullFields []string `json:"-"`
890}
891
892func (s *ActivityObjectAttachmentsEmbed) MarshalJSON() ([]byte, error) {
893	type NoMethod ActivityObjectAttachmentsEmbed
894	raw := NoMethod(*s)
895	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
896}
897
898// ActivityObjectAttachmentsFullImage: The full image URL for photo
899// attachments.
900type ActivityObjectAttachmentsFullImage struct {
901	// Height: The height, in pixels, of the linked resource.
902	Height int64 `json:"height,omitempty"`
903
904	// Type: Media type of the link.
905	Type string `json:"type,omitempty"`
906
907	// Url: URL of the image.
908	Url string `json:"url,omitempty"`
909
910	// Width: The width, in pixels, of the linked resource.
911	Width int64 `json:"width,omitempty"`
912
913	// ForceSendFields is a list of field names (e.g. "Height") to
914	// unconditionally include in API requests. By default, fields with
915	// empty values are omitted from API requests. However, any non-pointer,
916	// non-interface field appearing in ForceSendFields will be sent to the
917	// server regardless of whether the field is empty or not. This may be
918	// used to include empty fields in Patch requests.
919	ForceSendFields []string `json:"-"`
920
921	// NullFields is a list of field names (e.g. "Height") to include in API
922	// requests with the JSON null value. By default, fields with empty
923	// values are omitted from API requests. However, any field with an
924	// empty value appearing in NullFields will be sent to the server as
925	// null. It is an error if a field in this list has a non-empty value.
926	// This may be used to include null fields in Patch requests.
927	NullFields []string `json:"-"`
928}
929
930func (s *ActivityObjectAttachmentsFullImage) MarshalJSON() ([]byte, error) {
931	type NoMethod ActivityObjectAttachmentsFullImage
932	raw := NoMethod(*s)
933	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
934}
935
936// ActivityObjectAttachmentsImage: The preview image for photos or
937// videos.
938type ActivityObjectAttachmentsImage struct {
939	// Height: The height, in pixels, of the linked resource.
940	Height int64 `json:"height,omitempty"`
941
942	// Type: Media type of the link.
943	Type string `json:"type,omitempty"`
944
945	// Url: Image URL.
946	Url string `json:"url,omitempty"`
947
948	// Width: The width, in pixels, of the linked resource.
949	Width int64 `json:"width,omitempty"`
950
951	// ForceSendFields is a list of field names (e.g. "Height") to
952	// unconditionally include in API requests. By default, fields with
953	// empty values are omitted from API requests. However, any non-pointer,
954	// non-interface field appearing in ForceSendFields will be sent to the
955	// server regardless of whether the field is empty or not. This may be
956	// used to include empty fields in Patch requests.
957	ForceSendFields []string `json:"-"`
958
959	// NullFields is a list of field names (e.g. "Height") to include in API
960	// requests with the JSON null value. By default, fields with empty
961	// values are omitted from API requests. However, any field with an
962	// empty value appearing in NullFields will be sent to the server as
963	// null. It is an error if a field in this list has a non-empty value.
964	// This may be used to include null fields in Patch requests.
965	NullFields []string `json:"-"`
966}
967
968func (s *ActivityObjectAttachmentsImage) MarshalJSON() ([]byte, error) {
969	type NoMethod ActivityObjectAttachmentsImage
970	raw := NoMethod(*s)
971	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
972}
973
974type ActivityObjectAttachmentsPreviewThumbnails struct {
975	// Url: URL of the thumbnail image.
976	Url string `json:"url,omitempty"`
977
978	// ForceSendFields is a list of field names (e.g. "Url") to
979	// unconditionally include in API requests. By default, fields with
980	// empty values are omitted from API requests. However, any non-pointer,
981	// non-interface field appearing in ForceSendFields will be sent to the
982	// server regardless of whether the field is empty or not. This may be
983	// used to include empty fields in Patch requests.
984	ForceSendFields []string `json:"-"`
985
986	// NullFields is a list of field names (e.g. "Url") to include in API
987	// requests with the JSON null value. By default, fields with empty
988	// values are omitted from API requests. However, any field with an
989	// empty value appearing in NullFields will be sent to the server as
990	// null. It is an error if a field in this list has a non-empty value.
991	// This may be used to include null fields in Patch requests.
992	NullFields []string `json:"-"`
993}
994
995func (s *ActivityObjectAttachmentsPreviewThumbnails) MarshalJSON() ([]byte, error) {
996	type NoMethod ActivityObjectAttachmentsPreviewThumbnails
997	raw := NoMethod(*s)
998	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
999}
1000
1001type ActivityObjectAttachmentsThumbnails struct {
1002	// Description: Potential name of the thumbnail.
1003	Description string `json:"description,omitempty"`
1004
1005	// Image: Image resource.
1006	Image *ActivityObjectAttachmentsThumbnailsImage `json:"image,omitempty"`
1007
1008	// Url: URL of the webpage containing the image.
1009	Url string `json:"url,omitempty"`
1010
1011	// ForceSendFields is a list of field names (e.g. "Description") to
1012	// unconditionally include in API requests. By default, fields with
1013	// empty values are omitted from API requests. However, any non-pointer,
1014	// non-interface field appearing in ForceSendFields will be sent to the
1015	// server regardless of whether the field is empty or not. This may be
1016	// used to include empty fields in Patch requests.
1017	ForceSendFields []string `json:"-"`
1018
1019	// NullFields is a list of field names (e.g. "Description") to include
1020	// in API requests with the JSON null value. By default, fields with
1021	// empty values are omitted from API requests. However, any field with
1022	// an empty value appearing in NullFields will be sent to the server as
1023	// null. It is an error if a field in this list has a non-empty value.
1024	// This may be used to include null fields in Patch requests.
1025	NullFields []string `json:"-"`
1026}
1027
1028func (s *ActivityObjectAttachmentsThumbnails) MarshalJSON() ([]byte, error) {
1029	type NoMethod ActivityObjectAttachmentsThumbnails
1030	raw := NoMethod(*s)
1031	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1032}
1033
1034// ActivityObjectAttachmentsThumbnailsImage: Image resource.
1035type ActivityObjectAttachmentsThumbnailsImage struct {
1036	// Height: The height, in pixels, of the linked resource.
1037	Height int64 `json:"height,omitempty"`
1038
1039	// Type: Media type of the link.
1040	Type string `json:"type,omitempty"`
1041
1042	// Url: Image url.
1043	Url string `json:"url,omitempty"`
1044
1045	// Width: The width, in pixels, of the linked resource.
1046	Width int64 `json:"width,omitempty"`
1047
1048	// ForceSendFields is a list of field names (e.g. "Height") to
1049	// unconditionally include in API requests. By default, fields with
1050	// empty values are omitted from API requests. However, any non-pointer,
1051	// non-interface field appearing in ForceSendFields will be sent to the
1052	// server regardless of whether the field is empty or not. This may be
1053	// used to include empty fields in Patch requests.
1054	ForceSendFields []string `json:"-"`
1055
1056	// NullFields is a list of field names (e.g. "Height") to include in API
1057	// requests with the JSON null value. By default, fields with empty
1058	// values are omitted from API requests. However, any field with an
1059	// empty value appearing in NullFields will be sent to the server as
1060	// null. It is an error if a field in this list has a non-empty value.
1061	// This may be used to include null fields in Patch requests.
1062	NullFields []string `json:"-"`
1063}
1064
1065func (s *ActivityObjectAttachmentsThumbnailsImage) MarshalJSON() ([]byte, error) {
1066	type NoMethod ActivityObjectAttachmentsThumbnailsImage
1067	raw := NoMethod(*s)
1068	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1069}
1070
1071// ActivityObjectPlusoners: People who +1'd this activity.
1072type ActivityObjectPlusoners struct {
1073	// SelfLink: The URL for the collection of people who +1'd this
1074	// activity.
1075	SelfLink string `json:"selfLink,omitempty"`
1076
1077	// TotalItems: Total number of people who +1'd this activity.
1078	TotalItems int64 `json:"totalItems,omitempty"`
1079
1080	// ForceSendFields is a list of field names (e.g. "SelfLink") to
1081	// unconditionally include in API requests. By default, fields with
1082	// empty values are omitted from API requests. However, any non-pointer,
1083	// non-interface field appearing in ForceSendFields will be sent to the
1084	// server regardless of whether the field is empty or not. This may be
1085	// used to include empty fields in Patch requests.
1086	ForceSendFields []string `json:"-"`
1087
1088	// NullFields is a list of field names (e.g. "SelfLink") to include in
1089	// API requests with the JSON null value. By default, fields with empty
1090	// values are omitted from API requests. However, any field with an
1091	// empty value appearing in NullFields will be sent to the server as
1092	// null. It is an error if a field in this list has a non-empty value.
1093	// This may be used to include null fields in Patch requests.
1094	NullFields []string `json:"-"`
1095}
1096
1097func (s *ActivityObjectPlusoners) MarshalJSON() ([]byte, error) {
1098	type NoMethod ActivityObjectPlusoners
1099	raw := NoMethod(*s)
1100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1101}
1102
1103// ActivityObjectReplies: Comments in reply to this activity.
1104type ActivityObjectReplies struct {
1105	// SelfLink: The URL for the collection of comments in reply to this
1106	// activity.
1107	SelfLink string `json:"selfLink,omitempty"`
1108
1109	// TotalItems: Total number of comments on this activity.
1110	TotalItems int64 `json:"totalItems,omitempty"`
1111
1112	// ForceSendFields is a list of field names (e.g. "SelfLink") to
1113	// unconditionally include in API requests. By default, fields with
1114	// empty values are omitted from API requests. However, any non-pointer,
1115	// non-interface field appearing in ForceSendFields will be sent to the
1116	// server regardless of whether the field is empty or not. This may be
1117	// used to include empty fields in Patch requests.
1118	ForceSendFields []string `json:"-"`
1119
1120	// NullFields is a list of field names (e.g. "SelfLink") to include in
1121	// API requests with the JSON null value. By default, fields with empty
1122	// values are omitted from API requests. However, any field with an
1123	// empty value appearing in NullFields will be sent to the server as
1124	// null. It is an error if a field in this list has a non-empty value.
1125	// This may be used to include null fields in Patch requests.
1126	NullFields []string `json:"-"`
1127}
1128
1129func (s *ActivityObjectReplies) MarshalJSON() ([]byte, error) {
1130	type NoMethod ActivityObjectReplies
1131	raw := NoMethod(*s)
1132	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1133}
1134
1135// ActivityObjectResharers: People who reshared this activity.
1136type ActivityObjectResharers struct {
1137	// SelfLink: The URL for the collection of resharers.
1138	SelfLink string `json:"selfLink,omitempty"`
1139
1140	// TotalItems: Total number of people who reshared this activity.
1141	TotalItems int64 `json:"totalItems,omitempty"`
1142
1143	// ForceSendFields is a list of field names (e.g. "SelfLink") to
1144	// unconditionally include in API requests. By default, fields with
1145	// empty values are omitted from API requests. However, any non-pointer,
1146	// non-interface field appearing in ForceSendFields will be sent to the
1147	// server regardless of whether the field is empty or not. This may be
1148	// used to include empty fields in Patch requests.
1149	ForceSendFields []string `json:"-"`
1150
1151	// NullFields is a list of field names (e.g. "SelfLink") to include in
1152	// API requests with the JSON null value. By default, fields with empty
1153	// values are omitted from API requests. However, any field with an
1154	// empty value appearing in NullFields will be sent to the server as
1155	// null. It is an error if a field in this list has a non-empty value.
1156	// This may be used to include null fields in Patch requests.
1157	NullFields []string `json:"-"`
1158}
1159
1160func (s *ActivityObjectResharers) MarshalJSON() ([]byte, error) {
1161	type NoMethod ActivityObjectResharers
1162	raw := NoMethod(*s)
1163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1164}
1165
1166// ActivityObjectStatusForViewer: Status of the activity as seen by the
1167// viewer.
1168type ActivityObjectStatusForViewer struct {
1169	// CanComment: Whether the viewer can comment on the activity.
1170	CanComment bool `json:"canComment,omitempty"`
1171
1172	// CanPlusone: Whether the viewer can +1 the activity.
1173	CanPlusone bool `json:"canPlusone,omitempty"`
1174
1175	// CanUpdate: Whether the viewer can edit or delete the activity.
1176	CanUpdate bool `json:"canUpdate,omitempty"`
1177
1178	// IsPlusOned: Whether the viewer has +1'd the activity.
1179	IsPlusOned bool `json:"isPlusOned,omitempty"`
1180
1181	// ResharingDisabled: Whether reshares are disabled for the activity.
1182	ResharingDisabled bool `json:"resharingDisabled,omitempty"`
1183
1184	// ForceSendFields is a list of field names (e.g. "CanComment") to
1185	// unconditionally include in API requests. By default, fields with
1186	// empty values are omitted from API requests. However, any non-pointer,
1187	// non-interface field appearing in ForceSendFields will be sent to the
1188	// server regardless of whether the field is empty or not. This may be
1189	// used to include empty fields in Patch requests.
1190	ForceSendFields []string `json:"-"`
1191
1192	// NullFields is a list of field names (e.g. "CanComment") to include in
1193	// API requests with the JSON null value. By default, fields with empty
1194	// values are omitted from API requests. However, any field with an
1195	// empty value appearing in NullFields will be sent to the server as
1196	// null. It is an error if a field in this list has a non-empty value.
1197	// This may be used to include null fields in Patch requests.
1198	NullFields []string `json:"-"`
1199}
1200
1201func (s *ActivityObjectStatusForViewer) MarshalJSON() ([]byte, error) {
1202	type NoMethod ActivityObjectStatusForViewer
1203	raw := NoMethod(*s)
1204	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1205}
1206
1207// ActivityProvider: The service provider that initially published this
1208// activity.
1209type ActivityProvider struct {
1210	// Title: Name of the service provider.
1211	Title string `json:"title,omitempty"`
1212
1213	// ForceSendFields is a list of field names (e.g. "Title") to
1214	// unconditionally include in API requests. By default, fields with
1215	// empty values are omitted from API requests. However, any non-pointer,
1216	// non-interface field appearing in ForceSendFields will be sent to the
1217	// server regardless of whether the field is empty or not. This may be
1218	// used to include empty fields in Patch requests.
1219	ForceSendFields []string `json:"-"`
1220
1221	// NullFields is a list of field names (e.g. "Title") to include in API
1222	// requests with the JSON null value. By default, fields with empty
1223	// values are omitted from API requests. However, any field with an
1224	// empty value appearing in NullFields will be sent to the server as
1225	// null. It is an error if a field in this list has a non-empty value.
1226	// This may be used to include null fields in Patch requests.
1227	NullFields []string `json:"-"`
1228}
1229
1230func (s *ActivityProvider) MarshalJSON() ([]byte, error) {
1231	type NoMethod ActivityProvider
1232	raw := NoMethod(*s)
1233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1234}
1235
1236type ActivityFeed struct {
1237	// Etag: ETag of this response for caching purposes.
1238	Etag string `json:"etag,omitempty"`
1239
1240	// Id: The ID of this collection of activities. Deprecated.
1241	Id string `json:"id,omitempty"`
1242
1243	// Items: The activities in this page of results.
1244	Items []*Activity `json:"items,omitempty"`
1245
1246	// Kind: Identifies this resource as a collection of activities. Value:
1247	// "plus#activityFeed".
1248	Kind string `json:"kind,omitempty"`
1249
1250	// NextLink: Link to the next page of activities.
1251	NextLink string `json:"nextLink,omitempty"`
1252
1253	// NextPageToken: The continuation token, which is used to page through
1254	// large result sets. Provide this value in a subsequent request to
1255	// return the next page of results.
1256	NextPageToken string `json:"nextPageToken,omitempty"`
1257
1258	// SelfLink: Link to this activity resource.
1259	SelfLink string `json:"selfLink,omitempty"`
1260
1261	// Title: The title of this collection of activities, which is a
1262	// truncated portion of the content.
1263	Title string `json:"title,omitempty"`
1264
1265	// Updated: The time at which this collection of activities was last
1266	// updated. Formatted as an RFC 3339 timestamp.
1267	Updated string `json:"updated,omitempty"`
1268
1269	// ServerResponse contains the HTTP response code and headers from the
1270	// server.
1271	googleapi.ServerResponse `json:"-"`
1272
1273	// ForceSendFields is a list of field names (e.g. "Etag") to
1274	// unconditionally include in API requests. By default, fields with
1275	// empty values are omitted from API requests. However, any non-pointer,
1276	// non-interface field appearing in ForceSendFields will be sent to the
1277	// server regardless of whether the field is empty or not. This may be
1278	// used to include empty fields in Patch requests.
1279	ForceSendFields []string `json:"-"`
1280
1281	// NullFields is a list of field names (e.g. "Etag") to include in API
1282	// requests with the JSON null value. By default, fields with empty
1283	// values are omitted from API requests. However, any field with an
1284	// empty value appearing in NullFields will be sent to the server as
1285	// null. It is an error if a field in this list has a non-empty value.
1286	// This may be used to include null fields in Patch requests.
1287	NullFields []string `json:"-"`
1288}
1289
1290func (s *ActivityFeed) MarshalJSON() ([]byte, error) {
1291	type NoMethod ActivityFeed
1292	raw := NoMethod(*s)
1293	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1294}
1295
1296type Audience struct {
1297	// Etag: ETag of this response for caching purposes.
1298	Etag string `json:"etag,omitempty"`
1299
1300	// Item: The access control list entry.
1301	Item *PlusDomainsAclentryResource `json:"item,omitempty"`
1302
1303	// Kind: Identifies this resource as an audience. Value:
1304	// "plus#audience".
1305	Kind string `json:"kind,omitempty"`
1306
1307	// MemberCount: The number of people in this circle. This only applies
1308	// if entity_type is CIRCLE.
1309	MemberCount int64 `json:"memberCount,omitempty"`
1310
1311	// Visibility: The circle members' visibility as chosen by the owner of
1312	// the circle. This only applies for items with "item.type" equals
1313	// "circle". Possible values are:
1314	// - "public" - Members are visible to the public.
1315	// - "limited" - Members are visible to a limited audience.
1316	// - "private" - Members are visible to the owner only.
1317	Visibility string `json:"visibility,omitempty"`
1318
1319	// ForceSendFields is a list of field names (e.g. "Etag") to
1320	// unconditionally include in API requests. By default, fields with
1321	// empty values are omitted from API requests. However, any non-pointer,
1322	// non-interface field appearing in ForceSendFields will be sent to the
1323	// server regardless of whether the field is empty or not. This may be
1324	// used to include empty fields in Patch requests.
1325	ForceSendFields []string `json:"-"`
1326
1327	// NullFields is a list of field names (e.g. "Etag") to include in API
1328	// requests with the JSON null value. By default, fields with empty
1329	// values are omitted from API requests. However, any field with an
1330	// empty value appearing in NullFields will be sent to the server as
1331	// null. It is an error if a field in this list has a non-empty value.
1332	// This may be used to include null fields in Patch requests.
1333	NullFields []string `json:"-"`
1334}
1335
1336func (s *Audience) MarshalJSON() ([]byte, error) {
1337	type NoMethod Audience
1338	raw := NoMethod(*s)
1339	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1340}
1341
1342type AudiencesFeed struct {
1343	// Etag: ETag of this response for caching purposes.
1344	Etag string `json:"etag,omitempty"`
1345
1346	// Items: The audiences in this result.
1347	Items []*Audience `json:"items,omitempty"`
1348
1349	// Kind: Identifies this resource as a collection of audiences. Value:
1350	// "plus#audienceFeed".
1351	Kind string `json:"kind,omitempty"`
1352
1353	// NextPageToken: The continuation token, which is used to page through
1354	// large result sets. Provide this value in a subsequent request to
1355	// return the next page of results.
1356	NextPageToken string `json:"nextPageToken,omitempty"`
1357
1358	// TotalItems: The total number of ACL entries. The number of entries in
1359	// this response may be smaller due to paging.
1360	TotalItems int64 `json:"totalItems,omitempty"`
1361
1362	// ServerResponse contains the HTTP response code and headers from the
1363	// server.
1364	googleapi.ServerResponse `json:"-"`
1365
1366	// ForceSendFields is a list of field names (e.g. "Etag") to
1367	// unconditionally include in API requests. By default, fields with
1368	// empty values are omitted from API requests. However, any non-pointer,
1369	// non-interface field appearing in ForceSendFields will be sent to the
1370	// server regardless of whether the field is empty or not. This may be
1371	// used to include empty fields in Patch requests.
1372	ForceSendFields []string `json:"-"`
1373
1374	// NullFields is a list of field names (e.g. "Etag") to include in API
1375	// requests with the JSON null value. By default, fields with empty
1376	// values are omitted from API requests. However, any field with an
1377	// empty value appearing in NullFields will be sent to the server as
1378	// null. It is an error if a field in this list has a non-empty value.
1379	// This may be used to include null fields in Patch requests.
1380	NullFields []string `json:"-"`
1381}
1382
1383func (s *AudiencesFeed) MarshalJSON() ([]byte, error) {
1384	type NoMethod AudiencesFeed
1385	raw := NoMethod(*s)
1386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1387}
1388
1389type Circle struct {
1390	// Description: The description of this circle.
1391	Description string `json:"description,omitempty"`
1392
1393	// DisplayName: The circle name.
1394	DisplayName string `json:"displayName,omitempty"`
1395
1396	// Etag: ETag of this response for caching purposes.
1397	Etag string `json:"etag,omitempty"`
1398
1399	// Id: The ID of the circle.
1400	Id string `json:"id,omitempty"`
1401
1402	// Kind: Identifies this resource as a circle. Value: "plus#circle".
1403	Kind string `json:"kind,omitempty"`
1404
1405	// People: The people in this circle.
1406	People *CirclePeople `json:"people,omitempty"`
1407
1408	// SelfLink: Link to this circle resource
1409	SelfLink string `json:"selfLink,omitempty"`
1410
1411	// ForceSendFields is a list of field names (e.g. "Description") to
1412	// unconditionally include in API requests. By default, fields with
1413	// empty values are omitted from API requests. However, any non-pointer,
1414	// non-interface field appearing in ForceSendFields will be sent to the
1415	// server regardless of whether the field is empty or not. This may be
1416	// used to include empty fields in Patch requests.
1417	ForceSendFields []string `json:"-"`
1418
1419	// NullFields is a list of field names (e.g. "Description") to include
1420	// in API requests with the JSON null value. By default, fields with
1421	// empty values are omitted from API requests. However, any field with
1422	// an empty value appearing in NullFields will be sent to the server as
1423	// null. It is an error if a field in this list has a non-empty value.
1424	// This may be used to include null fields in Patch requests.
1425	NullFields []string `json:"-"`
1426}
1427
1428func (s *Circle) MarshalJSON() ([]byte, error) {
1429	type NoMethod Circle
1430	raw := NoMethod(*s)
1431	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1432}
1433
1434// CirclePeople: The people in this circle.
1435type CirclePeople struct {
1436	// TotalItems: The total number of people in this circle.
1437	TotalItems int64 `json:"totalItems,omitempty"`
1438
1439	// ForceSendFields is a list of field names (e.g. "TotalItems") to
1440	// unconditionally include in API requests. By default, fields with
1441	// empty values are omitted from API requests. However, any non-pointer,
1442	// non-interface field appearing in ForceSendFields will be sent to the
1443	// server regardless of whether the field is empty or not. This may be
1444	// used to include empty fields in Patch requests.
1445	ForceSendFields []string `json:"-"`
1446
1447	// NullFields is a list of field names (e.g. "TotalItems") to include in
1448	// API requests with the JSON null value. By default, fields with empty
1449	// values are omitted from API requests. However, any field with an
1450	// empty value appearing in NullFields will be sent to the server as
1451	// null. It is an error if a field in this list has a non-empty value.
1452	// This may be used to include null fields in Patch requests.
1453	NullFields []string `json:"-"`
1454}
1455
1456func (s *CirclePeople) MarshalJSON() ([]byte, error) {
1457	type NoMethod CirclePeople
1458	raw := NoMethod(*s)
1459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1460}
1461
1462type CircleFeed struct {
1463	// Etag: ETag of this response for caching purposes.
1464	Etag string `json:"etag,omitempty"`
1465
1466	// Items: The circles in this page of results.
1467	Items []*Circle `json:"items,omitempty"`
1468
1469	// Kind: Identifies this resource as a collection of circles. Value:
1470	// "plus#circleFeed".
1471	Kind string `json:"kind,omitempty"`
1472
1473	// NextLink: Link to the next page of circles.
1474	NextLink string `json:"nextLink,omitempty"`
1475
1476	// NextPageToken: The continuation token, which is used to page through
1477	// large result sets. Provide this value in a subsequent request to
1478	// return the next page of results.
1479	NextPageToken string `json:"nextPageToken,omitempty"`
1480
1481	// SelfLink: Link to this page of circles.
1482	SelfLink string `json:"selfLink,omitempty"`
1483
1484	// Title: The title of this list of resources.
1485	Title string `json:"title,omitempty"`
1486
1487	// TotalItems: The total number of circles. The number of circles in
1488	// this response may be smaller due to paging.
1489	TotalItems int64 `json:"totalItems,omitempty"`
1490
1491	// ServerResponse contains the HTTP response code and headers from the
1492	// server.
1493	googleapi.ServerResponse `json:"-"`
1494
1495	// ForceSendFields is a list of field names (e.g. "Etag") to
1496	// unconditionally include in API requests. By default, fields with
1497	// empty values are omitted from API requests. However, any non-pointer,
1498	// non-interface field appearing in ForceSendFields will be sent to the
1499	// server regardless of whether the field is empty or not. This may be
1500	// used to include empty fields in Patch requests.
1501	ForceSendFields []string `json:"-"`
1502
1503	// NullFields is a list of field names (e.g. "Etag") to include in API
1504	// requests with the JSON null value. By default, fields with empty
1505	// values are omitted from API requests. However, any field with an
1506	// empty value appearing in NullFields will be sent to the server as
1507	// null. It is an error if a field in this list has a non-empty value.
1508	// This may be used to include null fields in Patch requests.
1509	NullFields []string `json:"-"`
1510}
1511
1512func (s *CircleFeed) MarshalJSON() ([]byte, error) {
1513	type NoMethod CircleFeed
1514	raw := NoMethod(*s)
1515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1516}
1517
1518type Comment struct {
1519	// Actor: The person who posted this comment.
1520	Actor *CommentActor `json:"actor,omitempty"`
1521
1522	// Etag: ETag of this response for caching purposes.
1523	Etag string `json:"etag,omitempty"`
1524
1525	// Id: The ID of this comment.
1526	Id string `json:"id,omitempty"`
1527
1528	// InReplyTo: The activity this comment replied to.
1529	InReplyTo []*CommentInReplyTo `json:"inReplyTo,omitempty"`
1530
1531	// Kind: Identifies this resource as a comment. Value: "plus#comment".
1532	Kind string `json:"kind,omitempty"`
1533
1534	// Object: The object of this comment.
1535	Object *CommentObject `json:"object,omitempty"`
1536
1537	// Plusoners: People who +1'd this comment.
1538	Plusoners *CommentPlusoners `json:"plusoners,omitempty"`
1539
1540	// Published: The time at which this comment was initially published.
1541	// Formatted as an RFC 3339 timestamp.
1542	Published string `json:"published,omitempty"`
1543
1544	// SelfLink: Link to this comment resource.
1545	SelfLink string `json:"selfLink,omitempty"`
1546
1547	// Updated: The time at which this comment was last updated. Formatted
1548	// as an RFC 3339 timestamp.
1549	Updated string `json:"updated,omitempty"`
1550
1551	// Verb: This comment's verb, indicating what action was performed.
1552	// Possible values are:
1553	// - "post" - Publish content to the stream.
1554	Verb string `json:"verb,omitempty"`
1555
1556	// ServerResponse contains the HTTP response code and headers from the
1557	// server.
1558	googleapi.ServerResponse `json:"-"`
1559
1560	// ForceSendFields is a list of field names (e.g. "Actor") to
1561	// unconditionally include in API requests. By default, fields with
1562	// empty values are omitted from API requests. However, any non-pointer,
1563	// non-interface field appearing in ForceSendFields will be sent to the
1564	// server regardless of whether the field is empty or not. This may be
1565	// used to include empty fields in Patch requests.
1566	ForceSendFields []string `json:"-"`
1567
1568	// NullFields is a list of field names (e.g. "Actor") to include in API
1569	// requests with the JSON null value. By default, fields with empty
1570	// values are omitted from API requests. However, any field with an
1571	// empty value appearing in NullFields will be sent to the server as
1572	// null. It is an error if a field in this list has a non-empty value.
1573	// This may be used to include null fields in Patch requests.
1574	NullFields []string `json:"-"`
1575}
1576
1577func (s *Comment) MarshalJSON() ([]byte, error) {
1578	type NoMethod Comment
1579	raw := NoMethod(*s)
1580	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1581}
1582
1583// CommentActor: The person who posted this comment.
1584type CommentActor struct {
1585	// ClientSpecificActorInfo: Actor info specific to particular clients.
1586	ClientSpecificActorInfo *CommentActorClientSpecificActorInfo `json:"clientSpecificActorInfo,omitempty"`
1587
1588	// DisplayName: The name of this actor, suitable for display.
1589	DisplayName string `json:"displayName,omitempty"`
1590
1591	// Id: The ID of the actor.
1592	Id string `json:"id,omitempty"`
1593
1594	// Image: The image representation of this actor.
1595	Image *CommentActorImage `json:"image,omitempty"`
1596
1597	// Url: A link to the Person resource for this actor.
1598	Url string `json:"url,omitempty"`
1599
1600	// Verification: Verification status of actor.
1601	Verification *CommentActorVerification `json:"verification,omitempty"`
1602
1603	// ForceSendFields is a list of field names (e.g.
1604	// "ClientSpecificActorInfo") to unconditionally include in API
1605	// requests. By default, fields with empty values are omitted from API
1606	// requests. However, any non-pointer, non-interface field appearing in
1607	// ForceSendFields will be sent to the server regardless of whether the
1608	// field is empty or not. This may be used to include empty fields in
1609	// Patch requests.
1610	ForceSendFields []string `json:"-"`
1611
1612	// NullFields is a list of field names (e.g. "ClientSpecificActorInfo")
1613	// to include in API requests with the JSON null value. By default,
1614	// fields with empty values are omitted from API requests. However, any
1615	// field with an empty value appearing in NullFields will be sent to the
1616	// server as null. It is an error if a field in this list has a
1617	// non-empty value. This may be used to include null fields in Patch
1618	// requests.
1619	NullFields []string `json:"-"`
1620}
1621
1622func (s *CommentActor) MarshalJSON() ([]byte, error) {
1623	type NoMethod CommentActor
1624	raw := NoMethod(*s)
1625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1626}
1627
1628// CommentActorClientSpecificActorInfo: Actor info specific to
1629// particular clients.
1630type CommentActorClientSpecificActorInfo struct {
1631	// YoutubeActorInfo: Actor info specific to YouTube clients.
1632	YoutubeActorInfo *CommentActorClientSpecificActorInfoYoutubeActorInfo `json:"youtubeActorInfo,omitempty"`
1633
1634	// ForceSendFields is a list of field names (e.g. "YoutubeActorInfo") to
1635	// unconditionally include in API requests. By default, fields with
1636	// empty values are omitted from API requests. However, any non-pointer,
1637	// non-interface field appearing in ForceSendFields will be sent to the
1638	// server regardless of whether the field is empty or not. This may be
1639	// used to include empty fields in Patch requests.
1640	ForceSendFields []string `json:"-"`
1641
1642	// NullFields is a list of field names (e.g. "YoutubeActorInfo") to
1643	// include in API requests with the JSON null value. By default, fields
1644	// with empty values are omitted from API requests. However, any field
1645	// with an empty value appearing in NullFields will be sent to the
1646	// server as null. It is an error if a field in this list has a
1647	// non-empty value. This may be used to include null fields in Patch
1648	// requests.
1649	NullFields []string `json:"-"`
1650}
1651
1652func (s *CommentActorClientSpecificActorInfo) MarshalJSON() ([]byte, error) {
1653	type NoMethod CommentActorClientSpecificActorInfo
1654	raw := NoMethod(*s)
1655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1656}
1657
1658// CommentActorClientSpecificActorInfoYoutubeActorInfo: Actor info
1659// specific to YouTube clients.
1660type CommentActorClientSpecificActorInfoYoutubeActorInfo struct {
1661	// ChannelId: ID of the YouTube channel owned by the Actor.
1662	ChannelId string `json:"channelId,omitempty"`
1663
1664	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1665	// unconditionally include in API requests. By default, fields with
1666	// empty values are omitted from API requests. However, any non-pointer,
1667	// non-interface field appearing in ForceSendFields will be sent to the
1668	// server regardless of whether the field is empty or not. This may be
1669	// used to include empty fields in Patch requests.
1670	ForceSendFields []string `json:"-"`
1671
1672	// NullFields is a list of field names (e.g. "ChannelId") to include in
1673	// API requests with the JSON null value. By default, fields with empty
1674	// values are omitted from API requests. However, any field with an
1675	// empty value appearing in NullFields will be sent to the server as
1676	// null. It is an error if a field in this list has a non-empty value.
1677	// This may be used to include null fields in Patch requests.
1678	NullFields []string `json:"-"`
1679}
1680
1681func (s *CommentActorClientSpecificActorInfoYoutubeActorInfo) MarshalJSON() ([]byte, error) {
1682	type NoMethod CommentActorClientSpecificActorInfoYoutubeActorInfo
1683	raw := NoMethod(*s)
1684	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1685}
1686
1687// CommentActorImage: The image representation of this actor.
1688type CommentActorImage struct {
1689	// Url: The URL of the actor's profile photo. To resize the image and
1690	// crop it to a square, append the query string ?sz=x, where x is the
1691	// dimension in pixels of each side.
1692	Url string `json:"url,omitempty"`
1693
1694	// ForceSendFields is a list of field names (e.g. "Url") to
1695	// unconditionally include in API requests. By default, fields with
1696	// empty values are omitted from API requests. However, any non-pointer,
1697	// non-interface field appearing in ForceSendFields will be sent to the
1698	// server regardless of whether the field is empty or not. This may be
1699	// used to include empty fields in Patch requests.
1700	ForceSendFields []string `json:"-"`
1701
1702	// NullFields is a list of field names (e.g. "Url") to include in API
1703	// requests with the JSON null value. By default, fields with empty
1704	// values are omitted from API requests. However, any field with an
1705	// empty value appearing in NullFields will be sent to the server as
1706	// null. It is an error if a field in this list has a non-empty value.
1707	// This may be used to include null fields in Patch requests.
1708	NullFields []string `json:"-"`
1709}
1710
1711func (s *CommentActorImage) MarshalJSON() ([]byte, error) {
1712	type NoMethod CommentActorImage
1713	raw := NoMethod(*s)
1714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1715}
1716
1717// CommentActorVerification: Verification status of actor.
1718type CommentActorVerification struct {
1719	// AdHocVerified: Verification for one-time or manual processes.
1720	AdHocVerified string `json:"adHocVerified,omitempty"`
1721
1722	// ForceSendFields is a list of field names (e.g. "AdHocVerified") to
1723	// unconditionally include in API requests. By default, fields with
1724	// empty values are omitted from API requests. However, any non-pointer,
1725	// non-interface field appearing in ForceSendFields will be sent to the
1726	// server regardless of whether the field is empty or not. This may be
1727	// used to include empty fields in Patch requests.
1728	ForceSendFields []string `json:"-"`
1729
1730	// NullFields is a list of field names (e.g. "AdHocVerified") to include
1731	// in API requests with the JSON null value. By default, fields with
1732	// empty values are omitted from API requests. However, any field with
1733	// an empty value appearing in NullFields will be sent to the server as
1734	// null. It is an error if a field in this list has a non-empty value.
1735	// This may be used to include null fields in Patch requests.
1736	NullFields []string `json:"-"`
1737}
1738
1739func (s *CommentActorVerification) MarshalJSON() ([]byte, error) {
1740	type NoMethod CommentActorVerification
1741	raw := NoMethod(*s)
1742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1743}
1744
1745type CommentInReplyTo struct {
1746	// Id: The ID of the activity.
1747	Id string `json:"id,omitempty"`
1748
1749	// Url: The URL of the activity.
1750	Url string `json:"url,omitempty"`
1751
1752	// ForceSendFields is a list of field names (e.g. "Id") to
1753	// unconditionally include in API requests. By default, fields with
1754	// empty values are omitted from API requests. However, any non-pointer,
1755	// non-interface field appearing in ForceSendFields will be sent to the
1756	// server regardless of whether the field is empty or not. This may be
1757	// used to include empty fields in Patch requests.
1758	ForceSendFields []string `json:"-"`
1759
1760	// NullFields is a list of field names (e.g. "Id") to include in API
1761	// requests with the JSON null value. By default, fields with empty
1762	// values are omitted from API requests. However, any field with an
1763	// empty value appearing in NullFields will be sent to the server as
1764	// null. It is an error if a field in this list has a non-empty value.
1765	// This may be used to include null fields in Patch requests.
1766	NullFields []string `json:"-"`
1767}
1768
1769func (s *CommentInReplyTo) MarshalJSON() ([]byte, error) {
1770	type NoMethod CommentInReplyTo
1771	raw := NoMethod(*s)
1772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1773}
1774
1775// CommentObject: The object of this comment.
1776type CommentObject struct {
1777	// Content: The HTML-formatted content, suitable for display.
1778	Content string `json:"content,omitempty"`
1779
1780	// ObjectType: The object type of this comment. Possible values are:
1781	// - "comment" - A comment in reply to an activity.
1782	ObjectType string `json:"objectType,omitempty"`
1783
1784	// OriginalContent: The content (text) as provided by the author, stored
1785	// without any HTML formatting. When creating or updating a comment,
1786	// this value must be supplied as plain text in the request.
1787	OriginalContent string `json:"originalContent,omitempty"`
1788
1789	// ForceSendFields is a list of field names (e.g. "Content") to
1790	// unconditionally include in API requests. By default, fields with
1791	// empty values are omitted from API requests. However, any non-pointer,
1792	// non-interface field appearing in ForceSendFields will be sent to the
1793	// server regardless of whether the field is empty or not. This may be
1794	// used to include empty fields in Patch requests.
1795	ForceSendFields []string `json:"-"`
1796
1797	// NullFields is a list of field names (e.g. "Content") to include in
1798	// API requests with the JSON null value. By default, fields with empty
1799	// values are omitted from API requests. However, any field with an
1800	// empty value appearing in NullFields will be sent to the server as
1801	// null. It is an error if a field in this list has a non-empty value.
1802	// This may be used to include null fields in Patch requests.
1803	NullFields []string `json:"-"`
1804}
1805
1806func (s *CommentObject) MarshalJSON() ([]byte, error) {
1807	type NoMethod CommentObject
1808	raw := NoMethod(*s)
1809	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1810}
1811
1812// CommentPlusoners: People who +1'd this comment.
1813type CommentPlusoners struct {
1814	// TotalItems: Total number of people who +1'd this comment.
1815	TotalItems int64 `json:"totalItems,omitempty"`
1816
1817	// ForceSendFields is a list of field names (e.g. "TotalItems") to
1818	// unconditionally include in API requests. By default, fields with
1819	// empty values are omitted from API requests. However, any non-pointer,
1820	// non-interface field appearing in ForceSendFields will be sent to the
1821	// server regardless of whether the field is empty or not. This may be
1822	// used to include empty fields in Patch requests.
1823	ForceSendFields []string `json:"-"`
1824
1825	// NullFields is a list of field names (e.g. "TotalItems") to include in
1826	// API requests with the JSON null value. By default, fields with empty
1827	// values are omitted from API requests. However, any field with an
1828	// empty value appearing in NullFields will be sent to the server as
1829	// null. It is an error if a field in this list has a non-empty value.
1830	// This may be used to include null fields in Patch requests.
1831	NullFields []string `json:"-"`
1832}
1833
1834func (s *CommentPlusoners) MarshalJSON() ([]byte, error) {
1835	type NoMethod CommentPlusoners
1836	raw := NoMethod(*s)
1837	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1838}
1839
1840type CommentFeed struct {
1841	// Etag: ETag of this response for caching purposes.
1842	Etag string `json:"etag,omitempty"`
1843
1844	// Id: The ID of this collection of comments.
1845	Id string `json:"id,omitempty"`
1846
1847	// Items: The comments in this page of results.
1848	Items []*Comment `json:"items,omitempty"`
1849
1850	// Kind: Identifies this resource as a collection of comments. Value:
1851	// "plus#commentFeed".
1852	Kind string `json:"kind,omitempty"`
1853
1854	// NextLink: Link to the next page of activities.
1855	NextLink string `json:"nextLink,omitempty"`
1856
1857	// NextPageToken: The continuation token, which is used to page through
1858	// large result sets. Provide this value in a subsequent request to
1859	// return the next page of results.
1860	NextPageToken string `json:"nextPageToken,omitempty"`
1861
1862	// Title: The title of this collection of comments.
1863	Title string `json:"title,omitempty"`
1864
1865	// Updated: The time at which this collection of comments was last
1866	// updated. Formatted as an RFC 3339 timestamp.
1867	Updated string `json:"updated,omitempty"`
1868
1869	// ServerResponse contains the HTTP response code and headers from the
1870	// server.
1871	googleapi.ServerResponse `json:"-"`
1872
1873	// ForceSendFields is a list of field names (e.g. "Etag") to
1874	// unconditionally include in API requests. By default, fields with
1875	// empty values are omitted from API requests. However, any non-pointer,
1876	// non-interface field appearing in ForceSendFields will be sent to the
1877	// server regardless of whether the field is empty or not. This may be
1878	// used to include empty fields in Patch requests.
1879	ForceSendFields []string `json:"-"`
1880
1881	// NullFields is a list of field names (e.g. "Etag") to include in API
1882	// requests with the JSON null value. By default, fields with empty
1883	// values are omitted from API requests. However, any field with an
1884	// empty value appearing in NullFields will be sent to the server as
1885	// null. It is an error if a field in this list has a non-empty value.
1886	// This may be used to include null fields in Patch requests.
1887	NullFields []string `json:"-"`
1888}
1889
1890func (s *CommentFeed) MarshalJSON() ([]byte, error) {
1891	type NoMethod CommentFeed
1892	raw := NoMethod(*s)
1893	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1894}
1895
1896type Media struct {
1897	// Author: The person who uploaded this media.
1898	Author *MediaAuthor `json:"author,omitempty"`
1899
1900	// DisplayName: The display name for this media.
1901	DisplayName string `json:"displayName,omitempty"`
1902
1903	// Etag: ETag of this response for caching purposes.
1904	Etag string `json:"etag,omitempty"`
1905
1906	// Exif: Exif information of the media item.
1907	Exif *MediaExif `json:"exif,omitempty"`
1908
1909	// Height: The height in pixels of the original image.
1910	Height int64 `json:"height,omitempty"`
1911
1912	// Id: ID of this media, which is generated by the API.
1913	Id string `json:"id,omitempty"`
1914
1915	// Kind: The type of resource.
1916	Kind string `json:"kind,omitempty"`
1917
1918	// MediaCreatedTime: The time at which this media was originally created
1919	// in UTC. Formatted as an RFC 3339 timestamp that matches this example:
1920	// 2010-11-25T14:30:27.655Z
1921	MediaCreatedTime string `json:"mediaCreatedTime,omitempty"`
1922
1923	// MediaUrl: The URL of this photo or video's still image.
1924	MediaUrl string `json:"mediaUrl,omitempty"`
1925
1926	// Published: The time at which this media was uploaded. Formatted as an
1927	// RFC 3339 timestamp.
1928	Published string `json:"published,omitempty"`
1929
1930	// SizeBytes: The size in bytes of this video.
1931	SizeBytes int64 `json:"sizeBytes,omitempty,string"`
1932
1933	// Streams: The list of video streams for this video. There might be
1934	// several different streams available for a single video, either Flash
1935	// or MPEG, of various sizes
1936	Streams []*Videostream `json:"streams,omitempty"`
1937
1938	// Summary: A description, or caption, for this media.
1939	Summary string `json:"summary,omitempty"`
1940
1941	// Updated: The time at which this media was last updated. This includes
1942	// changes to media metadata. Formatted as an RFC 3339 timestamp.
1943	Updated string `json:"updated,omitempty"`
1944
1945	// Url: The URL for the page that hosts this media.
1946	Url string `json:"url,omitempty"`
1947
1948	// VideoDuration: The duration in milliseconds of this video.
1949	VideoDuration int64 `json:"videoDuration,omitempty,string"`
1950
1951	// VideoStatus: The encoding status of this video. Possible values are:
1952	//
1953	// - "UPLOADING" - Not all the video bytes have been received.
1954	// - "PENDING" - Video not yet processed.
1955	// - "FAILED" - Video processing failed.
1956	// - "READY" - A single video stream is playable.
1957	// - "FINAL" - All video streams are playable.
1958	VideoStatus string `json:"videoStatus,omitempty"`
1959
1960	// Width: The width in pixels of the original image.
1961	Width int64 `json:"width,omitempty"`
1962
1963	// ServerResponse contains the HTTP response code and headers from the
1964	// server.
1965	googleapi.ServerResponse `json:"-"`
1966
1967	// ForceSendFields is a list of field names (e.g. "Author") to
1968	// unconditionally include in API requests. By default, fields with
1969	// empty values are omitted from API requests. However, any non-pointer,
1970	// non-interface field appearing in ForceSendFields will be sent to the
1971	// server regardless of whether the field is empty or not. This may be
1972	// used to include empty fields in Patch requests.
1973	ForceSendFields []string `json:"-"`
1974
1975	// NullFields is a list of field names (e.g. "Author") to include in API
1976	// requests with the JSON null value. By default, fields with empty
1977	// values are omitted from API requests. However, any field with an
1978	// empty value appearing in NullFields will be sent to the server as
1979	// null. It is an error if a field in this list has a non-empty value.
1980	// This may be used to include null fields in Patch requests.
1981	NullFields []string `json:"-"`
1982}
1983
1984func (s *Media) MarshalJSON() ([]byte, error) {
1985	type NoMethod Media
1986	raw := NoMethod(*s)
1987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1988}
1989
1990// MediaAuthor: The person who uploaded this media.
1991type MediaAuthor struct {
1992	// DisplayName: The author's name.
1993	DisplayName string `json:"displayName,omitempty"`
1994
1995	// Id: ID of the author.
1996	Id string `json:"id,omitempty"`
1997
1998	// Image: The author's Google profile image.
1999	Image *MediaAuthorImage `json:"image,omitempty"`
2000
2001	// Url: A link to the author's Google profile.
2002	Url string `json:"url,omitempty"`
2003
2004	// ForceSendFields is a list of field names (e.g. "DisplayName") to
2005	// unconditionally include in API requests. By default, fields with
2006	// empty values are omitted from API requests. However, any non-pointer,
2007	// non-interface field appearing in ForceSendFields will be sent to the
2008	// server regardless of whether the field is empty or not. This may be
2009	// used to include empty fields in Patch requests.
2010	ForceSendFields []string `json:"-"`
2011
2012	// NullFields is a list of field names (e.g. "DisplayName") to include
2013	// in API requests with the JSON null value. By default, fields with
2014	// empty values are omitted from API requests. However, any field with
2015	// an empty value appearing in NullFields will be sent to the server as
2016	// null. It is an error if a field in this list has a non-empty value.
2017	// This may be used to include null fields in Patch requests.
2018	NullFields []string `json:"-"`
2019}
2020
2021func (s *MediaAuthor) MarshalJSON() ([]byte, error) {
2022	type NoMethod MediaAuthor
2023	raw := NoMethod(*s)
2024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2025}
2026
2027// MediaAuthorImage: The author's Google profile image.
2028type MediaAuthorImage struct {
2029	// Url: The URL of the author's profile photo. To resize the image and
2030	// crop it to a square, append the query string ?sz=x, where x is the
2031	// dimension in pixels of each side.
2032	Url string `json:"url,omitempty"`
2033
2034	// ForceSendFields is a list of field names (e.g. "Url") to
2035	// unconditionally include in API requests. By default, fields with
2036	// empty values are omitted from API requests. However, any non-pointer,
2037	// non-interface field appearing in ForceSendFields will be sent to the
2038	// server regardless of whether the field is empty or not. This may be
2039	// used to include empty fields in Patch requests.
2040	ForceSendFields []string `json:"-"`
2041
2042	// NullFields is a list of field names (e.g. "Url") to include in API
2043	// requests with the JSON null value. By default, fields with empty
2044	// values are omitted from API requests. However, any field with an
2045	// empty value appearing in NullFields will be sent to the server as
2046	// null. It is an error if a field in this list has a non-empty value.
2047	// This may be used to include null fields in Patch requests.
2048	NullFields []string `json:"-"`
2049}
2050
2051func (s *MediaAuthorImage) MarshalJSON() ([]byte, error) {
2052	type NoMethod MediaAuthorImage
2053	raw := NoMethod(*s)
2054	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2055}
2056
2057// MediaExif: Exif information of the media item.
2058type MediaExif struct {
2059	// Time: The time the media was captured. Formatted as an RFC 3339
2060	// timestamp.
2061	Time string `json:"time,omitempty"`
2062
2063	// ForceSendFields is a list of field names (e.g. "Time") to
2064	// unconditionally include in API requests. By default, fields with
2065	// empty values are omitted from API requests. However, any non-pointer,
2066	// non-interface field appearing in ForceSendFields will be sent to the
2067	// server regardless of whether the field is empty or not. This may be
2068	// used to include empty fields in Patch requests.
2069	ForceSendFields []string `json:"-"`
2070
2071	// NullFields is a list of field names (e.g. "Time") to include in API
2072	// requests with the JSON null value. By default, fields with empty
2073	// values are omitted from API requests. However, any field with an
2074	// empty value appearing in NullFields will be sent to the server as
2075	// null. It is an error if a field in this list has a non-empty value.
2076	// This may be used to include null fields in Patch requests.
2077	NullFields []string `json:"-"`
2078}
2079
2080func (s *MediaExif) MarshalJSON() ([]byte, error) {
2081	type NoMethod MediaExif
2082	raw := NoMethod(*s)
2083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2084}
2085
2086type PeopleFeed struct {
2087	// Etag: ETag of this response for caching purposes.
2088	Etag string `json:"etag,omitempty"`
2089
2090	// Items: The people in this page of results. Each item includes the id,
2091	// displayName, image, and url for the person. To retrieve additional
2092	// profile data, see the people.get method.
2093	Items []*Person `json:"items,omitempty"`
2094
2095	// Kind: Identifies this resource as a collection of people. Value:
2096	// "plus#peopleFeed".
2097	Kind string `json:"kind,omitempty"`
2098
2099	// NextPageToken: The continuation token, which is used to page through
2100	// large result sets. Provide this value in a subsequent request to
2101	// return the next page of results.
2102	NextPageToken string `json:"nextPageToken,omitempty"`
2103
2104	// SelfLink: Link to this resource.
2105	SelfLink string `json:"selfLink,omitempty"`
2106
2107	// Title: The title of this collection of people.
2108	Title string `json:"title,omitempty"`
2109
2110	// TotalItems: The total number of people available in this list. The
2111	// number of people in a response might be smaller due to paging. This
2112	// might not be set for all collections.
2113	TotalItems int64 `json:"totalItems,omitempty"`
2114
2115	// ServerResponse contains the HTTP response code and headers from the
2116	// server.
2117	googleapi.ServerResponse `json:"-"`
2118
2119	// ForceSendFields is a list of field names (e.g. "Etag") to
2120	// unconditionally include in API requests. By default, fields with
2121	// empty values are omitted from API requests. However, any non-pointer,
2122	// non-interface field appearing in ForceSendFields will be sent to the
2123	// server regardless of whether the field is empty or not. This may be
2124	// used to include empty fields in Patch requests.
2125	ForceSendFields []string `json:"-"`
2126
2127	// NullFields is a list of field names (e.g. "Etag") to include in API
2128	// requests with the JSON null value. By default, fields with empty
2129	// values are omitted from API requests. However, any field with an
2130	// empty value appearing in NullFields will be sent to the server as
2131	// null. It is an error if a field in this list has a non-empty value.
2132	// This may be used to include null fields in Patch requests.
2133	NullFields []string `json:"-"`
2134}
2135
2136func (s *PeopleFeed) MarshalJSON() ([]byte, error) {
2137	type NoMethod PeopleFeed
2138	raw := NoMethod(*s)
2139	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2140}
2141
2142type Person struct {
2143	// AboutMe: A short biography for this person.
2144	AboutMe string `json:"aboutMe,omitempty"`
2145
2146	// Birthday: The person's date of birth, represented as YYYY-MM-DD.
2147	Birthday string `json:"birthday,omitempty"`
2148
2149	// BraggingRights: The "bragging rights" line of this person.
2150	BraggingRights string `json:"braggingRights,omitempty"`
2151
2152	// CircledByCount: For followers who are visible, the number of people
2153	// who have added this person or page to a circle.
2154	CircledByCount int64 `json:"circledByCount,omitempty"`
2155
2156	// Cover: The cover photo content.
2157	Cover *PersonCover `json:"cover,omitempty"`
2158
2159	// CurrentLocation: (this field is not currently used)
2160	CurrentLocation string `json:"currentLocation,omitempty"`
2161
2162	// DisplayName: The name of this person, which is suitable for display.
2163	DisplayName string `json:"displayName,omitempty"`
2164
2165	// Domain: The hosted domain name for the user's Google Apps account.
2166	// For instance, example.com. The plus.profile.emails.read or email
2167	// scope is needed to get this domain name.
2168	Domain string `json:"domain,omitempty"`
2169
2170	// Emails: A list of email addresses that this person has, including
2171	// their Google account email address, and the public verified email
2172	// addresses on their Google+ profile. The plus.profile.emails.read
2173	// scope is needed to retrieve these email addresses, or the email scope
2174	// can be used to retrieve just the Google account email address.
2175	Emails []*PersonEmails `json:"emails,omitempty"`
2176
2177	// Etag: ETag of this response for caching purposes.
2178	Etag string `json:"etag,omitempty"`
2179
2180	// Gender: The person's gender. Possible values include, but are not
2181	// limited to, the following values:
2182	// - "male" - Male gender.
2183	// - "female" - Female gender.
2184	// - "other" - Other.
2185	Gender string `json:"gender,omitempty"`
2186
2187	// Id: The ID of this person.
2188	Id string `json:"id,omitempty"`
2189
2190	// Image: The representation of the person's profile photo.
2191	Image *PersonImage `json:"image,omitempty"`
2192
2193	// IsPlusUser: Whether this user has signed up for Google+.
2194	IsPlusUser bool `json:"isPlusUser,omitempty"`
2195
2196	// Kind: Identifies this resource as a person. Value: "plus#person".
2197	Kind string `json:"kind,omitempty"`
2198
2199	// Name: An object representation of the individual components of a
2200	// person's name.
2201	Name *PersonName `json:"name,omitempty"`
2202
2203	// Nickname: The nickname of this person.
2204	Nickname string `json:"nickname,omitempty"`
2205
2206	// ObjectType: Type of person within Google+. Possible values include,
2207	// but are not limited to, the following values:
2208	// - "person" - represents an actual person.
2209	// - "page" - represents a page.
2210	ObjectType string `json:"objectType,omitempty"`
2211
2212	// Occupation: The occupation of this person.
2213	Occupation string `json:"occupation,omitempty"`
2214
2215	// Organizations: A list of current or past organizations with which
2216	// this person is associated.
2217	Organizations []*PersonOrganizations `json:"organizations,omitempty"`
2218
2219	// PlacesLived: A list of places where this person has lived.
2220	PlacesLived []*PersonPlacesLived `json:"placesLived,omitempty"`
2221
2222	// PlusOneCount: If a Google+ Page, the number of people who have +1'd
2223	// this page.
2224	PlusOneCount int64 `json:"plusOneCount,omitempty"`
2225
2226	// RelationshipStatus: The person's relationship status. Possible values
2227	// include, but are not limited to, the following values:
2228	// - "single" - Person is single.
2229	// - "in_a_relationship" - Person is in a relationship.
2230	// - "engaged" - Person is engaged.
2231	// - "married" - Person is married.
2232	// - "its_complicated" - The relationship is complicated.
2233	// - "open_relationship" - Person is in an open relationship.
2234	// - "widowed" - Person is widowed.
2235	// - "in_domestic_partnership" - Person is in a domestic partnership.
2236	// - "in_civil_union" - Person is in a civil union.
2237	RelationshipStatus string `json:"relationshipStatus,omitempty"`
2238
2239	// Skills: The person's skills.
2240	Skills string `json:"skills,omitempty"`
2241
2242	// Tagline: The brief description (tagline) of this person.
2243	Tagline string `json:"tagline,omitempty"`
2244
2245	// Url: The URL of this person's profile.
2246	Url string `json:"url,omitempty"`
2247
2248	// Urls: A list of URLs for this person.
2249	Urls []*PersonUrls `json:"urls,omitempty"`
2250
2251	// Verified: Whether the person or Google+ Page has been verified.
2252	Verified bool `json:"verified,omitempty"`
2253
2254	// ServerResponse contains the HTTP response code and headers from the
2255	// server.
2256	googleapi.ServerResponse `json:"-"`
2257
2258	// ForceSendFields is a list of field names (e.g. "AboutMe") to
2259	// unconditionally include in API requests. By default, fields with
2260	// empty values are omitted from API requests. However, any non-pointer,
2261	// non-interface field appearing in ForceSendFields will be sent to the
2262	// server regardless of whether the field is empty or not. This may be
2263	// used to include empty fields in Patch requests.
2264	ForceSendFields []string `json:"-"`
2265
2266	// NullFields is a list of field names (e.g. "AboutMe") to include in
2267	// API requests with the JSON null value. By default, fields with empty
2268	// values are omitted from API requests. However, any field with an
2269	// empty value appearing in NullFields will be sent to the server as
2270	// null. It is an error if a field in this list has a non-empty value.
2271	// This may be used to include null fields in Patch requests.
2272	NullFields []string `json:"-"`
2273}
2274
2275func (s *Person) MarshalJSON() ([]byte, error) {
2276	type NoMethod Person
2277	raw := NoMethod(*s)
2278	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2279}
2280
2281// PersonCover: The cover photo content.
2282type PersonCover struct {
2283	// CoverInfo: Extra information about the cover photo.
2284	CoverInfo *PersonCoverCoverInfo `json:"coverInfo,omitempty"`
2285
2286	// CoverPhoto: The person's primary cover image.
2287	CoverPhoto *PersonCoverCoverPhoto `json:"coverPhoto,omitempty"`
2288
2289	// Layout: The layout of the cover art. Possible values include, but are
2290	// not limited to, the following values:
2291	// - "banner" - One large image banner.
2292	Layout string `json:"layout,omitempty"`
2293
2294	// ForceSendFields is a list of field names (e.g. "CoverInfo") to
2295	// unconditionally include in API requests. By default, fields with
2296	// empty values are omitted from API requests. However, any non-pointer,
2297	// non-interface field appearing in ForceSendFields will be sent to the
2298	// server regardless of whether the field is empty or not. This may be
2299	// used to include empty fields in Patch requests.
2300	ForceSendFields []string `json:"-"`
2301
2302	// NullFields is a list of field names (e.g. "CoverInfo") to include in
2303	// API requests with the JSON null value. By default, fields with empty
2304	// values are omitted from API requests. However, any field with an
2305	// empty value appearing in NullFields will be sent to the server as
2306	// null. It is an error if a field in this list has a non-empty value.
2307	// This may be used to include null fields in Patch requests.
2308	NullFields []string `json:"-"`
2309}
2310
2311func (s *PersonCover) MarshalJSON() ([]byte, error) {
2312	type NoMethod PersonCover
2313	raw := NoMethod(*s)
2314	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2315}
2316
2317// PersonCoverCoverInfo: Extra information about the cover photo.
2318type PersonCoverCoverInfo struct {
2319	// LeftImageOffset: The difference between the left position of the
2320	// cover image and the actual displayed cover image. Only valid for
2321	// banner layout.
2322	LeftImageOffset int64 `json:"leftImageOffset,omitempty"`
2323
2324	// TopImageOffset: The difference between the top position of the cover
2325	// image and the actual displayed cover image. Only valid for banner
2326	// layout.
2327	TopImageOffset int64 `json:"topImageOffset,omitempty"`
2328
2329	// ForceSendFields is a list of field names (e.g. "LeftImageOffset") to
2330	// unconditionally include in API requests. By default, fields with
2331	// empty values are omitted from API requests. However, any non-pointer,
2332	// non-interface field appearing in ForceSendFields will be sent to the
2333	// server regardless of whether the field is empty or not. This may be
2334	// used to include empty fields in Patch requests.
2335	ForceSendFields []string `json:"-"`
2336
2337	// NullFields is a list of field names (e.g. "LeftImageOffset") to
2338	// include in API requests with the JSON null value. By default, fields
2339	// with empty values are omitted from API requests. However, any field
2340	// with an empty value appearing in NullFields will be sent to the
2341	// server as null. It is an error if a field in this list has a
2342	// non-empty value. This may be used to include null fields in Patch
2343	// requests.
2344	NullFields []string `json:"-"`
2345}
2346
2347func (s *PersonCoverCoverInfo) MarshalJSON() ([]byte, error) {
2348	type NoMethod PersonCoverCoverInfo
2349	raw := NoMethod(*s)
2350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2351}
2352
2353// PersonCoverCoverPhoto: The person's primary cover image.
2354type PersonCoverCoverPhoto struct {
2355	// Height: The height of the image.
2356	Height int64 `json:"height,omitempty"`
2357
2358	// Url: The URL of the image.
2359	Url string `json:"url,omitempty"`
2360
2361	// Width: The width of the image.
2362	Width int64 `json:"width,omitempty"`
2363
2364	// ForceSendFields is a list of field names (e.g. "Height") to
2365	// unconditionally include in API requests. By default, fields with
2366	// empty values are omitted from API requests. However, any non-pointer,
2367	// non-interface field appearing in ForceSendFields will be sent to the
2368	// server regardless of whether the field is empty or not. This may be
2369	// used to include empty fields in Patch requests.
2370	ForceSendFields []string `json:"-"`
2371
2372	// NullFields is a list of field names (e.g. "Height") to include in API
2373	// requests with the JSON null value. By default, fields with empty
2374	// values are omitted from API requests. However, any field with an
2375	// empty value appearing in NullFields will be sent to the server as
2376	// null. It is an error if a field in this list has a non-empty value.
2377	// This may be used to include null fields in Patch requests.
2378	NullFields []string `json:"-"`
2379}
2380
2381func (s *PersonCoverCoverPhoto) MarshalJSON() ([]byte, error) {
2382	type NoMethod PersonCoverCoverPhoto
2383	raw := NoMethod(*s)
2384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2385}
2386
2387type PersonEmails struct {
2388	// Type: The type of address. Possible values include, but are not
2389	// limited to, the following values:
2390	// - "account" - Google account email address.
2391	// - "home" - Home email address.
2392	// - "work" - Work email address.
2393	// - "other" - Other.
2394	Type string `json:"type,omitempty"`
2395
2396	// Value: The email address.
2397	Value string `json:"value,omitempty"`
2398
2399	// ForceSendFields is a list of field names (e.g. "Type") to
2400	// unconditionally include in API requests. By default, fields with
2401	// empty values are omitted from API requests. However, any non-pointer,
2402	// non-interface field appearing in ForceSendFields will be sent to the
2403	// server regardless of whether the field is empty or not. This may be
2404	// used to include empty fields in Patch requests.
2405	ForceSendFields []string `json:"-"`
2406
2407	// NullFields is a list of field names (e.g. "Type") to include in API
2408	// requests with the JSON null value. By default, fields with empty
2409	// values are omitted from API requests. However, any field with an
2410	// empty value appearing in NullFields will be sent to the server as
2411	// null. It is an error if a field in this list has a non-empty value.
2412	// This may be used to include null fields in Patch requests.
2413	NullFields []string `json:"-"`
2414}
2415
2416func (s *PersonEmails) MarshalJSON() ([]byte, error) {
2417	type NoMethod PersonEmails
2418	raw := NoMethod(*s)
2419	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2420}
2421
2422// PersonImage: The representation of the person's profile photo.
2423type PersonImage struct {
2424	// IsDefault: Whether the person's profile photo is the default one
2425	IsDefault bool `json:"isDefault,omitempty"`
2426
2427	// Url: The URL of the person's profile photo. To resize the image and
2428	// crop it to a square, append the query string ?sz=x, where x is the
2429	// dimension in pixels of each side.
2430	Url string `json:"url,omitempty"`
2431
2432	// ForceSendFields is a list of field names (e.g. "IsDefault") to
2433	// unconditionally include in API requests. By default, fields with
2434	// empty values are omitted from API requests. However, any non-pointer,
2435	// non-interface field appearing in ForceSendFields will be sent to the
2436	// server regardless of whether the field is empty or not. This may be
2437	// used to include empty fields in Patch requests.
2438	ForceSendFields []string `json:"-"`
2439
2440	// NullFields is a list of field names (e.g. "IsDefault") to include in
2441	// API requests with the JSON null value. By default, fields with empty
2442	// values are omitted from API requests. However, any field with an
2443	// empty value appearing in NullFields will be sent to the server as
2444	// null. It is an error if a field in this list has a non-empty value.
2445	// This may be used to include null fields in Patch requests.
2446	NullFields []string `json:"-"`
2447}
2448
2449func (s *PersonImage) MarshalJSON() ([]byte, error) {
2450	type NoMethod PersonImage
2451	raw := NoMethod(*s)
2452	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2453}
2454
2455// PersonName: An object representation of the individual components of
2456// a person's name.
2457type PersonName struct {
2458	// FamilyName: The family name (last name) of this person.
2459	FamilyName string `json:"familyName,omitempty"`
2460
2461	// Formatted: The full name of this person, including middle names,
2462	// suffixes, etc.
2463	Formatted string `json:"formatted,omitempty"`
2464
2465	// GivenName: The given name (first name) of this person.
2466	GivenName string `json:"givenName,omitempty"`
2467
2468	// HonorificPrefix: The honorific prefixes (such as "Dr." or "Mrs.") for
2469	// this person.
2470	HonorificPrefix string `json:"honorificPrefix,omitempty"`
2471
2472	// HonorificSuffix: The honorific suffixes (such as "Jr.") for this
2473	// person.
2474	HonorificSuffix string `json:"honorificSuffix,omitempty"`
2475
2476	// MiddleName: The middle name of this person.
2477	MiddleName string `json:"middleName,omitempty"`
2478
2479	// ForceSendFields is a list of field names (e.g. "FamilyName") to
2480	// unconditionally include in API requests. By default, fields with
2481	// empty values are omitted from API requests. However, any non-pointer,
2482	// non-interface field appearing in ForceSendFields will be sent to the
2483	// server regardless of whether the field is empty or not. This may be
2484	// used to include empty fields in Patch requests.
2485	ForceSendFields []string `json:"-"`
2486
2487	// NullFields is a list of field names (e.g. "FamilyName") to include in
2488	// API requests with the JSON null value. By default, fields with empty
2489	// values are omitted from API requests. However, any field with an
2490	// empty value appearing in NullFields will be sent to the server as
2491	// null. It is an error if a field in this list has a non-empty value.
2492	// This may be used to include null fields in Patch requests.
2493	NullFields []string `json:"-"`
2494}
2495
2496func (s *PersonName) MarshalJSON() ([]byte, error) {
2497	type NoMethod PersonName
2498	raw := NoMethod(*s)
2499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2500}
2501
2502type PersonOrganizations struct {
2503	// Department: The department within the organization. Deprecated.
2504	Department string `json:"department,omitempty"`
2505
2506	// Description: A short description of the person's role in this
2507	// organization. Deprecated.
2508	Description string `json:"description,omitempty"`
2509
2510	// EndDate: The date that the person left this organization.
2511	EndDate string `json:"endDate,omitempty"`
2512
2513	// Location: The location of this organization. Deprecated.
2514	Location string `json:"location,omitempty"`
2515
2516	// Name: The name of the organization.
2517	Name string `json:"name,omitempty"`
2518
2519	// Primary: If "true", indicates this organization is the person's
2520	// primary one, which is typically interpreted as the current one.
2521	Primary bool `json:"primary,omitempty"`
2522
2523	// StartDate: The date that the person joined this organization.
2524	StartDate string `json:"startDate,omitempty"`
2525
2526	// Title: The person's job title or role within the organization.
2527	Title string `json:"title,omitempty"`
2528
2529	// Type: The type of organization. Possible values include, but are not
2530	// limited to, the following values:
2531	// - "work" - Work.
2532	// - "school" - School.
2533	Type string `json:"type,omitempty"`
2534
2535	// ForceSendFields is a list of field names (e.g. "Department") to
2536	// unconditionally include in API requests. By default, fields with
2537	// empty values are omitted from API requests. However, any non-pointer,
2538	// non-interface field appearing in ForceSendFields will be sent to the
2539	// server regardless of whether the field is empty or not. This may be
2540	// used to include empty fields in Patch requests.
2541	ForceSendFields []string `json:"-"`
2542
2543	// NullFields is a list of field names (e.g. "Department") to include in
2544	// API requests with the JSON null value. By default, fields with empty
2545	// values are omitted from API requests. However, any field with an
2546	// empty value appearing in NullFields will be sent to the server as
2547	// null. It is an error if a field in this list has a non-empty value.
2548	// This may be used to include null fields in Patch requests.
2549	NullFields []string `json:"-"`
2550}
2551
2552func (s *PersonOrganizations) MarshalJSON() ([]byte, error) {
2553	type NoMethod PersonOrganizations
2554	raw := NoMethod(*s)
2555	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2556}
2557
2558type PersonPlacesLived struct {
2559	// Primary: If "true", this place of residence is this person's primary
2560	// residence.
2561	Primary bool `json:"primary,omitempty"`
2562
2563	// Value: A place where this person has lived. For example: "Seattle,
2564	// WA", "Near Toronto".
2565	Value string `json:"value,omitempty"`
2566
2567	// ForceSendFields is a list of field names (e.g. "Primary") to
2568	// unconditionally include in API requests. By default, fields with
2569	// empty values are omitted from API requests. However, any non-pointer,
2570	// non-interface field appearing in ForceSendFields will be sent to the
2571	// server regardless of whether the field is empty or not. This may be
2572	// used to include empty fields in Patch requests.
2573	ForceSendFields []string `json:"-"`
2574
2575	// NullFields is a list of field names (e.g. "Primary") to include in
2576	// API requests with the JSON null value. By default, fields with empty
2577	// values are omitted from API requests. However, any field with an
2578	// empty value appearing in NullFields will be sent to the server as
2579	// null. It is an error if a field in this list has a non-empty value.
2580	// This may be used to include null fields in Patch requests.
2581	NullFields []string `json:"-"`
2582}
2583
2584func (s *PersonPlacesLived) MarshalJSON() ([]byte, error) {
2585	type NoMethod PersonPlacesLived
2586	raw := NoMethod(*s)
2587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2588}
2589
2590type PersonUrls struct {
2591	// Label: The label of the URL.
2592	Label string `json:"label,omitempty"`
2593
2594	// Type: The type of URL. Possible values include, but are not limited
2595	// to, the following values:
2596	// - "otherProfile" - URL for another profile.
2597	// - "contributor" - URL to a site for which this person is a
2598	// contributor.
2599	// - "website" - URL for this Google+ Page's primary website.
2600	// - "other" - Other URL.
2601	Type string `json:"type,omitempty"`
2602
2603	// Value: The URL value.
2604	Value string `json:"value,omitempty"`
2605
2606	// ForceSendFields is a list of field names (e.g. "Label") to
2607	// unconditionally include in API requests. By default, fields with
2608	// empty values are omitted from API requests. However, any non-pointer,
2609	// non-interface field appearing in ForceSendFields will be sent to the
2610	// server regardless of whether the field is empty or not. This may be
2611	// used to include empty fields in Patch requests.
2612	ForceSendFields []string `json:"-"`
2613
2614	// NullFields is a list of field names (e.g. "Label") to include in API
2615	// requests with the JSON null value. By default, fields with empty
2616	// values are omitted from API requests. However, any field with an
2617	// empty value appearing in NullFields will be sent to the server as
2618	// null. It is an error if a field in this list has a non-empty value.
2619	// This may be used to include null fields in Patch requests.
2620	NullFields []string `json:"-"`
2621}
2622
2623func (s *PersonUrls) MarshalJSON() ([]byte, error) {
2624	type NoMethod PersonUrls
2625	raw := NoMethod(*s)
2626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2627}
2628
2629type Place struct {
2630	// Address: The physical address of the place.
2631	Address *PlaceAddress `json:"address,omitempty"`
2632
2633	// DisplayName: The display name of the place.
2634	DisplayName string `json:"displayName,omitempty"`
2635
2636	// Id: The id of the place.
2637	Id string `json:"id,omitempty"`
2638
2639	// Kind: Identifies this resource as a place. Value: "plus#place".
2640	Kind string `json:"kind,omitempty"`
2641
2642	// Position: The position of the place.
2643	Position *PlacePosition `json:"position,omitempty"`
2644
2645	// ForceSendFields is a list of field names (e.g. "Address") to
2646	// unconditionally include in API requests. By default, fields with
2647	// empty values are omitted from API requests. However, any non-pointer,
2648	// non-interface field appearing in ForceSendFields will be sent to the
2649	// server regardless of whether the field is empty or not. This may be
2650	// used to include empty fields in Patch requests.
2651	ForceSendFields []string `json:"-"`
2652
2653	// NullFields is a list of field names (e.g. "Address") to include in
2654	// API requests with the JSON null value. By default, fields with empty
2655	// values are omitted from API requests. However, any field with an
2656	// empty value appearing in NullFields will be sent to the server as
2657	// null. It is an error if a field in this list has a non-empty value.
2658	// This may be used to include null fields in Patch requests.
2659	NullFields []string `json:"-"`
2660}
2661
2662func (s *Place) MarshalJSON() ([]byte, error) {
2663	type NoMethod Place
2664	raw := NoMethod(*s)
2665	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2666}
2667
2668// PlaceAddress: The physical address of the place.
2669type PlaceAddress struct {
2670	// Formatted: The formatted address for display.
2671	Formatted string `json:"formatted,omitempty"`
2672
2673	// ForceSendFields is a list of field names (e.g. "Formatted") to
2674	// unconditionally include in API requests. By default, fields with
2675	// empty values are omitted from API requests. However, any non-pointer,
2676	// non-interface field appearing in ForceSendFields will be sent to the
2677	// server regardless of whether the field is empty or not. This may be
2678	// used to include empty fields in Patch requests.
2679	ForceSendFields []string `json:"-"`
2680
2681	// NullFields is a list of field names (e.g. "Formatted") to include in
2682	// API requests with the JSON null value. By default, fields with empty
2683	// values are omitted from API requests. However, any field with an
2684	// empty value appearing in NullFields will be sent to the server as
2685	// null. It is an error if a field in this list has a non-empty value.
2686	// This may be used to include null fields in Patch requests.
2687	NullFields []string `json:"-"`
2688}
2689
2690func (s *PlaceAddress) MarshalJSON() ([]byte, error) {
2691	type NoMethod PlaceAddress
2692	raw := NoMethod(*s)
2693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2694}
2695
2696// PlacePosition: The position of the place.
2697type PlacePosition struct {
2698	// Latitude: The latitude of this position.
2699	Latitude float64 `json:"latitude,omitempty"`
2700
2701	// Longitude: The longitude of this position.
2702	Longitude float64 `json:"longitude,omitempty"`
2703
2704	// ForceSendFields is a list of field names (e.g. "Latitude") to
2705	// unconditionally include in API requests. By default, fields with
2706	// empty values are omitted from API requests. However, any non-pointer,
2707	// non-interface field appearing in ForceSendFields will be sent to the
2708	// server regardless of whether the field is empty or not. This may be
2709	// used to include empty fields in Patch requests.
2710	ForceSendFields []string `json:"-"`
2711
2712	// NullFields is a list of field names (e.g. "Latitude") to include in
2713	// API requests with the JSON null value. By default, fields with empty
2714	// values are omitted from API requests. However, any field with an
2715	// empty value appearing in NullFields will be sent to the server as
2716	// null. It is an error if a field in this list has a non-empty value.
2717	// This may be used to include null fields in Patch requests.
2718	NullFields []string `json:"-"`
2719}
2720
2721func (s *PlacePosition) MarshalJSON() ([]byte, error) {
2722	type NoMethod PlacePosition
2723	raw := NoMethod(*s)
2724	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2725}
2726
2727func (s *PlacePosition) UnmarshalJSON(data []byte) error {
2728	type NoMethod PlacePosition
2729	var s1 struct {
2730		Latitude  gensupport.JSONFloat64 `json:"latitude"`
2731		Longitude gensupport.JSONFloat64 `json:"longitude"`
2732		*NoMethod
2733	}
2734	s1.NoMethod = (*NoMethod)(s)
2735	if err := json.Unmarshal(data, &s1); err != nil {
2736		return err
2737	}
2738	s.Latitude = float64(s1.Latitude)
2739	s.Longitude = float64(s1.Longitude)
2740	return nil
2741}
2742
2743type PlusDomainsAclentryResource struct {
2744	// DisplayName: A descriptive name for this entry. Suitable for display.
2745	DisplayName string `json:"displayName,omitempty"`
2746
2747	// Id: The ID of the entry. For entries of type "person" or "circle",
2748	// this is the ID of the resource. For other types, this property is not
2749	// set.
2750	Id string `json:"id,omitempty"`
2751
2752	// Type: The type of entry describing to whom access is granted.
2753	// Possible values are:
2754	// - "person" - Access to an individual.
2755	// - "circle" - Access to members of a circle.
2756	// - "myCircles" - Access to members of all the person's circles.
2757	// - "extendedCircles" - Access to members of all the person's circles,
2758	// plus all of the people in their circles.
2759	// - "domain" - Access to members of the person's Google Apps domain.
2760	// - "public" - Access to anyone on the web.
2761	Type string `json:"type,omitempty"`
2762
2763	// ForceSendFields is a list of field names (e.g. "DisplayName") to
2764	// unconditionally include in API requests. By default, fields with
2765	// empty values are omitted from API requests. However, any non-pointer,
2766	// non-interface field appearing in ForceSendFields will be sent to the
2767	// server regardless of whether the field is empty or not. This may be
2768	// used to include empty fields in Patch requests.
2769	ForceSendFields []string `json:"-"`
2770
2771	// NullFields is a list of field names (e.g. "DisplayName") to include
2772	// in API requests with the JSON null value. By default, fields with
2773	// empty values are omitted from API requests. However, any field with
2774	// an empty value appearing in NullFields will be sent to the server as
2775	// null. It is an error if a field in this list has a non-empty value.
2776	// This may be used to include null fields in Patch requests.
2777	NullFields []string `json:"-"`
2778}
2779
2780func (s *PlusDomainsAclentryResource) MarshalJSON() ([]byte, error) {
2781	type NoMethod PlusDomainsAclentryResource
2782	raw := NoMethod(*s)
2783	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2784}
2785
2786type Videostream struct {
2787	// Height: The height, in pixels, of the video resource.
2788	Height int64 `json:"height,omitempty"`
2789
2790	// Type: MIME type of the video stream.
2791	Type string `json:"type,omitempty"`
2792
2793	// Url: URL of the video stream.
2794	Url string `json:"url,omitempty"`
2795
2796	// Width: The width, in pixels, of the video resource.
2797	Width int64 `json:"width,omitempty"`
2798
2799	// ForceSendFields is a list of field names (e.g. "Height") to
2800	// unconditionally include in API requests. By default, fields with
2801	// empty values are omitted from API requests. However, any non-pointer,
2802	// non-interface field appearing in ForceSendFields will be sent to the
2803	// server regardless of whether the field is empty or not. This may be
2804	// used to include empty fields in Patch requests.
2805	ForceSendFields []string `json:"-"`
2806
2807	// NullFields is a list of field names (e.g. "Height") to include in API
2808	// requests with the JSON null value. By default, fields with empty
2809	// values are omitted from API requests. However, any field with an
2810	// empty value appearing in NullFields will be sent to the server as
2811	// null. It is an error if a field in this list has a non-empty value.
2812	// This may be used to include null fields in Patch requests.
2813	NullFields []string `json:"-"`
2814}
2815
2816func (s *Videostream) MarshalJSON() ([]byte, error) {
2817	type NoMethod Videostream
2818	raw := NoMethod(*s)
2819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2820}
2821
2822// method id "plusDomains.activities.get":
2823
2824type ActivitiesGetCall struct {
2825	s            *Service
2826	activityId   string
2827	urlParams_   gensupport.URLParams
2828	ifNoneMatch_ string
2829	ctx_         context.Context
2830	header_      http.Header
2831}
2832
2833// Get: Shut down. See https://developers.google.com/+/api-shutdown for
2834// more details.
2835func (r *ActivitiesService) Get(activityId string) *ActivitiesGetCall {
2836	c := &ActivitiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
2837	c.activityId = activityId
2838	return c
2839}
2840
2841// Fields allows partial responses to be retrieved. See
2842// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
2843// for more information.
2844func (c *ActivitiesGetCall) Fields(s ...googleapi.Field) *ActivitiesGetCall {
2845	c.urlParams_.Set("fields", googleapi.CombineFields(s))
2846	return c
2847}
2848
2849// IfNoneMatch sets the optional parameter which makes the operation
2850// fail if the object's ETag matches the given value. This is useful for
2851// getting updates only after the object has changed since the last
2852// request. Use googleapi.IsNotModified to check whether the response
2853// error from Do is the result of In-None-Match.
2854func (c *ActivitiesGetCall) IfNoneMatch(entityTag string) *ActivitiesGetCall {
2855	c.ifNoneMatch_ = entityTag
2856	return c
2857}
2858
2859// Context sets the context to be used in this call's Do method. Any
2860// pending HTTP request will be aborted if the provided context is
2861// canceled.
2862func (c *ActivitiesGetCall) Context(ctx context.Context) *ActivitiesGetCall {
2863	c.ctx_ = ctx
2864	return c
2865}
2866
2867// Header returns an http.Header that can be modified by the caller to
2868// add HTTP headers to the request.
2869func (c *ActivitiesGetCall) Header() http.Header {
2870	if c.header_ == nil {
2871		c.header_ = make(http.Header)
2872	}
2873	return c.header_
2874}
2875
2876func (c *ActivitiesGetCall) doRequest(alt string) (*http.Response, error) {
2877	reqHeaders := make(http.Header)
2878	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
2879	for k, v := range c.header_ {
2880		reqHeaders[k] = v
2881	}
2882	reqHeaders.Set("User-Agent", c.s.userAgent())
2883	if c.ifNoneMatch_ != "" {
2884		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
2885	}
2886	var body io.Reader = nil
2887	c.urlParams_.Set("alt", alt)
2888	c.urlParams_.Set("prettyPrint", "false")
2889	urls := googleapi.ResolveRelative(c.s.BasePath, "activities/{activityId}")
2890	urls += "?" + c.urlParams_.Encode()
2891	req, err := http.NewRequest("GET", urls, body)
2892	if err != nil {
2893		return nil, err
2894	}
2895	req.Header = reqHeaders
2896	googleapi.Expand(req.URL, map[string]string{
2897		"activityId": c.activityId,
2898	})
2899	return gensupport.SendRequest(c.ctx_, c.s.client, req)
2900}
2901
2902// Do executes the "plusDomains.activities.get" call.
2903// Exactly one of *Activity or error will be non-nil. Any non-2xx status
2904// code is an error. Response headers are in either
2905// *Activity.ServerResponse.Header or (if a response was returned at
2906// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
2907// to check whether the returned error was because
2908// http.StatusNotModified was returned.
2909func (c *ActivitiesGetCall) Do(opts ...googleapi.CallOption) (*Activity, error) {
2910	gensupport.SetOptions(c.urlParams_, opts...)
2911	res, err := c.doRequest("json")
2912	if res != nil && res.StatusCode == http.StatusNotModified {
2913		if res.Body != nil {
2914			res.Body.Close()
2915		}
2916		return nil, &googleapi.Error{
2917			Code:   res.StatusCode,
2918			Header: res.Header,
2919		}
2920	}
2921	if err != nil {
2922		return nil, err
2923	}
2924	defer googleapi.CloseBody(res)
2925	if err := googleapi.CheckResponse(res); err != nil {
2926		return nil, err
2927	}
2928	ret := &Activity{
2929		ServerResponse: googleapi.ServerResponse{
2930			Header:         res.Header,
2931			HTTPStatusCode: res.StatusCode,
2932		},
2933	}
2934	target := &ret
2935	if err := gensupport.DecodeResponse(target, res); err != nil {
2936		return nil, err
2937	}
2938	return ret, nil
2939	// {
2940	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
2941	//   "httpMethod": "GET",
2942	//   "id": "plusDomains.activities.get",
2943	//   "parameterOrder": [
2944	//     "activityId"
2945	//   ],
2946	//   "parameters": {
2947	//     "activityId": {
2948	//       "description": "The ID of the activity to get.",
2949	//       "location": "path",
2950	//       "required": true,
2951	//       "type": "string"
2952	//     }
2953	//   },
2954	//   "path": "activities/{activityId}",
2955	//   "response": {
2956	//     "$ref": "Activity"
2957	//   },
2958	//   "scopes": [
2959	//     "https://www.googleapis.com/auth/plus.login",
2960	//     "https://www.googleapis.com/auth/plus.me",
2961	//     "https://www.googleapis.com/auth/plus.stream.read"
2962	//   ]
2963	// }
2964
2965}
2966
2967// method id "plusDomains.activities.list":
2968
2969type ActivitiesListCall struct {
2970	s            *Service
2971	userId       string
2972	collection   string
2973	urlParams_   gensupport.URLParams
2974	ifNoneMatch_ string
2975	ctx_         context.Context
2976	header_      http.Header
2977}
2978
2979// List: Shut down. See https://developers.google.com/+/api-shutdown for
2980// more details.
2981func (r *ActivitiesService) List(userId string, collection string) *ActivitiesListCall {
2982	c := &ActivitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
2983	c.userId = userId
2984	c.collection = collection
2985	return c
2986}
2987
2988// MaxResults sets the optional parameter "maxResults": The maximum
2989// number of activities to include in the response, which is used for
2990// paging. For any response, the actual number returned might be less
2991// than the specified maxResults.
2992func (c *ActivitiesListCall) MaxResults(maxResults int64) *ActivitiesListCall {
2993	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
2994	return c
2995}
2996
2997// PageToken sets the optional parameter "pageToken": The continuation
2998// token, which is used to page through large result sets. To get the
2999// next page of results, set this parameter to the value of
3000// "nextPageToken" from the previous response.
3001func (c *ActivitiesListCall) PageToken(pageToken string) *ActivitiesListCall {
3002	c.urlParams_.Set("pageToken", pageToken)
3003	return c
3004}
3005
3006// Fields allows partial responses to be retrieved. See
3007// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3008// for more information.
3009func (c *ActivitiesListCall) Fields(s ...googleapi.Field) *ActivitiesListCall {
3010	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3011	return c
3012}
3013
3014// IfNoneMatch sets the optional parameter which makes the operation
3015// fail if the object's ETag matches the given value. This is useful for
3016// getting updates only after the object has changed since the last
3017// request. Use googleapi.IsNotModified to check whether the response
3018// error from Do is the result of In-None-Match.
3019func (c *ActivitiesListCall) IfNoneMatch(entityTag string) *ActivitiesListCall {
3020	c.ifNoneMatch_ = entityTag
3021	return c
3022}
3023
3024// Context sets the context to be used in this call's Do method. Any
3025// pending HTTP request will be aborted if the provided context is
3026// canceled.
3027func (c *ActivitiesListCall) Context(ctx context.Context) *ActivitiesListCall {
3028	c.ctx_ = ctx
3029	return c
3030}
3031
3032// Header returns an http.Header that can be modified by the caller to
3033// add HTTP headers to the request.
3034func (c *ActivitiesListCall) Header() http.Header {
3035	if c.header_ == nil {
3036		c.header_ = make(http.Header)
3037	}
3038	return c.header_
3039}
3040
3041func (c *ActivitiesListCall) doRequest(alt string) (*http.Response, error) {
3042	reqHeaders := make(http.Header)
3043	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
3044	for k, v := range c.header_ {
3045		reqHeaders[k] = v
3046	}
3047	reqHeaders.Set("User-Agent", c.s.userAgent())
3048	if c.ifNoneMatch_ != "" {
3049		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3050	}
3051	var body io.Reader = nil
3052	c.urlParams_.Set("alt", alt)
3053	c.urlParams_.Set("prettyPrint", "false")
3054	urls := googleapi.ResolveRelative(c.s.BasePath, "people/{userId}/activities/{collection}")
3055	urls += "?" + c.urlParams_.Encode()
3056	req, err := http.NewRequest("GET", urls, body)
3057	if err != nil {
3058		return nil, err
3059	}
3060	req.Header = reqHeaders
3061	googleapi.Expand(req.URL, map[string]string{
3062		"userId":     c.userId,
3063		"collection": c.collection,
3064	})
3065	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3066}
3067
3068// Do executes the "plusDomains.activities.list" call.
3069// Exactly one of *ActivityFeed or error will be non-nil. Any non-2xx
3070// status code is an error. Response headers are in either
3071// *ActivityFeed.ServerResponse.Header or (if a response was returned at
3072// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
3073// to check whether the returned error was because
3074// http.StatusNotModified was returned.
3075func (c *ActivitiesListCall) Do(opts ...googleapi.CallOption) (*ActivityFeed, error) {
3076	gensupport.SetOptions(c.urlParams_, opts...)
3077	res, err := c.doRequest("json")
3078	if res != nil && res.StatusCode == http.StatusNotModified {
3079		if res.Body != nil {
3080			res.Body.Close()
3081		}
3082		return nil, &googleapi.Error{
3083			Code:   res.StatusCode,
3084			Header: res.Header,
3085		}
3086	}
3087	if err != nil {
3088		return nil, err
3089	}
3090	defer googleapi.CloseBody(res)
3091	if err := googleapi.CheckResponse(res); err != nil {
3092		return nil, err
3093	}
3094	ret := &ActivityFeed{
3095		ServerResponse: googleapi.ServerResponse{
3096			Header:         res.Header,
3097			HTTPStatusCode: res.StatusCode,
3098		},
3099	}
3100	target := &ret
3101	if err := gensupport.DecodeResponse(target, res); err != nil {
3102		return nil, err
3103	}
3104	return ret, nil
3105	// {
3106	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
3107	//   "httpMethod": "GET",
3108	//   "id": "plusDomains.activities.list",
3109	//   "parameterOrder": [
3110	//     "userId",
3111	//     "collection"
3112	//   ],
3113	//   "parameters": {
3114	//     "collection": {
3115	//       "description": "The collection of activities to list.",
3116	//       "enum": [
3117	//         "user"
3118	//       ],
3119	//       "enumDescriptions": [
3120	//         "All activities created by the specified user that the authenticated user is authorized to view."
3121	//       ],
3122	//       "location": "path",
3123	//       "required": true,
3124	//       "type": "string"
3125	//     },
3126	//     "maxResults": {
3127	//       "default": "20",
3128	//       "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.",
3129	//       "format": "uint32",
3130	//       "location": "query",
3131	//       "maximum": "100",
3132	//       "minimum": "1",
3133	//       "type": "integer"
3134	//     },
3135	//     "pageToken": {
3136	//       "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.",
3137	//       "location": "query",
3138	//       "type": "string"
3139	//     },
3140	//     "userId": {
3141	//       "description": "The ID of the user to get activities for. The special value \"me\" can be used to indicate the authenticated user.",
3142	//       "location": "path",
3143	//       "required": true,
3144	//       "type": "string"
3145	//     }
3146	//   },
3147	//   "path": "people/{userId}/activities/{collection}",
3148	//   "response": {
3149	//     "$ref": "ActivityFeed"
3150	//   },
3151	//   "scopes": [
3152	//     "https://www.googleapis.com/auth/plus.login",
3153	//     "https://www.googleapis.com/auth/plus.me",
3154	//     "https://www.googleapis.com/auth/plus.stream.read"
3155	//   ]
3156	// }
3157
3158}
3159
3160// Pages invokes f for each page of results.
3161// A non-nil error returned from f will halt the iteration.
3162// The provided context supersedes any context provided to the Context method.
3163func (c *ActivitiesListCall) Pages(ctx context.Context, f func(*ActivityFeed) error) error {
3164	c.ctx_ = ctx
3165	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
3166	for {
3167		x, err := c.Do()
3168		if err != nil {
3169			return err
3170		}
3171		if err := f(x); err != nil {
3172			return err
3173		}
3174		if x.NextPageToken == "" {
3175			return nil
3176		}
3177		c.PageToken(x.NextPageToken)
3178	}
3179}
3180
3181// method id "plusDomains.audiences.list":
3182
3183type AudiencesListCall struct {
3184	s            *Service
3185	userId       string
3186	urlParams_   gensupport.URLParams
3187	ifNoneMatch_ string
3188	ctx_         context.Context
3189	header_      http.Header
3190}
3191
3192// List: Shut down. See https://developers.google.com/+/api-shutdown for
3193// more details.
3194func (r *AudiencesService) List(userId string) *AudiencesListCall {
3195	c := &AudiencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3196	c.userId = userId
3197	return c
3198}
3199
3200// MaxResults sets the optional parameter "maxResults": The maximum
3201// number of circles to include in the response, which is used for
3202// paging. For any response, the actual number returned might be less
3203// than the specified maxResults.
3204func (c *AudiencesListCall) MaxResults(maxResults int64) *AudiencesListCall {
3205	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
3206	return c
3207}
3208
3209// PageToken sets the optional parameter "pageToken": The continuation
3210// token, which is used to page through large result sets. To get the
3211// next page of results, set this parameter to the value of
3212// "nextPageToken" from the previous response.
3213func (c *AudiencesListCall) PageToken(pageToken string) *AudiencesListCall {
3214	c.urlParams_.Set("pageToken", pageToken)
3215	return c
3216}
3217
3218// Fields allows partial responses to be retrieved. See
3219// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3220// for more information.
3221func (c *AudiencesListCall) Fields(s ...googleapi.Field) *AudiencesListCall {
3222	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3223	return c
3224}
3225
3226// IfNoneMatch sets the optional parameter which makes the operation
3227// fail if the object's ETag matches the given value. This is useful for
3228// getting updates only after the object has changed since the last
3229// request. Use googleapi.IsNotModified to check whether the response
3230// error from Do is the result of In-None-Match.
3231func (c *AudiencesListCall) IfNoneMatch(entityTag string) *AudiencesListCall {
3232	c.ifNoneMatch_ = entityTag
3233	return c
3234}
3235
3236// Context sets the context to be used in this call's Do method. Any
3237// pending HTTP request will be aborted if the provided context is
3238// canceled.
3239func (c *AudiencesListCall) Context(ctx context.Context) *AudiencesListCall {
3240	c.ctx_ = ctx
3241	return c
3242}
3243
3244// Header returns an http.Header that can be modified by the caller to
3245// add HTTP headers to the request.
3246func (c *AudiencesListCall) Header() http.Header {
3247	if c.header_ == nil {
3248		c.header_ = make(http.Header)
3249	}
3250	return c.header_
3251}
3252
3253func (c *AudiencesListCall) doRequest(alt string) (*http.Response, error) {
3254	reqHeaders := make(http.Header)
3255	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
3256	for k, v := range c.header_ {
3257		reqHeaders[k] = v
3258	}
3259	reqHeaders.Set("User-Agent", c.s.userAgent())
3260	if c.ifNoneMatch_ != "" {
3261		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3262	}
3263	var body io.Reader = nil
3264	c.urlParams_.Set("alt", alt)
3265	c.urlParams_.Set("prettyPrint", "false")
3266	urls := googleapi.ResolveRelative(c.s.BasePath, "people/{userId}/audiences")
3267	urls += "?" + c.urlParams_.Encode()
3268	req, err := http.NewRequest("GET", urls, body)
3269	if err != nil {
3270		return nil, err
3271	}
3272	req.Header = reqHeaders
3273	googleapi.Expand(req.URL, map[string]string{
3274		"userId": c.userId,
3275	})
3276	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3277}
3278
3279// Do executes the "plusDomains.audiences.list" call.
3280// Exactly one of *AudiencesFeed or error will be non-nil. Any non-2xx
3281// status code is an error. Response headers are in either
3282// *AudiencesFeed.ServerResponse.Header or (if a response was returned
3283// at all) in error.(*googleapi.Error).Header. Use
3284// googleapi.IsNotModified to check whether the returned error was
3285// because http.StatusNotModified was returned.
3286func (c *AudiencesListCall) Do(opts ...googleapi.CallOption) (*AudiencesFeed, error) {
3287	gensupport.SetOptions(c.urlParams_, opts...)
3288	res, err := c.doRequest("json")
3289	if res != nil && res.StatusCode == http.StatusNotModified {
3290		if res.Body != nil {
3291			res.Body.Close()
3292		}
3293		return nil, &googleapi.Error{
3294			Code:   res.StatusCode,
3295			Header: res.Header,
3296		}
3297	}
3298	if err != nil {
3299		return nil, err
3300	}
3301	defer googleapi.CloseBody(res)
3302	if err := googleapi.CheckResponse(res); err != nil {
3303		return nil, err
3304	}
3305	ret := &AudiencesFeed{
3306		ServerResponse: googleapi.ServerResponse{
3307			Header:         res.Header,
3308			HTTPStatusCode: res.StatusCode,
3309		},
3310	}
3311	target := &ret
3312	if err := gensupport.DecodeResponse(target, res); err != nil {
3313		return nil, err
3314	}
3315	return ret, nil
3316	// {
3317	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
3318	//   "httpMethod": "GET",
3319	//   "id": "plusDomains.audiences.list",
3320	//   "parameterOrder": [
3321	//     "userId"
3322	//   ],
3323	//   "parameters": {
3324	//     "maxResults": {
3325	//       "default": "20",
3326	//       "description": "The maximum number of circles to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.",
3327	//       "format": "uint32",
3328	//       "location": "query",
3329	//       "maximum": "100",
3330	//       "minimum": "1",
3331	//       "type": "integer"
3332	//     },
3333	//     "pageToken": {
3334	//       "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.",
3335	//       "location": "query",
3336	//       "type": "string"
3337	//     },
3338	//     "userId": {
3339	//       "description": "The ID of the user to get audiences for. The special value \"me\" can be used to indicate the authenticated user.",
3340	//       "location": "path",
3341	//       "required": true,
3342	//       "type": "string"
3343	//     }
3344	//   },
3345	//   "path": "people/{userId}/audiences",
3346	//   "response": {
3347	//     "$ref": "AudiencesFeed"
3348	//   },
3349	//   "scopes": [
3350	//     "https://www.googleapis.com/auth/plus.circles.read",
3351	//     "https://www.googleapis.com/auth/plus.login",
3352	//     "https://www.googleapis.com/auth/plus.me"
3353	//   ]
3354	// }
3355
3356}
3357
3358// Pages invokes f for each page of results.
3359// A non-nil error returned from f will halt the iteration.
3360// The provided context supersedes any context provided to the Context method.
3361func (c *AudiencesListCall) Pages(ctx context.Context, f func(*AudiencesFeed) error) error {
3362	c.ctx_ = ctx
3363	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
3364	for {
3365		x, err := c.Do()
3366		if err != nil {
3367			return err
3368		}
3369		if err := f(x); err != nil {
3370			return err
3371		}
3372		if x.NextPageToken == "" {
3373			return nil
3374		}
3375		c.PageToken(x.NextPageToken)
3376	}
3377}
3378
3379// method id "plusDomains.circles.list":
3380
3381type CirclesListCall struct {
3382	s            *Service
3383	userId       string
3384	urlParams_   gensupport.URLParams
3385	ifNoneMatch_ string
3386	ctx_         context.Context
3387	header_      http.Header
3388}
3389
3390// List: Shut down. See https://developers.google.com/+/api-shutdown for
3391// more details.
3392func (r *CirclesService) List(userId string) *CirclesListCall {
3393	c := &CirclesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3394	c.userId = userId
3395	return c
3396}
3397
3398// MaxResults sets the optional parameter "maxResults": The maximum
3399// number of circles to include in the response, which is used for
3400// paging. For any response, the actual number returned might be less
3401// than the specified maxResults.
3402func (c *CirclesListCall) MaxResults(maxResults int64) *CirclesListCall {
3403	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
3404	return c
3405}
3406
3407// PageToken sets the optional parameter "pageToken": The continuation
3408// token, which is used to page through large result sets. To get the
3409// next page of results, set this parameter to the value of
3410// "nextPageToken" from the previous response.
3411func (c *CirclesListCall) PageToken(pageToken string) *CirclesListCall {
3412	c.urlParams_.Set("pageToken", pageToken)
3413	return c
3414}
3415
3416// Fields allows partial responses to be retrieved. See
3417// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3418// for more information.
3419func (c *CirclesListCall) Fields(s ...googleapi.Field) *CirclesListCall {
3420	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3421	return c
3422}
3423
3424// IfNoneMatch sets the optional parameter which makes the operation
3425// fail if the object's ETag matches the given value. This is useful for
3426// getting updates only after the object has changed since the last
3427// request. Use googleapi.IsNotModified to check whether the response
3428// error from Do is the result of In-None-Match.
3429func (c *CirclesListCall) IfNoneMatch(entityTag string) *CirclesListCall {
3430	c.ifNoneMatch_ = entityTag
3431	return c
3432}
3433
3434// Context sets the context to be used in this call's Do method. Any
3435// pending HTTP request will be aborted if the provided context is
3436// canceled.
3437func (c *CirclesListCall) Context(ctx context.Context) *CirclesListCall {
3438	c.ctx_ = ctx
3439	return c
3440}
3441
3442// Header returns an http.Header that can be modified by the caller to
3443// add HTTP headers to the request.
3444func (c *CirclesListCall) Header() http.Header {
3445	if c.header_ == nil {
3446		c.header_ = make(http.Header)
3447	}
3448	return c.header_
3449}
3450
3451func (c *CirclesListCall) doRequest(alt string) (*http.Response, error) {
3452	reqHeaders := make(http.Header)
3453	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
3454	for k, v := range c.header_ {
3455		reqHeaders[k] = v
3456	}
3457	reqHeaders.Set("User-Agent", c.s.userAgent())
3458	if c.ifNoneMatch_ != "" {
3459		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3460	}
3461	var body io.Reader = nil
3462	c.urlParams_.Set("alt", alt)
3463	c.urlParams_.Set("prettyPrint", "false")
3464	urls := googleapi.ResolveRelative(c.s.BasePath, "people/{userId}/circles")
3465	urls += "?" + c.urlParams_.Encode()
3466	req, err := http.NewRequest("GET", urls, body)
3467	if err != nil {
3468		return nil, err
3469	}
3470	req.Header = reqHeaders
3471	googleapi.Expand(req.URL, map[string]string{
3472		"userId": c.userId,
3473	})
3474	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3475}
3476
3477// Do executes the "plusDomains.circles.list" call.
3478// Exactly one of *CircleFeed or error will be non-nil. Any non-2xx
3479// status code is an error. Response headers are in either
3480// *CircleFeed.ServerResponse.Header or (if a response was returned at
3481// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
3482// to check whether the returned error was because
3483// http.StatusNotModified was returned.
3484func (c *CirclesListCall) Do(opts ...googleapi.CallOption) (*CircleFeed, error) {
3485	gensupport.SetOptions(c.urlParams_, opts...)
3486	res, err := c.doRequest("json")
3487	if res != nil && res.StatusCode == http.StatusNotModified {
3488		if res.Body != nil {
3489			res.Body.Close()
3490		}
3491		return nil, &googleapi.Error{
3492			Code:   res.StatusCode,
3493			Header: res.Header,
3494		}
3495	}
3496	if err != nil {
3497		return nil, err
3498	}
3499	defer googleapi.CloseBody(res)
3500	if err := googleapi.CheckResponse(res); err != nil {
3501		return nil, err
3502	}
3503	ret := &CircleFeed{
3504		ServerResponse: googleapi.ServerResponse{
3505			Header:         res.Header,
3506			HTTPStatusCode: res.StatusCode,
3507		},
3508	}
3509	target := &ret
3510	if err := gensupport.DecodeResponse(target, res); err != nil {
3511		return nil, err
3512	}
3513	return ret, nil
3514	// {
3515	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
3516	//   "httpMethod": "GET",
3517	//   "id": "plusDomains.circles.list",
3518	//   "parameterOrder": [
3519	//     "userId"
3520	//   ],
3521	//   "parameters": {
3522	//     "maxResults": {
3523	//       "default": "20",
3524	//       "description": "The maximum number of circles to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.",
3525	//       "format": "uint32",
3526	//       "location": "query",
3527	//       "maximum": "100",
3528	//       "minimum": "1",
3529	//       "type": "integer"
3530	//     },
3531	//     "pageToken": {
3532	//       "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.",
3533	//       "location": "query",
3534	//       "type": "string"
3535	//     },
3536	//     "userId": {
3537	//       "description": "The ID of the user to get circles for. The special value \"me\" can be used to indicate the authenticated user.",
3538	//       "location": "path",
3539	//       "required": true,
3540	//       "type": "string"
3541	//     }
3542	//   },
3543	//   "path": "people/{userId}/circles",
3544	//   "response": {
3545	//     "$ref": "CircleFeed"
3546	//   },
3547	//   "scopes": [
3548	//     "https://www.googleapis.com/auth/plus.circles.read",
3549	//     "https://www.googleapis.com/auth/plus.login",
3550	//     "https://www.googleapis.com/auth/plus.me"
3551	//   ]
3552	// }
3553
3554}
3555
3556// Pages invokes f for each page of results.
3557// A non-nil error returned from f will halt the iteration.
3558// The provided context supersedes any context provided to the Context method.
3559func (c *CirclesListCall) Pages(ctx context.Context, f func(*CircleFeed) error) error {
3560	c.ctx_ = ctx
3561	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
3562	for {
3563		x, err := c.Do()
3564		if err != nil {
3565			return err
3566		}
3567		if err := f(x); err != nil {
3568			return err
3569		}
3570		if x.NextPageToken == "" {
3571			return nil
3572		}
3573		c.PageToken(x.NextPageToken)
3574	}
3575}
3576
3577// method id "plusDomains.comments.get":
3578
3579type CommentsGetCall struct {
3580	s            *Service
3581	commentId    string
3582	urlParams_   gensupport.URLParams
3583	ifNoneMatch_ string
3584	ctx_         context.Context
3585	header_      http.Header
3586}
3587
3588// Get: Shut down. See https://developers.google.com/+/api-shutdown for
3589// more details.
3590func (r *CommentsService) Get(commentId string) *CommentsGetCall {
3591	c := &CommentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3592	c.commentId = commentId
3593	return c
3594}
3595
3596// Fields allows partial responses to be retrieved. See
3597// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3598// for more information.
3599func (c *CommentsGetCall) Fields(s ...googleapi.Field) *CommentsGetCall {
3600	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3601	return c
3602}
3603
3604// IfNoneMatch sets the optional parameter which makes the operation
3605// fail if the object's ETag matches the given value. This is useful for
3606// getting updates only after the object has changed since the last
3607// request. Use googleapi.IsNotModified to check whether the response
3608// error from Do is the result of In-None-Match.
3609func (c *CommentsGetCall) IfNoneMatch(entityTag string) *CommentsGetCall {
3610	c.ifNoneMatch_ = entityTag
3611	return c
3612}
3613
3614// Context sets the context to be used in this call's Do method. Any
3615// pending HTTP request will be aborted if the provided context is
3616// canceled.
3617func (c *CommentsGetCall) Context(ctx context.Context) *CommentsGetCall {
3618	c.ctx_ = ctx
3619	return c
3620}
3621
3622// Header returns an http.Header that can be modified by the caller to
3623// add HTTP headers to the request.
3624func (c *CommentsGetCall) Header() http.Header {
3625	if c.header_ == nil {
3626		c.header_ = make(http.Header)
3627	}
3628	return c.header_
3629}
3630
3631func (c *CommentsGetCall) doRequest(alt string) (*http.Response, error) {
3632	reqHeaders := make(http.Header)
3633	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
3634	for k, v := range c.header_ {
3635		reqHeaders[k] = v
3636	}
3637	reqHeaders.Set("User-Agent", c.s.userAgent())
3638	if c.ifNoneMatch_ != "" {
3639		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3640	}
3641	var body io.Reader = nil
3642	c.urlParams_.Set("alt", alt)
3643	c.urlParams_.Set("prettyPrint", "false")
3644	urls := googleapi.ResolveRelative(c.s.BasePath, "comments/{commentId}")
3645	urls += "?" + c.urlParams_.Encode()
3646	req, err := http.NewRequest("GET", urls, body)
3647	if err != nil {
3648		return nil, err
3649	}
3650	req.Header = reqHeaders
3651	googleapi.Expand(req.URL, map[string]string{
3652		"commentId": c.commentId,
3653	})
3654	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3655}
3656
3657// Do executes the "plusDomains.comments.get" call.
3658// Exactly one of *Comment or error will be non-nil. Any non-2xx status
3659// code is an error. Response headers are in either
3660// *Comment.ServerResponse.Header or (if a response was returned at all)
3661// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
3662// check whether the returned error was because http.StatusNotModified
3663// was returned.
3664func (c *CommentsGetCall) Do(opts ...googleapi.CallOption) (*Comment, error) {
3665	gensupport.SetOptions(c.urlParams_, opts...)
3666	res, err := c.doRequest("json")
3667	if res != nil && res.StatusCode == http.StatusNotModified {
3668		if res.Body != nil {
3669			res.Body.Close()
3670		}
3671		return nil, &googleapi.Error{
3672			Code:   res.StatusCode,
3673			Header: res.Header,
3674		}
3675	}
3676	if err != nil {
3677		return nil, err
3678	}
3679	defer googleapi.CloseBody(res)
3680	if err := googleapi.CheckResponse(res); err != nil {
3681		return nil, err
3682	}
3683	ret := &Comment{
3684		ServerResponse: googleapi.ServerResponse{
3685			Header:         res.Header,
3686			HTTPStatusCode: res.StatusCode,
3687		},
3688	}
3689	target := &ret
3690	if err := gensupport.DecodeResponse(target, res); err != nil {
3691		return nil, err
3692	}
3693	return ret, nil
3694	// {
3695	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
3696	//   "httpMethod": "GET",
3697	//   "id": "plusDomains.comments.get",
3698	//   "parameterOrder": [
3699	//     "commentId"
3700	//   ],
3701	//   "parameters": {
3702	//     "commentId": {
3703	//       "description": "The ID of the comment to get.",
3704	//       "location": "path",
3705	//       "required": true,
3706	//       "type": "string"
3707	//     }
3708	//   },
3709	//   "path": "comments/{commentId}",
3710	//   "response": {
3711	//     "$ref": "Comment"
3712	//   },
3713	//   "scopes": [
3714	//     "https://www.googleapis.com/auth/plus.login",
3715	//     "https://www.googleapis.com/auth/plus.stream.read"
3716	//   ]
3717	// }
3718
3719}
3720
3721// method id "plusDomains.comments.list":
3722
3723type CommentsListCall struct {
3724	s            *Service
3725	activityId   string
3726	urlParams_   gensupport.URLParams
3727	ifNoneMatch_ string
3728	ctx_         context.Context
3729	header_      http.Header
3730}
3731
3732// List: Shut down. See https://developers.google.com/+/api-shutdown for
3733// more details.
3734func (r *CommentsService) List(activityId string) *CommentsListCall {
3735	c := &CommentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3736	c.activityId = activityId
3737	return c
3738}
3739
3740// MaxResults sets the optional parameter "maxResults": The maximum
3741// number of comments to include in the response, which is used for
3742// paging. For any response, the actual number returned might be less
3743// than the specified maxResults.
3744func (c *CommentsListCall) MaxResults(maxResults int64) *CommentsListCall {
3745	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
3746	return c
3747}
3748
3749// PageToken sets the optional parameter "pageToken": The continuation
3750// token, which is used to page through large result sets. To get the
3751// next page of results, set this parameter to the value of
3752// "nextPageToken" from the previous response.
3753func (c *CommentsListCall) PageToken(pageToken string) *CommentsListCall {
3754	c.urlParams_.Set("pageToken", pageToken)
3755	return c
3756}
3757
3758// SortOrder sets the optional parameter "sortOrder": The order in which
3759// to sort the list of comments.
3760//
3761// Possible values:
3762//   "ascending" (default) - Sort oldest comments first.
3763//   "descending" - Sort newest comments first.
3764func (c *CommentsListCall) SortOrder(sortOrder string) *CommentsListCall {
3765	c.urlParams_.Set("sortOrder", sortOrder)
3766	return c
3767}
3768
3769// Fields allows partial responses to be retrieved. See
3770// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3771// for more information.
3772func (c *CommentsListCall) Fields(s ...googleapi.Field) *CommentsListCall {
3773	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3774	return c
3775}
3776
3777// IfNoneMatch sets the optional parameter which makes the operation
3778// fail if the object's ETag matches the given value. This is useful for
3779// getting updates only after the object has changed since the last
3780// request. Use googleapi.IsNotModified to check whether the response
3781// error from Do is the result of In-None-Match.
3782func (c *CommentsListCall) IfNoneMatch(entityTag string) *CommentsListCall {
3783	c.ifNoneMatch_ = entityTag
3784	return c
3785}
3786
3787// Context sets the context to be used in this call's Do method. Any
3788// pending HTTP request will be aborted if the provided context is
3789// canceled.
3790func (c *CommentsListCall) Context(ctx context.Context) *CommentsListCall {
3791	c.ctx_ = ctx
3792	return c
3793}
3794
3795// Header returns an http.Header that can be modified by the caller to
3796// add HTTP headers to the request.
3797func (c *CommentsListCall) Header() http.Header {
3798	if c.header_ == nil {
3799		c.header_ = make(http.Header)
3800	}
3801	return c.header_
3802}
3803
3804func (c *CommentsListCall) doRequest(alt string) (*http.Response, error) {
3805	reqHeaders := make(http.Header)
3806	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
3807	for k, v := range c.header_ {
3808		reqHeaders[k] = v
3809	}
3810	reqHeaders.Set("User-Agent", c.s.userAgent())
3811	if c.ifNoneMatch_ != "" {
3812		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3813	}
3814	var body io.Reader = nil
3815	c.urlParams_.Set("alt", alt)
3816	c.urlParams_.Set("prettyPrint", "false")
3817	urls := googleapi.ResolveRelative(c.s.BasePath, "activities/{activityId}/comments")
3818	urls += "?" + c.urlParams_.Encode()
3819	req, err := http.NewRequest("GET", urls, body)
3820	if err != nil {
3821		return nil, err
3822	}
3823	req.Header = reqHeaders
3824	googleapi.Expand(req.URL, map[string]string{
3825		"activityId": c.activityId,
3826	})
3827	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3828}
3829
3830// Do executes the "plusDomains.comments.list" call.
3831// Exactly one of *CommentFeed or error will be non-nil. Any non-2xx
3832// status code is an error. Response headers are in either
3833// *CommentFeed.ServerResponse.Header or (if a response was returned at
3834// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
3835// to check whether the returned error was because
3836// http.StatusNotModified was returned.
3837func (c *CommentsListCall) Do(opts ...googleapi.CallOption) (*CommentFeed, error) {
3838	gensupport.SetOptions(c.urlParams_, opts...)
3839	res, err := c.doRequest("json")
3840	if res != nil && res.StatusCode == http.StatusNotModified {
3841		if res.Body != nil {
3842			res.Body.Close()
3843		}
3844		return nil, &googleapi.Error{
3845			Code:   res.StatusCode,
3846			Header: res.Header,
3847		}
3848	}
3849	if err != nil {
3850		return nil, err
3851	}
3852	defer googleapi.CloseBody(res)
3853	if err := googleapi.CheckResponse(res); err != nil {
3854		return nil, err
3855	}
3856	ret := &CommentFeed{
3857		ServerResponse: googleapi.ServerResponse{
3858			Header:         res.Header,
3859			HTTPStatusCode: res.StatusCode,
3860		},
3861	}
3862	target := &ret
3863	if err := gensupport.DecodeResponse(target, res); err != nil {
3864		return nil, err
3865	}
3866	return ret, nil
3867	// {
3868	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
3869	//   "httpMethod": "GET",
3870	//   "id": "plusDomains.comments.list",
3871	//   "parameterOrder": [
3872	//     "activityId"
3873	//   ],
3874	//   "parameters": {
3875	//     "activityId": {
3876	//       "description": "The ID of the activity to get comments for.",
3877	//       "location": "path",
3878	//       "required": true,
3879	//       "type": "string"
3880	//     },
3881	//     "maxResults": {
3882	//       "default": "20",
3883	//       "description": "The maximum number of comments to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.",
3884	//       "format": "uint32",
3885	//       "location": "query",
3886	//       "maximum": "500",
3887	//       "minimum": "0",
3888	//       "type": "integer"
3889	//     },
3890	//     "pageToken": {
3891	//       "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.",
3892	//       "location": "query",
3893	//       "type": "string"
3894	//     },
3895	//     "sortOrder": {
3896	//       "default": "ascending",
3897	//       "description": "The order in which to sort the list of comments.",
3898	//       "enum": [
3899	//         "ascending",
3900	//         "descending"
3901	//       ],
3902	//       "enumDescriptions": [
3903	//         "Sort oldest comments first.",
3904	//         "Sort newest comments first."
3905	//       ],
3906	//       "location": "query",
3907	//       "type": "string"
3908	//     }
3909	//   },
3910	//   "path": "activities/{activityId}/comments",
3911	//   "response": {
3912	//     "$ref": "CommentFeed"
3913	//   },
3914	//   "scopes": [
3915	//     "https://www.googleapis.com/auth/plus.login",
3916	//     "https://www.googleapis.com/auth/plus.stream.read"
3917	//   ]
3918	// }
3919
3920}
3921
3922// Pages invokes f for each page of results.
3923// A non-nil error returned from f will halt the iteration.
3924// The provided context supersedes any context provided to the Context method.
3925func (c *CommentsListCall) Pages(ctx context.Context, f func(*CommentFeed) error) error {
3926	c.ctx_ = ctx
3927	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
3928	for {
3929		x, err := c.Do()
3930		if err != nil {
3931			return err
3932		}
3933		if err := f(x); err != nil {
3934			return err
3935		}
3936		if x.NextPageToken == "" {
3937			return nil
3938		}
3939		c.PageToken(x.NextPageToken)
3940	}
3941}
3942
3943// method id "plusDomains.media.insert":
3944
3945type MediaInsertCall struct {
3946	s          *Service
3947	userId     string
3948	collection string
3949	media      *Media
3950	urlParams_ gensupport.URLParams
3951	mediaInfo_ *gensupport.MediaInfo
3952	ctx_       context.Context
3953	header_    http.Header
3954}
3955
3956// Insert: Shut down. See https://developers.google.com/+/api-shutdown
3957// for more details.
3958func (r *MediaService) Insert(userId string, collection string, media *Media) *MediaInsertCall {
3959	c := &MediaInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3960	c.userId = userId
3961	c.collection = collection
3962	c.media = media
3963	return c
3964}
3965
3966// Media specifies the media to upload in one or more chunks. The chunk
3967// size may be controlled by supplying a MediaOption generated by
3968// googleapi.ChunkSize. The chunk size defaults to
3969// googleapi.DefaultUploadChunkSize.The Content-Type header used in the
3970// upload request will be determined by sniffing the contents of r,
3971// unless a MediaOption generated by googleapi.ContentType is
3972// supplied.
3973// At most one of Media and ResumableMedia may be set.
3974func (c *MediaInsertCall) Media(r io.Reader, options ...googleapi.MediaOption) *MediaInsertCall {
3975	c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options)
3976	return c
3977}
3978
3979// ResumableMedia specifies the media to upload in chunks and can be
3980// canceled with ctx.
3981//
3982// Deprecated: use Media instead.
3983//
3984// At most one of Media and ResumableMedia may be set. mediaType
3985// identifies the MIME media type of the upload, such as "image/png". If
3986// mediaType is "", it will be auto-detected. The provided ctx will
3987// supersede any context previously provided to the Context method.
3988func (c *MediaInsertCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *MediaInsertCall {
3989	c.ctx_ = ctx
3990	c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType)
3991	return c
3992}
3993
3994// ProgressUpdater provides a callback function that will be called
3995// after every chunk. It should be a low-latency function in order to
3996// not slow down the upload operation. This should only be called when
3997// using ResumableMedia (as opposed to Media).
3998func (c *MediaInsertCall) ProgressUpdater(pu googleapi.ProgressUpdater) *MediaInsertCall {
3999	c.mediaInfo_.SetProgressUpdater(pu)
4000	return c
4001}
4002
4003// Fields allows partial responses to be retrieved. See
4004// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4005// for more information.
4006func (c *MediaInsertCall) Fields(s ...googleapi.Field) *MediaInsertCall {
4007	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4008	return c
4009}
4010
4011// Context sets the context to be used in this call's Do method. Any
4012// pending HTTP request will be aborted if the provided context is
4013// canceled.
4014// This context will supersede any context previously provided to the
4015// ResumableMedia method.
4016func (c *MediaInsertCall) Context(ctx context.Context) *MediaInsertCall {
4017	c.ctx_ = ctx
4018	return c
4019}
4020
4021// Header returns an http.Header that can be modified by the caller to
4022// add HTTP headers to the request.
4023func (c *MediaInsertCall) Header() http.Header {
4024	if c.header_ == nil {
4025		c.header_ = make(http.Header)
4026	}
4027	return c.header_
4028}
4029
4030func (c *MediaInsertCall) doRequest(alt string) (*http.Response, error) {
4031	reqHeaders := make(http.Header)
4032	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
4033	for k, v := range c.header_ {
4034		reqHeaders[k] = v
4035	}
4036	reqHeaders.Set("User-Agent", c.s.userAgent())
4037	var body io.Reader = nil
4038	body, err := googleapi.WithoutDataWrapper.JSONReader(c.media)
4039	if err != nil {
4040		return nil, err
4041	}
4042	reqHeaders.Set("Content-Type", "application/json")
4043	c.urlParams_.Set("alt", alt)
4044	c.urlParams_.Set("prettyPrint", "false")
4045	urls := googleapi.ResolveRelative(c.s.BasePath, "people/{userId}/media/{collection}")
4046	if c.mediaInfo_ != nil {
4047		urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/plusDomains/v1/people/{userId}/media/{collection}")
4048		c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType())
4049	}
4050	if body == nil {
4051		body = new(bytes.Buffer)
4052		reqHeaders.Set("Content-Type", "application/json")
4053	}
4054	body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body)
4055	defer cleanup()
4056	urls += "?" + c.urlParams_.Encode()
4057	req, err := http.NewRequest("POST", urls, body)
4058	if err != nil {
4059		return nil, err
4060	}
4061	req.Header = reqHeaders
4062	req.GetBody = getBody
4063	googleapi.Expand(req.URL, map[string]string{
4064		"userId":     c.userId,
4065		"collection": c.collection,
4066	})
4067	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4068}
4069
4070// Do executes the "plusDomains.media.insert" call.
4071// Exactly one of *Media or error will be non-nil. Any non-2xx status
4072// code is an error. Response headers are in either
4073// *Media.ServerResponse.Header or (if a response was returned at all)
4074// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4075// check whether the returned error was because http.StatusNotModified
4076// was returned.
4077func (c *MediaInsertCall) Do(opts ...googleapi.CallOption) (*Media, error) {
4078	gensupport.SetOptions(c.urlParams_, opts...)
4079	res, err := c.doRequest("json")
4080	if res != nil && res.StatusCode == http.StatusNotModified {
4081		if res.Body != nil {
4082			res.Body.Close()
4083		}
4084		return nil, &googleapi.Error{
4085			Code:   res.StatusCode,
4086			Header: res.Header,
4087		}
4088	}
4089	if err != nil {
4090		return nil, err
4091	}
4092	defer googleapi.CloseBody(res)
4093	if err := googleapi.CheckResponse(res); err != nil {
4094		return nil, err
4095	}
4096	rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location"))
4097	if rx != nil {
4098		rx.Client = c.s.client
4099		rx.UserAgent = c.s.userAgent()
4100		ctx := c.ctx_
4101		if ctx == nil {
4102			ctx = context.TODO()
4103		}
4104		res, err = rx.Upload(ctx)
4105		if err != nil {
4106			return nil, err
4107		}
4108		defer res.Body.Close()
4109		if err := googleapi.CheckResponse(res); err != nil {
4110			return nil, err
4111		}
4112	}
4113	ret := &Media{
4114		ServerResponse: googleapi.ServerResponse{
4115			Header:         res.Header,
4116			HTTPStatusCode: res.StatusCode,
4117		},
4118	}
4119	target := &ret
4120	if err := gensupport.DecodeResponse(target, res); err != nil {
4121		return nil, err
4122	}
4123	return ret, nil
4124	// {
4125	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
4126	//   "httpMethod": "POST",
4127	//   "id": "plusDomains.media.insert",
4128	//   "mediaUpload": {
4129	//     "accept": [
4130	//       "image/*",
4131	//       "video/*"
4132	//     ],
4133	//     "protocols": {
4134	//       "resumable": {
4135	//         "multipart": true,
4136	//         "path": "/resumable/upload/plusDomains/v1/people/{userId}/media/{collection}"
4137	//       },
4138	//       "simple": {
4139	//         "multipart": true,
4140	//         "path": "/upload/plusDomains/v1/people/{userId}/media/{collection}"
4141	//       }
4142	//     }
4143	//   },
4144	//   "parameterOrder": [
4145	//     "userId",
4146	//     "collection"
4147	//   ],
4148	//   "parameters": {
4149	//     "collection": {
4150	//       "enum": [
4151	//         "cloud"
4152	//       ],
4153	//       "enumDescriptions": [
4154	//         "Upload the media to share on Google+."
4155	//       ],
4156	//       "location": "path",
4157	//       "required": true,
4158	//       "type": "string"
4159	//     },
4160	//     "userId": {
4161	//       "description": "The ID of the user to create the activity on behalf of.",
4162	//       "location": "path",
4163	//       "required": true,
4164	//       "type": "string"
4165	//     }
4166	//   },
4167	//   "path": "people/{userId}/media/{collection}",
4168	//   "request": {
4169	//     "$ref": "Media"
4170	//   },
4171	//   "response": {
4172	//     "$ref": "Media"
4173	//   },
4174	//   "scopes": [
4175	//     "https://www.googleapis.com/auth/plus.login",
4176	//     "https://www.googleapis.com/auth/plus.me",
4177	//     "https://www.googleapis.com/auth/plus.media.upload"
4178	//   ],
4179	//   "supportsMediaUpload": true
4180	// }
4181
4182}
4183
4184// method id "plusDomains.people.get":
4185
4186type PeopleGetCall struct {
4187	s            *Service
4188	userId       string
4189	urlParams_   gensupport.URLParams
4190	ifNoneMatch_ string
4191	ctx_         context.Context
4192	header_      http.Header
4193}
4194
4195// Get: Get a person's profile.
4196func (r *PeopleService) Get(userId string) *PeopleGetCall {
4197	c := &PeopleGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4198	c.userId = userId
4199	return c
4200}
4201
4202// Fields allows partial responses to be retrieved. See
4203// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4204// for more information.
4205func (c *PeopleGetCall) Fields(s ...googleapi.Field) *PeopleGetCall {
4206	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4207	return c
4208}
4209
4210// IfNoneMatch sets the optional parameter which makes the operation
4211// fail if the object's ETag matches the given value. This is useful for
4212// getting updates only after the object has changed since the last
4213// request. Use googleapi.IsNotModified to check whether the response
4214// error from Do is the result of In-None-Match.
4215func (c *PeopleGetCall) IfNoneMatch(entityTag string) *PeopleGetCall {
4216	c.ifNoneMatch_ = entityTag
4217	return c
4218}
4219
4220// Context sets the context to be used in this call's Do method. Any
4221// pending HTTP request will be aborted if the provided context is
4222// canceled.
4223func (c *PeopleGetCall) Context(ctx context.Context) *PeopleGetCall {
4224	c.ctx_ = ctx
4225	return c
4226}
4227
4228// Header returns an http.Header that can be modified by the caller to
4229// add HTTP headers to the request.
4230func (c *PeopleGetCall) Header() http.Header {
4231	if c.header_ == nil {
4232		c.header_ = make(http.Header)
4233	}
4234	return c.header_
4235}
4236
4237func (c *PeopleGetCall) doRequest(alt string) (*http.Response, error) {
4238	reqHeaders := make(http.Header)
4239	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
4240	for k, v := range c.header_ {
4241		reqHeaders[k] = v
4242	}
4243	reqHeaders.Set("User-Agent", c.s.userAgent())
4244	if c.ifNoneMatch_ != "" {
4245		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
4246	}
4247	var body io.Reader = nil
4248	c.urlParams_.Set("alt", alt)
4249	c.urlParams_.Set("prettyPrint", "false")
4250	urls := googleapi.ResolveRelative(c.s.BasePath, "people/{userId}")
4251	urls += "?" + c.urlParams_.Encode()
4252	req, err := http.NewRequest("GET", urls, body)
4253	if err != nil {
4254		return nil, err
4255	}
4256	req.Header = reqHeaders
4257	googleapi.Expand(req.URL, map[string]string{
4258		"userId": c.userId,
4259	})
4260	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4261}
4262
4263// Do executes the "plusDomains.people.get" call.
4264// Exactly one of *Person or error will be non-nil. Any non-2xx status
4265// code is an error. Response headers are in either
4266// *Person.ServerResponse.Header or (if a response was returned at all)
4267// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4268// check whether the returned error was because http.StatusNotModified
4269// was returned.
4270func (c *PeopleGetCall) Do(opts ...googleapi.CallOption) (*Person, error) {
4271	gensupport.SetOptions(c.urlParams_, opts...)
4272	res, err := c.doRequest("json")
4273	if res != nil && res.StatusCode == http.StatusNotModified {
4274		if res.Body != nil {
4275			res.Body.Close()
4276		}
4277		return nil, &googleapi.Error{
4278			Code:   res.StatusCode,
4279			Header: res.Header,
4280		}
4281	}
4282	if err != nil {
4283		return nil, err
4284	}
4285	defer googleapi.CloseBody(res)
4286	if err := googleapi.CheckResponse(res); err != nil {
4287		return nil, err
4288	}
4289	ret := &Person{
4290		ServerResponse: googleapi.ServerResponse{
4291			Header:         res.Header,
4292			HTTPStatusCode: res.StatusCode,
4293		},
4294	}
4295	target := &ret
4296	if err := gensupport.DecodeResponse(target, res); err != nil {
4297		return nil, err
4298	}
4299	return ret, nil
4300	// {
4301	//   "description": "Get a person's profile.",
4302	//   "httpMethod": "GET",
4303	//   "id": "plusDomains.people.get",
4304	//   "parameterOrder": [
4305	//     "userId"
4306	//   ],
4307	//   "parameters": {
4308	//     "userId": {
4309	//       "description": "The ID of the person to get the profile for. The special value \"me\" can be used to indicate the authenticated user.",
4310	//       "location": "path",
4311	//       "required": true,
4312	//       "type": "string"
4313	//     }
4314	//   },
4315	//   "path": "people/{userId}",
4316	//   "response": {
4317	//     "$ref": "Person"
4318	//   },
4319	//   "scopes": [
4320	//     "https://www.googleapis.com/auth/plus.login",
4321	//     "https://www.googleapis.com/auth/plus.me",
4322	//     "https://www.googleapis.com/auth/plus.profiles.read",
4323	//     "https://www.googleapis.com/auth/userinfo.email",
4324	//     "https://www.googleapis.com/auth/userinfo.profile"
4325	//   ]
4326	// }
4327
4328}
4329
4330// method id "plusDomains.people.list":
4331
4332type PeopleListCall struct {
4333	s            *Service
4334	userId       string
4335	collection   string
4336	urlParams_   gensupport.URLParams
4337	ifNoneMatch_ string
4338	ctx_         context.Context
4339	header_      http.Header
4340}
4341
4342// List: List all of the people in the specified collection.
4343func (r *PeopleService) List(userId string, collection string) *PeopleListCall {
4344	c := &PeopleListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4345	c.userId = userId
4346	c.collection = collection
4347	return c
4348}
4349
4350// MaxResults sets the optional parameter "maxResults": The maximum
4351// number of people to include in the response, which is used for
4352// paging. For any response, the actual number returned might be less
4353// than the specified maxResults.
4354func (c *PeopleListCall) MaxResults(maxResults int64) *PeopleListCall {
4355	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
4356	return c
4357}
4358
4359// OrderBy sets the optional parameter "orderBy": The order to return
4360// people in.
4361//
4362// Possible values:
4363//   "alphabetical" - Order the people by their display name.
4364//   "best" - Order people based on the relevence to the viewer.
4365func (c *PeopleListCall) OrderBy(orderBy string) *PeopleListCall {
4366	c.urlParams_.Set("orderBy", orderBy)
4367	return c
4368}
4369
4370// PageToken sets the optional parameter "pageToken": The continuation
4371// token, which is used to page through large result sets. To get the
4372// next page of results, set this parameter to the value of
4373// "nextPageToken" from the previous response.
4374func (c *PeopleListCall) PageToken(pageToken string) *PeopleListCall {
4375	c.urlParams_.Set("pageToken", pageToken)
4376	return c
4377}
4378
4379// Fields allows partial responses to be retrieved. See
4380// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4381// for more information.
4382func (c *PeopleListCall) Fields(s ...googleapi.Field) *PeopleListCall {
4383	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4384	return c
4385}
4386
4387// IfNoneMatch sets the optional parameter which makes the operation
4388// fail if the object's ETag matches the given value. This is useful for
4389// getting updates only after the object has changed since the last
4390// request. Use googleapi.IsNotModified to check whether the response
4391// error from Do is the result of In-None-Match.
4392func (c *PeopleListCall) IfNoneMatch(entityTag string) *PeopleListCall {
4393	c.ifNoneMatch_ = entityTag
4394	return c
4395}
4396
4397// Context sets the context to be used in this call's Do method. Any
4398// pending HTTP request will be aborted if the provided context is
4399// canceled.
4400func (c *PeopleListCall) Context(ctx context.Context) *PeopleListCall {
4401	c.ctx_ = ctx
4402	return c
4403}
4404
4405// Header returns an http.Header that can be modified by the caller to
4406// add HTTP headers to the request.
4407func (c *PeopleListCall) Header() http.Header {
4408	if c.header_ == nil {
4409		c.header_ = make(http.Header)
4410	}
4411	return c.header_
4412}
4413
4414func (c *PeopleListCall) doRequest(alt string) (*http.Response, error) {
4415	reqHeaders := make(http.Header)
4416	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
4417	for k, v := range c.header_ {
4418		reqHeaders[k] = v
4419	}
4420	reqHeaders.Set("User-Agent", c.s.userAgent())
4421	if c.ifNoneMatch_ != "" {
4422		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
4423	}
4424	var body io.Reader = nil
4425	c.urlParams_.Set("alt", alt)
4426	c.urlParams_.Set("prettyPrint", "false")
4427	urls := googleapi.ResolveRelative(c.s.BasePath, "people/{userId}/people/{collection}")
4428	urls += "?" + c.urlParams_.Encode()
4429	req, err := http.NewRequest("GET", urls, body)
4430	if err != nil {
4431		return nil, err
4432	}
4433	req.Header = reqHeaders
4434	googleapi.Expand(req.URL, map[string]string{
4435		"userId":     c.userId,
4436		"collection": c.collection,
4437	})
4438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4439}
4440
4441// Do executes the "plusDomains.people.list" call.
4442// Exactly one of *PeopleFeed or error will be non-nil. Any non-2xx
4443// status code is an error. Response headers are in either
4444// *PeopleFeed.ServerResponse.Header or (if a response was returned at
4445// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
4446// to check whether the returned error was because
4447// http.StatusNotModified was returned.
4448func (c *PeopleListCall) Do(opts ...googleapi.CallOption) (*PeopleFeed, error) {
4449	gensupport.SetOptions(c.urlParams_, opts...)
4450	res, err := c.doRequest("json")
4451	if res != nil && res.StatusCode == http.StatusNotModified {
4452		if res.Body != nil {
4453			res.Body.Close()
4454		}
4455		return nil, &googleapi.Error{
4456			Code:   res.StatusCode,
4457			Header: res.Header,
4458		}
4459	}
4460	if err != nil {
4461		return nil, err
4462	}
4463	defer googleapi.CloseBody(res)
4464	if err := googleapi.CheckResponse(res); err != nil {
4465		return nil, err
4466	}
4467	ret := &PeopleFeed{
4468		ServerResponse: googleapi.ServerResponse{
4469			Header:         res.Header,
4470			HTTPStatusCode: res.StatusCode,
4471		},
4472	}
4473	target := &ret
4474	if err := gensupport.DecodeResponse(target, res); err != nil {
4475		return nil, err
4476	}
4477	return ret, nil
4478	// {
4479	//   "description": "List all of the people in the specified collection.",
4480	//   "httpMethod": "GET",
4481	//   "id": "plusDomains.people.list",
4482	//   "parameterOrder": [
4483	//     "userId",
4484	//     "collection"
4485	//   ],
4486	//   "parameters": {
4487	//     "collection": {
4488	//       "description": "The collection of people to list.",
4489	//       "enum": [
4490	//         "circled"
4491	//       ],
4492	//       "enumDescriptions": [
4493	//         "The list of people who this user has added to one or more circles."
4494	//       ],
4495	//       "location": "path",
4496	//       "required": true,
4497	//       "type": "string"
4498	//     },
4499	//     "maxResults": {
4500	//       "default": "100",
4501	//       "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.",
4502	//       "format": "uint32",
4503	//       "location": "query",
4504	//       "maximum": "100",
4505	//       "minimum": "1",
4506	//       "type": "integer"
4507	//     },
4508	//     "orderBy": {
4509	//       "description": "The order to return people in.",
4510	//       "enum": [
4511	//         "alphabetical",
4512	//         "best"
4513	//       ],
4514	//       "enumDescriptions": [
4515	//         "Order the people by their display name.",
4516	//         "Order people based on the relevence to the viewer."
4517	//       ],
4518	//       "location": "query",
4519	//       "type": "string"
4520	//     },
4521	//     "pageToken": {
4522	//       "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.",
4523	//       "location": "query",
4524	//       "type": "string"
4525	//     },
4526	//     "userId": {
4527	//       "description": "Get the collection of people for the person identified. Use \"me\" to indicate the authenticated user.",
4528	//       "location": "path",
4529	//       "required": true,
4530	//       "type": "string"
4531	//     }
4532	//   },
4533	//   "path": "people/{userId}/people/{collection}",
4534	//   "response": {
4535	//     "$ref": "PeopleFeed"
4536	//   },
4537	//   "scopes": [
4538	//     "https://www.googleapis.com/auth/plus.circles.read",
4539	//     "https://www.googleapis.com/auth/plus.login",
4540	//     "https://www.googleapis.com/auth/plus.me"
4541	//   ]
4542	// }
4543
4544}
4545
4546// Pages invokes f for each page of results.
4547// A non-nil error returned from f will halt the iteration.
4548// The provided context supersedes any context provided to the Context method.
4549func (c *PeopleListCall) Pages(ctx context.Context, f func(*PeopleFeed) error) error {
4550	c.ctx_ = ctx
4551	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
4552	for {
4553		x, err := c.Do()
4554		if err != nil {
4555			return err
4556		}
4557		if err := f(x); err != nil {
4558			return err
4559		}
4560		if x.NextPageToken == "" {
4561			return nil
4562		}
4563		c.PageToken(x.NextPageToken)
4564	}
4565}
4566
4567// method id "plusDomains.people.listByActivity":
4568
4569type PeopleListByActivityCall struct {
4570	s            *Service
4571	activityId   string
4572	collection   string
4573	urlParams_   gensupport.URLParams
4574	ifNoneMatch_ string
4575	ctx_         context.Context
4576	header_      http.Header
4577}
4578
4579// ListByActivity: Shut down. See
4580// https://developers.google.com/+/api-shutdown for more details.
4581func (r *PeopleService) ListByActivity(activityId string, collection string) *PeopleListByActivityCall {
4582	c := &PeopleListByActivityCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4583	c.activityId = activityId
4584	c.collection = collection
4585	return c
4586}
4587
4588// MaxResults sets the optional parameter "maxResults": The maximum
4589// number of people to include in the response, which is used for
4590// paging. For any response, the actual number returned might be less
4591// than the specified maxResults.
4592func (c *PeopleListByActivityCall) MaxResults(maxResults int64) *PeopleListByActivityCall {
4593	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
4594	return c
4595}
4596
4597// PageToken sets the optional parameter "pageToken": The continuation
4598// token, which is used to page through large result sets. To get the
4599// next page of results, set this parameter to the value of
4600// "nextPageToken" from the previous response.
4601func (c *PeopleListByActivityCall) PageToken(pageToken string) *PeopleListByActivityCall {
4602	c.urlParams_.Set("pageToken", pageToken)
4603	return c
4604}
4605
4606// Fields allows partial responses to be retrieved. See
4607// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4608// for more information.
4609func (c *PeopleListByActivityCall) Fields(s ...googleapi.Field) *PeopleListByActivityCall {
4610	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4611	return c
4612}
4613
4614// IfNoneMatch sets the optional parameter which makes the operation
4615// fail if the object's ETag matches the given value. This is useful for
4616// getting updates only after the object has changed since the last
4617// request. Use googleapi.IsNotModified to check whether the response
4618// error from Do is the result of In-None-Match.
4619func (c *PeopleListByActivityCall) IfNoneMatch(entityTag string) *PeopleListByActivityCall {
4620	c.ifNoneMatch_ = entityTag
4621	return c
4622}
4623
4624// Context sets the context to be used in this call's Do method. Any
4625// pending HTTP request will be aborted if the provided context is
4626// canceled.
4627func (c *PeopleListByActivityCall) Context(ctx context.Context) *PeopleListByActivityCall {
4628	c.ctx_ = ctx
4629	return c
4630}
4631
4632// Header returns an http.Header that can be modified by the caller to
4633// add HTTP headers to the request.
4634func (c *PeopleListByActivityCall) Header() http.Header {
4635	if c.header_ == nil {
4636		c.header_ = make(http.Header)
4637	}
4638	return c.header_
4639}
4640
4641func (c *PeopleListByActivityCall) doRequest(alt string) (*http.Response, error) {
4642	reqHeaders := make(http.Header)
4643	reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203")
4644	for k, v := range c.header_ {
4645		reqHeaders[k] = v
4646	}
4647	reqHeaders.Set("User-Agent", c.s.userAgent())
4648	if c.ifNoneMatch_ != "" {
4649		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
4650	}
4651	var body io.Reader = nil
4652	c.urlParams_.Set("alt", alt)
4653	c.urlParams_.Set("prettyPrint", "false")
4654	urls := googleapi.ResolveRelative(c.s.BasePath, "activities/{activityId}/people/{collection}")
4655	urls += "?" + c.urlParams_.Encode()
4656	req, err := http.NewRequest("GET", urls, body)
4657	if err != nil {
4658		return nil, err
4659	}
4660	req.Header = reqHeaders
4661	googleapi.Expand(req.URL, map[string]string{
4662		"activityId": c.activityId,
4663		"collection": c.collection,
4664	})
4665	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4666}
4667
4668// Do executes the "plusDomains.people.listByActivity" call.
4669// Exactly one of *PeopleFeed or error will be non-nil. Any non-2xx
4670// status code is an error. Response headers are in either
4671// *PeopleFeed.ServerResponse.Header or (if a response was returned at
4672// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
4673// to check whether the returned error was because
4674// http.StatusNotModified was returned.
4675func (c *PeopleListByActivityCall) Do(opts ...googleapi.CallOption) (*PeopleFeed, error) {
4676	gensupport.SetOptions(c.urlParams_, opts...)
4677	res, err := c.doRequest("json")
4678	if res != nil && res.StatusCode == http.StatusNotModified {
4679		if res.Body != nil {
4680			res.Body.Close()
4681		}
4682		return nil, &googleapi.Error{
4683			Code:   res.StatusCode,
4684			Header: res.Header,
4685		}
4686	}
4687	if err != nil {
4688		return nil, err
4689	}
4690	defer googleapi.CloseBody(res)
4691	if err := googleapi.CheckResponse(res); err != nil {
4692		return nil, err
4693	}
4694	ret := &PeopleFeed{
4695		ServerResponse: googleapi.ServerResponse{
4696			Header:         res.Header,
4697			HTTPStatusCode: res.StatusCode,
4698		},
4699	}
4700	target := &ret
4701	if err := gensupport.DecodeResponse(target, res); err != nil {
4702		return nil, err
4703	}
4704	return ret, nil
4705	// {
4706	//   "description": "Shut down. See https://developers.google.com/+/api-shutdown for more details.",
4707	//   "httpMethod": "GET",
4708	//   "id": "plusDomains.people.listByActivity",
4709	//   "parameterOrder": [
4710	//     "activityId",
4711	//     "collection"
4712	//   ],
4713	//   "parameters": {
4714	//     "activityId": {
4715	//       "description": "The ID of the activity to get the list of people for.",
4716	//       "location": "path",
4717	//       "required": true,
4718	//       "type": "string"
4719	//     },
4720	//     "collection": {
4721	//       "description": "The collection of people to list.",
4722	//       "enum": [
4723	//         "plusoners",
4724	//         "resharers",
4725	//         "sharedto"
4726	//       ],
4727	//       "enumDescriptions": [
4728	//         "List all people who have +1'd this activity.",
4729	//         "List all people who have reshared this activity.",
4730	//         "List all people who this activity was shared to."
4731	//       ],
4732	//       "location": "path",
4733	//       "required": true,
4734	//       "type": "string"
4735	//     },
4736	//     "maxResults": {
4737	//       "default": "20",
4738	//       "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.",
4739	//       "format": "uint32",
4740	//       "location": "query",
4741	//       "maximum": "100",
4742	//       "minimum": "1",
4743	//       "type": "integer"
4744	//     },
4745	//     "pageToken": {
4746	//       "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.",
4747	//       "location": "query",
4748	//       "type": "string"
4749	//     }
4750	//   },
4751	//   "path": "activities/{activityId}/people/{collection}",
4752	//   "response": {
4753	//     "$ref": "PeopleFeed"
4754	//   },
4755	//   "scopes": [
4756	//     "https://www.googleapis.com/auth/plus.login",
4757	//     "https://www.googleapis.com/auth/plus.stream.read"
4758	//   ]
4759	// }
4760
4761}
4762
4763// Pages invokes f for each page of results.
4764// A non-nil error returned from f will halt the iteration.
4765// The provided context supersedes any context provided to the Context method.
4766func (c *PeopleListByActivityCall) Pages(ctx context.Context, f func(*PeopleFeed) error) error {
4767	c.ctx_ = ctx
4768	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
4769	for {
4770		x, err := c.Do()
4771		if err != nil {
4772			return err
4773		}
4774		if err := f(x); err != nil {
4775			return err
4776		}
4777		if x.NextPageToken == "" {
4778			return nil
4779		}
4780		c.PageToken(x.NextPageToken)
4781	}
4782}
4783