blob: 61983120dce03c893162d4147c0287ab142667a0 [file] [log] [blame]
// Copyright 2020 Google LLC.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package people provides access to the People API.
//
// For product documentation, see: https://developers.google.com/people/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/people/v1"
// ...
// ctx := context.Background()
// peopleService, err := people.NewService(ctx)
//
// In this example, Google Application Default Credentials are used for authentication.
//
// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
//
// Other authentication options
//
// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
//
// peopleService, err := people.NewService(ctx, option.WithScopes(people.UserinfoProfileScope))
//
// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
//
// peopleService, err := people.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// peopleService, err := people.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package people // import "google.golang.org/api/people/v1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
internaloption "google.golang.org/api/option/internaloption"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
var _ = internaloption.WithDefaultEndpoint
const apiId = "people:v1"
const apiName = "people"
const apiVersion = "v1"
const basePath = "https://people.googleapis.com/"
const mtlsBasePath = "https://people.mtls.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// See, edit, download, and permanently delete your contacts
ContactsScope = "https://www.googleapis.com/auth/contacts"
// See and download contact info automatically saved in your "Other
// contacts"
ContactsOtherReadonlyScope = "https://www.googleapis.com/auth/contacts.other.readonly"
// See and download your contacts
ContactsReadonlyScope = "https://www.googleapis.com/auth/contacts.readonly"
// See and download your organization's GSuite directory
DirectoryReadonlyScope = "https://www.googleapis.com/auth/directory.readonly"
// View your street addresses
UserAddressesReadScope = "https://www.googleapis.com/auth/user.addresses.read"
// View your complete date of birth
UserBirthdayReadScope = "https://www.googleapis.com/auth/user.birthday.read"
// View your email addresses
UserEmailsReadScope = "https://www.googleapis.com/auth/user.emails.read"
// See your gender
UserGenderReadScope = "https://www.googleapis.com/auth/user.gender.read"
// See your education, work history and org info
UserOrganizationReadScope = "https://www.googleapis.com/auth/user.organization.read"
// View your phone numbers
UserPhonenumbersReadScope = "https://www.googleapis.com/auth/user.phonenumbers.read"
// View your email address
UserinfoEmailScope = "https://www.googleapis.com/auth/userinfo.email"
// See your personal info, including any personal info you've made
// publicly available
UserinfoProfileScope = "https://www.googleapis.com/auth/userinfo.profile"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/contacts",
"https://www.googleapis.com/auth/contacts.other.readonly",
"https://www.googleapis.com/auth/contacts.readonly",
"https://www.googleapis.com/auth/directory.readonly",
"https://www.googleapis.com/auth/user.addresses.read",
"https://www.googleapis.com/auth/user.birthday.read",
"https://www.googleapis.com/auth/user.emails.read",
"https://www.googleapis.com/auth/user.gender.read",
"https://www.googleapis.com/auth/user.organization.read",
"https://www.googleapis.com/auth/user.phonenumbers.read",
"https://www.googleapis.com/auth/userinfo.email",
"https://www.googleapis.com/auth/userinfo.profile",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new Service. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.ContactGroups = NewContactGroupsService(s)
s.OtherContacts = NewOtherContactsService(s)
s.People = NewPeopleService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
ContactGroups *ContactGroupsService
OtherContacts *OtherContactsService
People *PeopleService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewContactGroupsService(s *Service) *ContactGroupsService {
rs := &ContactGroupsService{s: s}
rs.Members = NewContactGroupsMembersService(s)
return rs
}
type ContactGroupsService struct {
s *Service
Members *ContactGroupsMembersService
}
func NewContactGroupsMembersService(s *Service) *ContactGroupsMembersService {
rs := &ContactGroupsMembersService{s: s}
return rs
}
type ContactGroupsMembersService struct {
s *Service
}
func NewOtherContactsService(s *Service) *OtherContactsService {
rs := &OtherContactsService{s: s}
return rs
}
type OtherContactsService struct {
s *Service
}
func NewPeopleService(s *Service) *PeopleService {
rs := &PeopleService{s: s}
rs.Connections = NewPeopleConnectionsService(s)
return rs
}
type PeopleService struct {
s *Service
Connections *PeopleConnectionsService
}
func NewPeopleConnectionsService(s *Service) *PeopleConnectionsService {
rs := &PeopleConnectionsService{s: s}
return rs
}
type PeopleConnectionsService struct {
s *Service
}
// Address: A person's physical address. May be a P.O. box or street
// address. All fields are optional.
type Address struct {
// City: The city of the address.
City string `json:"city,omitempty"`
// Country: The country of the address.
Country string `json:"country,omitempty"`
// CountryCode: The [ISO 3166-1
// alpha-2](http://www.iso.org/iso/country_codes.htm) country code of
// the address.
CountryCode string `json:"countryCode,omitempty"`
// ExtendedAddress: The extended address of the address; for example,
// the apartment number.
ExtendedAddress string `json:"extendedAddress,omitempty"`
// FormattedType: Output only. The type of the address translated and
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// FormattedValue: The unstructured value of the address. If this is not
// set by the user it will be automatically constructed from structured
// values.
FormattedValue string `json:"formattedValue,omitempty"`
// Metadata: Metadata about the address.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// PoBox: The P.O. box of the address.
PoBox string `json:"poBox,omitempty"`
// PostalCode: The postal code of the address.
PostalCode string `json:"postalCode,omitempty"`
// Region: The region of the address; for example, the state or
// province.
Region string `json:"region,omitempty"`
// StreetAddress: The street address.
StreetAddress string `json:"streetAddress,omitempty"`
// Type: The type of the address. The type can be custom or one of these
// predefined values: * `home` * `work` * `other`
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "City") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "City") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Address) MarshalJSON() ([]byte, error) {
type NoMethod Address
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AgeRangeType: A person's age range.
type AgeRangeType struct {
// AgeRange: The age range.
//
// Possible values:
// "AGE_RANGE_UNSPECIFIED" - Unspecified.
// "LESS_THAN_EIGHTEEN" - Younger than eighteen.
// "EIGHTEEN_TO_TWENTY" - Between eighteen and twenty.
// "TWENTY_ONE_OR_OLDER" - Twenty-one and older.
AgeRange string `json:"ageRange,omitempty"`
// Metadata: Metadata about the age range.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// ForceSendFields is a list of field names (e.g. "AgeRange") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AgeRange") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AgeRangeType) MarshalJSON() ([]byte, error) {
type NoMethod AgeRangeType
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BatchGetContactGroupsResponse: The response to a batch get contact
// groups request.
type BatchGetContactGroupsResponse struct {
// Responses: The list of responses for each requested contact group
// resource.
Responses []*ContactGroupResponse `json:"responses,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Responses") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Responses") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BatchGetContactGroupsResponse) MarshalJSON() ([]byte, error) {
type NoMethod BatchGetContactGroupsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Biography: A person's short biography.
type Biography struct {
// ContentType: The content type of the biography.
//
// Possible values:
// "CONTENT_TYPE_UNSPECIFIED" - Unspecified.
// "TEXT_PLAIN" - Plain text.
// "TEXT_HTML" - HTML text.
ContentType string `json:"contentType,omitempty"`
// Metadata: Metadata about the biography.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The short biography.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContentType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContentType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Biography) MarshalJSON() ([]byte, error) {
type NoMethod Biography
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Birthday: A person's birthday. At least one of the `date` and `text`
// fields are specified. The `date` and `text` fields typically
// represent the same date, but are not guaranteed to.
type Birthday struct {
// Date: The date of the birthday.
Date *Date `json:"date,omitempty"`
// Metadata: Metadata about the birthday.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Text: A free-form string representing the user's birthday.
Text string `json:"text,omitempty"`
// ForceSendFields is a list of field names (e.g. "Date") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Date") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Birthday) MarshalJSON() ([]byte, error) {
type NoMethod Birthday
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BraggingRights: **DEPRECATED**: No data will be returned A person's
// bragging rights.
type BraggingRights struct {
// Metadata: Metadata about the bragging rights.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The bragging rights; for example, `climbed mount everest`.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BraggingRights) MarshalJSON() ([]byte, error) {
type NoMethod BraggingRights
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CalendarUrl: A person's calendar URL.
type CalendarUrl struct {
// FormattedType: Output only. The type of the calendar URL translated
// and formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the calendar URL.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the calendar URL. The type can be custom or one of
// these predefined values: * `home` * `freeBusy` * `work`
Type string `json:"type,omitempty"`
// Url: The calendar URL.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CalendarUrl) MarshalJSON() ([]byte, error) {
type NoMethod CalendarUrl
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ClientData: Arbitrary client data that is populated by clients.
// Duplicate keys and values are allowed.
type ClientData struct {
// Key: The client specified key of the client data.
Key string `json:"key,omitempty"`
// Metadata: Metadata about the client data.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The client specified value of the client data.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ClientData) MarshalJSON() ([]byte, error) {
type NoMethod ClientData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ContactGroup: A contact group.
type ContactGroup struct {
// Etag: The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag)
// of the resource. Used for web cache validation.
Etag string `json:"etag,omitempty"`
// FormattedName: Output only. The name translated and formatted in the
// viewer's account locale or the `Accept-Language` HTTP header locale
// for system groups names. Group names set by the owner are the same as
// name.
FormattedName string `json:"formattedName,omitempty"`
// GroupType: Output only. The contact group type.
//
// Possible values:
// "GROUP_TYPE_UNSPECIFIED" - Unspecified.
// "USER_CONTACT_GROUP" - User defined contact group.
// "SYSTEM_CONTACT_GROUP" - System defined contact group.
GroupType string `json:"groupType,omitempty"`
// MemberCount: Output only. The total number of contacts in the group
// irrespective of max members in specified in the request.
MemberCount int64 `json:"memberCount,omitempty"`
// MemberResourceNames: Output only. The list of contact person resource
// names that are members of the contact group. The field is not
// populated for LIST requests and can only be updated through the
// [ModifyContactGroupMembers](/people/api/rest/v1/contactgroups/members/
// modify).
MemberResourceNames []string `json:"memberResourceNames,omitempty"`
// Metadata: Output only. Metadata about the contact group.
Metadata *ContactGroupMetadata `json:"metadata,omitempty"`
// Name: The contact group name set by the group owner or a system
// provided name for system groups.
Name string `json:"name,omitempty"`
// ResourceName: The resource name for the contact group, assigned by
// the server. An ASCII string, in the form of
// `contactGroups/{contact_group_id}`.
ResourceName string `json:"resourceName,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Etag") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Etag") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ContactGroup) MarshalJSON() ([]byte, error) {
type NoMethod ContactGroup
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ContactGroupMembership: A Google contact group membership.
type ContactGroupMembership struct {
// ContactGroupId: Output only. The contact group ID for the contact
// group membership.
ContactGroupId string `json:"contactGroupId,omitempty"`
// ContactGroupResourceName: The resource name for the contact group,
// assigned by the server. An ASCII string, in the form of
// `contactGroups/{contact_group_id}`. Only contact_group_resource_name
// can be used for modifying memberships. Any contact group membership
// can be removed, but only user group or "myContacts" or "starred"
// system groups memberships can be added. A contact must always have at
// least one contact group membership.
ContactGroupResourceName string `json:"contactGroupResourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContactGroupId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContactGroupId") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ContactGroupMembership) MarshalJSON() ([]byte, error) {
type NoMethod ContactGroupMembership
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ContactGroupMetadata: The metadata about a contact group.
type ContactGroupMetadata struct {
// Deleted: Output only. True if the contact group resource has been
// deleted. Populated only for
// [`ListContactGroups`](/people/api/rest/v1/contactgroups/list)
// requests that include a sync token.
Deleted bool `json:"deleted,omitempty"`
// UpdateTime: Output only. The time the group was last updated.
UpdateTime string `json:"updateTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "Deleted") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Deleted") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ContactGroupMetadata) MarshalJSON() ([]byte, error) {
type NoMethod ContactGroupMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ContactGroupResponse: The response for a specific contact group.
type ContactGroupResponse struct {
// ContactGroup: The contact group.
ContactGroup *ContactGroup `json:"contactGroup,omitempty"`
// RequestedResourceName: The original requested resource name.
RequestedResourceName string `json:"requestedResourceName,omitempty"`
// Status: The status of the response.
Status *Status `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContactGroup") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContactGroup") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ContactGroupResponse) MarshalJSON() ([]byte, error) {
type NoMethod ContactGroupResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CopyOtherContactToMyContactsGroupRequest: A request to copy an "Other
// contact" to my contacts group.
type CopyOtherContactToMyContactsGroupRequest struct {
// CopyMask: Required. A field mask to restrict which fields are copied
// into the new contact. Valid values are: * emailAddresses * names *
// phoneNumbers
CopyMask string `json:"copyMask,omitempty"`
// ReadMask: Optional. A field mask to restrict which fields on the
// person are returned. Multiple fields can be specified by separating
// them with commas. Defaults to the copy mask with metadata and
// membership fields if not set. Valid values are: * addresses *
// ageRanges * biographies * birthdays * calendarUrls * clientData *
// coverPhotos * emailAddresses * events * externalIds * genders *
// imClients * interests * locales * locations * memberships * metadata
// * miscKeywords * names * nicknames * occupations * organizations *
// phoneNumbers * photos * relations * sipAddresses * skills * urls *
// userDefined
ReadMask string `json:"readMask,omitempty"`
// Sources: Optional. A mask of what source types to return. Defaults to
// ReadSourceType.CONTACT and ReadSourceType.PROFILE if not set.
//
// Possible values:
// "READ_SOURCE_TYPE_UNSPECIFIED" - Unspecified.
// "READ_SOURCE_TYPE_PROFILE" - Returns SourceType.ACCOUNT,
// SourceType.DOMAIN_PROFILE, and SourceType.PROFILE.
// "READ_SOURCE_TYPE_CONTACT" - Returns SourceType.CONTACT.
// "READ_SOURCE_TYPE_DOMAIN_CONTACT" - Returns
// SourceType.DOMAIN_CONTACT.
Sources []string `json:"sources,omitempty"`
// ForceSendFields is a list of field names (e.g. "CopyMask") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CopyMask") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CopyOtherContactToMyContactsGroupRequest) MarshalJSON() ([]byte, error) {
type NoMethod CopyOtherContactToMyContactsGroupRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CoverPhoto: A person's cover photo. A large image shown on the
// person's profile page that represents who they are or what they care
// about.
type CoverPhoto struct {
// Default: True if the cover photo is the default cover photo; false if
// the cover photo is a user-provided cover photo.
Default bool `json:"default,omitempty"`
// Metadata: Metadata about the cover photo.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Url: The URL of the cover photo.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "Default") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Default") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CoverPhoto) MarshalJSON() ([]byte, error) {
type NoMethod CoverPhoto
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreateContactGroupRequest: A request to create a new contact group.
type CreateContactGroupRequest struct {
// ContactGroup: Required. The contact group to create.
ContactGroup *ContactGroup `json:"contactGroup,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContactGroup") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContactGroup") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CreateContactGroupRequest) MarshalJSON() ([]byte, error) {
type NoMethod CreateContactGroupRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Date: Represents a whole or partial calendar date, e.g. a birthday.
// The time of day and time zone are either specified elsewhere or are
// not significant. The date is relative to the Proleptic Gregorian
// Calendar. This can represent: * A full date, with non-zero year,
// month and day values * A month and day value, with a zero year, e.g.
// an anniversary * A year on its own, with zero month and day values *
// A year and month value, with a zero day, e.g. a credit card
// expiration date Related types are google.type.TimeOfDay and
// `google.protobuf.Timestamp`.
type Date struct {
// Day: Day of month. Must be from 1 to 31 and valid for the year and
// month, or 0 if specifying a year by itself or a year and month where
// the day is not significant.
Day int64 `json:"day,omitempty"`
// Month: Month of year. Must be from 1 to 12, or 0 if specifying a year
// without a month and day.
Month int64 `json:"month,omitempty"`
// Year: Year of date. Must be from 1 to 9999, or 0 if specifying a date
// without a year.
Year int64 `json:"year,omitempty"`
// ForceSendFields is a list of field names (e.g. "Day") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Day") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Date) MarshalJSON() ([]byte, error) {
type NoMethod Date
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DeleteContactPhotoResponse: The response for deleteing a contact's
// photo.
type DeleteContactPhotoResponse struct {
// Person: The updated person, if person_fields is set in the
// DeleteContactPhotoRequest; otherwise this will be unset.
Person *Person `json:"person,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Person") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Person") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DeleteContactPhotoResponse) MarshalJSON() ([]byte, error) {
type NoMethod DeleteContactPhotoResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DomainMembership: A G Suite Domain membership.
type DomainMembership struct {
// InViewerDomain: True if the person is in the viewer's G Suite domain.
InViewerDomain bool `json:"inViewerDomain,omitempty"`
// ForceSendFields is a list of field names (e.g. "InViewerDomain") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "InViewerDomain") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *DomainMembership) MarshalJSON() ([]byte, error) {
type NoMethod DomainMembership
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// EmailAddress: A person's email address.
type EmailAddress struct {
// DisplayName: The display name of the email.
DisplayName string `json:"displayName,omitempty"`
// FormattedType: Output only. The type of the email address translated
// and formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the email address.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the email address. The type can be custom or one of
// these predefined values: * `home` * `work` * `other`
Type string `json:"type,omitempty"`
// Value: The email address.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "DisplayName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DisplayName") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *EmailAddress) MarshalJSON() ([]byte, error) {
type NoMethod EmailAddress
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Empty: A generic empty message that you can re-use to avoid defining
// duplicated empty messages in your APIs. A typical example is to use
// it as the request or the response type of an API method. For
// instance: service Foo { rpc Bar(google.protobuf.Empty) returns
// (google.protobuf.Empty); } The JSON representation for `Empty` is
// empty JSON object `{}`.
type Empty struct {
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
}
// Event: An event related to the person.
type Event struct {
// Date: The date of the event.
Date *Date `json:"date,omitempty"`
// FormattedType: Output only. The type of the event translated and
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the event.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the event. The type can be custom or one of these
// predefined values: * `anniversary` * `other`
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Date") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Date") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Event) MarshalJSON() ([]byte, error) {
type NoMethod Event
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExternalId: An identifier from an external entity related to the
// person.
type ExternalId struct {
// FormattedType: Output only. The type of the event translated and
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the external ID.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the external ID. The type can be custom or one of
// these predefined values: * `account` * `customer` * `loginId` *
// `network` * `organization`
Type string `json:"type,omitempty"`
// Value: The value of the external ID.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ExternalId) MarshalJSON() ([]byte, error) {
type NoMethod ExternalId
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FieldMetadata: Metadata about a field.
type FieldMetadata struct {
// Primary: True if the field is the primary field; false if the field
// is a secondary field.
Primary bool `json:"primary,omitempty"`
// Source: The source of the field.
Source *Source `json:"source,omitempty"`
// Verified: Output only. True if the field is verified; false if the
// field is unverified. A verified field is typically a name, email
// address, phone number, or website that has been confirmed to be owned
// by the person.
Verified bool `json:"verified,omitempty"`
// ForceSendFields is a list of field names (e.g. "Primary") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Primary") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FieldMetadata) MarshalJSON() ([]byte, error) {
type NoMethod FieldMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FileAs: The name that should be used to sort the person in a list.
type FileAs struct {
// Metadata: Metadata about the file-as.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The file-as value
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FileAs) MarshalJSON() ([]byte, error) {
type NoMethod FileAs
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Gender: A person's gender.
type Gender struct {
// AddressMeAs: The type of pronouns that should be used to address the
// person. The value can be custom or one of these predefined values: *
// `male` * `female` * `other`
AddressMeAs string `json:"addressMeAs,omitempty"`
// FormattedValue: Output only. The value of the gender translated and
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale. Unspecified or custom value are not localized.
FormattedValue string `json:"formattedValue,omitempty"`
// Metadata: Metadata about the gender.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The gender for the person. The gender can be custom or one of
// these predefined values: * `male` * `female` * `unspecified`
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "AddressMeAs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AddressMeAs") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Gender) MarshalJSON() ([]byte, error) {
type NoMethod Gender
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GetPeopleResponse: The response to a get request for a list of people
// by resource name.
type GetPeopleResponse struct {
// Responses: The response for each requested resource name.
Responses []*PersonResponse `json:"responses,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Responses") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Responses") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GetPeopleResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetPeopleResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ImClient: A person's instant messaging client.
type ImClient struct {
// FormattedProtocol: Output only. The protocol of the IM client
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedProtocol string `json:"formattedProtocol,omitempty"`
// FormattedType: Output only. The type of the IM client translated and
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the IM client.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Protocol: The protocol of the IM client. The protocol can be custom
// or one of these predefined values: * `aim` * `msn` * `yahoo` *
// `skype` * `qq` * `googleTalk` * `icq` * `jabber` * `netMeeting`
Protocol string `json:"protocol,omitempty"`
// Type: The type of the IM client. The type can be custom or one of
// these predefined values: * `home` * `work` * `other`
Type string `json:"type,omitempty"`
// Username: The user name used in the IM client.
Username string `json:"username,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedProtocol")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedProtocol") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ImClient) MarshalJSON() ([]byte, error) {
type NoMethod ImClient
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Interest: One of the person's interests.
type Interest struct {
// Metadata: Metadata about the interest.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The interest; for example, `stargazing`.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Interest) MarshalJSON() ([]byte, error) {
type NoMethod Interest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListConnectionsResponse: The response to a request for the
// authenticated user's connections.
type ListConnectionsResponse struct {
// Connections: The list of people that the requestor is connected to.
Connections []*Person `json:"connections,omitempty"`
// NextPageToken: A token, which can be sent as `page_token` to retrieve
// the next page. If this field is omitted, there are no subsequent
// pages.
NextPageToken string `json:"nextPageToken,omitempty"`
// NextSyncToken: A token, which can be sent as `sync_token` to retrieve
// changes since the last request. Request must set `request_sync_token`
// to return the sync token.
NextSyncToken string `json:"nextSyncToken,omitempty"`
// TotalItems: The total number of items in the list without pagination.
TotalItems int64 `json:"totalItems,omitempty"`
// TotalPeople: **DEPRECATED** (Please use totalItems) The total number
// of people in the list without pagination.
TotalPeople int64 `json:"totalPeople,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Connections") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Connections") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListConnectionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListConnectionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListContactGroupsResponse: The response to a list contact groups
// request.
type ListContactGroupsResponse struct {
// ContactGroups: The list of contact groups. Members of the contact
// groups are not populated.
ContactGroups []*ContactGroup `json:"contactGroups,omitempty"`
// NextPageToken: The token that can be used to retrieve the next page
// of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// NextSyncToken: The token that can be used to retrieve changes since
// the last request.
NextSyncToken string `json:"nextSyncToken,omitempty"`
// TotalItems: The total number of items in the list without pagination.
TotalItems int64 `json:"totalItems,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ContactGroups") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContactGroups") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListContactGroupsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListContactGroupsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListDirectoryPeopleResponse: The response to a request for the
// authenticated user's domain directory.
type ListDirectoryPeopleResponse struct {
// NextPageToken: A token, which can be sent as `page_token` to retrieve
// the next page. If this field is omitted, there are no subsequent
// pages.
NextPageToken string `json:"nextPageToken,omitempty"`
// NextSyncToken: A token, which can be sent as `sync_token` to retrieve
// changes since the last request. Request must set `request_sync_token`
// to return the sync token.
NextSyncToken string `json:"nextSyncToken,omitempty"`
// People: The list of people in the domain directory.
People []*Person `json:"people,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListDirectoryPeopleResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListDirectoryPeopleResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListOtherContactsResponse: The response to a request for the
// authenticated user's "Other contacts".
type ListOtherContactsResponse struct {
// NextPageToken: A token, which can be sent as `page_token` to retrieve
// the next page. If this field is omitted, there are no subsequent
// pages.
NextPageToken string `json:"nextPageToken,omitempty"`
// NextSyncToken: A token, which can be sent as `sync_token` to retrieve
// changes since the last request. Request must set `request_sync_token`
// to return the sync token.
NextSyncToken string `json:"nextSyncToken,omitempty"`
// OtherContacts: The list of "Other contacts" returned as Person
// resources. "Other contacts" support a limited subset of fields. See
// ListOtherContactsRequest.request_mask for more detailed information.
OtherContacts []*Person `json:"otherContacts,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListOtherContactsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListOtherContactsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Locale: A person's locale preference.
type Locale struct {
// Metadata: Metadata about the locale.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The well-formed [IETF BCP
// 47](https://tools.ietf.org/html/bcp47) language tag representing the
// locale.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Locale) MarshalJSON() ([]byte, error) {
type NoMethod Locale
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Location: A person's location.
type Location struct {
// BuildingId: The building identifier.
BuildingId string `json:"buildingId,omitempty"`
// Current: Whether the location is the current location.
Current bool `json:"current,omitempty"`
// DeskCode: The individual desk location.
DeskCode string `json:"deskCode,omitempty"`
// Floor: The floor name or number.
Floor string `json:"floor,omitempty"`
// FloorSection: The floor section in `floor_name`.
FloorSection string `json:"floorSection,omitempty"`
// Metadata: Metadata about the location.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the location. The type can be custom or one of
// these predefined values: * `desk` * `grewUp`
Type string `json:"type,omitempty"`
// Value: The free-form value of the location.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "BuildingId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BuildingId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Location) MarshalJSON() ([]byte, error) {
type NoMethod Location
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Membership: A person's membership in a group. Only contact group
// memberships can be modified.
type Membership struct {
// ContactGroupMembership: The contact group membership.
ContactGroupMembership *ContactGroupMembership `json:"contactGroupMembership,omitempty"`
// DomainMembership: Output only. The domain membership.
DomainMembership *DomainMembership `json:"domainMembership,omitempty"`
// Metadata: Metadata about the membership.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "ContactGroupMembership") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContactGroupMembership")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Membership) MarshalJSON() ([]byte, error) {
type NoMethod Membership
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MiscKeyword: A person's miscellaneous keyword.
type MiscKeyword struct {
// FormattedType: Output only. The type of the miscellaneous keyword
// translated and formatted in the viewer's account locale or the
// `Accept-Language` HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the miscellaneous keyword.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The miscellaneous keyword type.
//
// Possible values:
// "TYPE_UNSPECIFIED" - Unspecified.
// "OUTLOOK_BILLING_INFORMATION" - Outlook field for billing
// information.
// "OUTLOOK_DIRECTORY_SERVER" - Outlook field for directory server.
// "OUTLOOK_KEYWORD" - Outlook field for keyword.
// "OUTLOOK_MILEAGE" - Outlook field for mileage.
// "OUTLOOK_PRIORITY" - Outlook field for priority.
// "OUTLOOK_SENSITIVITY" - Outlook field for sensitivity.
// "OUTLOOK_SUBJECT" - Outlook field for subject.
// "OUTLOOK_USER" - Outlook field for user.
// "HOME" - Home.
// "WORK" - Work.
// "OTHER" - Other.
Type string `json:"type,omitempty"`
// Value: The value of the miscellaneous keyword.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *MiscKeyword) MarshalJSON() ([]byte, error) {
type NoMethod MiscKeyword
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ModifyContactGroupMembersRequest: A request to modify an existing
// contact group's members. Contacts can be removed from any group but
// they can only be added to a user group or "myContacts" or "starred"
// system groups.
type ModifyContactGroupMembersRequest struct {
// ResourceNamesToAdd: Optional. The resource names of the contact
// people to add in the form of `people/{person_id}`.
ResourceNamesToAdd []string `json:"resourceNamesToAdd,omitempty"`
// ResourceNamesToRemove: Optional. The resource names of the contact
// people to remove in the form of `people/{person_id}`.
ResourceNamesToRemove []string `json:"resourceNamesToRemove,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceNamesToAdd")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceNamesToAdd") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ModifyContactGroupMembersRequest) MarshalJSON() ([]byte, error) {
type NoMethod ModifyContactGroupMembersRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ModifyContactGroupMembersResponse: The response to a modify contact
// group members request.
type ModifyContactGroupMembersResponse struct {
// CanNotRemoveLastContactGroupResourceNames: The contact people
// resource names that cannot be removed from their last contact group.
CanNotRemoveLastContactGroupResourceNames []string `json:"canNotRemoveLastContactGroupResourceNames,omitempty"`
// NotFoundResourceNames: The contact people resource names that were
// not found.
NotFoundResourceNames []string `json:"notFoundResourceNames,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "CanNotRemoveLastContactGroupResourceNames") to unconditionally
// include in API requests. By default, fields with empty values are
// omitted from API requests. However, any non-pointer, non-interface
// field appearing in ForceSendFields will be sent to the server
// regardless of whether the field is empty or not. This may be used to
// include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "CanNotRemoveLastContactGroupResourceNames") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ModifyContactGroupMembersResponse) MarshalJSON() ([]byte, error) {
type NoMethod ModifyContactGroupMembersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Name: A person's name. If the name is a mononym, the family name is
// empty.
type Name struct {
// DisplayName: Output only. The display name formatted according to the
// locale specified by the viewer's account or the `Accept-Language`
// HTTP header.
DisplayName string `json:"displayName,omitempty"`
// DisplayNameLastFirst: Output only. The display name with the last
// name first formatted according to the locale specified by the
// viewer's account or the `Accept-Language` HTTP header.
DisplayNameLastFirst string `json:"displayNameLastFirst,omitempty"`
// FamilyName: The family name.
FamilyName string `json:"familyName,omitempty"`
// GivenName: The given name.
GivenName string `json:"givenName,omitempty"`
// HonorificPrefix: The honorific prefixes, such as `Mrs.` or `Dr.`
HonorificPrefix string `json:"honorificPrefix,omitempty"`
// HonorificSuffix: The honorific suffixes, such as `Jr.`
HonorificSuffix string `json:"honorificSuffix,omitempty"`
// Metadata: Metadata about the name.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// MiddleName: The middle name(s).
MiddleName string `json:"middleName,omitempty"`
// PhoneticFamilyName: The family name spelled as it sounds.
PhoneticFamilyName string `json:"phoneticFamilyName,omitempty"`
// PhoneticFullName: The full name spelled as it sounds.
PhoneticFullName string `json:"phoneticFullName,omitempty"`
// PhoneticGivenName: The given name spelled as it sounds.
PhoneticGivenName string `json:"phoneticGivenName,omitempty"`
// PhoneticHonorificPrefix: The honorific prefixes spelled as they
// sound.
PhoneticHonorificPrefix string `json:"phoneticHonorificPrefix,omitempty"`
// PhoneticHonorificSuffix: The honorific suffixes spelled as they
// sound.
PhoneticHonorificSuffix string `json:"phoneticHonorificSuffix,omitempty"`
// PhoneticMiddleName: The middle name(s) spelled as they sound.
PhoneticMiddleName string `json:"phoneticMiddleName,omitempty"`
// UnstructuredName: The free form name value.
UnstructuredName string `json:"unstructuredName,omitempty"`
// ForceSendFields is a list of field names (e.g. "DisplayName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DisplayName") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Name) MarshalJSON() ([]byte, error) {
type NoMethod Name
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Nickname: A person's nickname.
type Nickname struct {
// Metadata: Metadata about the nickname.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the nickname.
//
// Possible values:
// "DEFAULT" - Generic nickname.
// "MAIDEN_NAME" - Maiden name or birth family name. Used when the
// person's family name has changed as a result of marriage.
// "INITIALS" - Initials.
// "GPLUS" - Google+ profile nickname.
// "OTHER_NAME" - A professional affiliation or other name; for
// example, `Dr. Smith.`
// "ALTERNATE_NAME" - Alternate name person is known by.
// "SHORT_NAME" - A shorter version of the person's name.
Type string `json:"type,omitempty"`
// Value: The nickname.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Nickname) MarshalJSON() ([]byte, error) {
type NoMethod Nickname
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Occupation: A person's occupation.
type Occupation struct {
// Metadata: Metadata about the occupation.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The occupation; for example, `carpenter`.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Occupation) MarshalJSON() ([]byte, error) {
type NoMethod Occupation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Organization: A person's past or current organization. Overlapping
// date ranges are permitted.
type Organization struct {
// Current: True if the organization is the person's current
// organization; false if the organization is a past organization.
Current bool `json:"current,omitempty"`
// Department: The person's department at the organization.
Department string `json:"department,omitempty"`
// Domain: The domain name associated with the organization; for
// example, `google.com`.
Domain string `json:"domain,omitempty"`
// EndDate: The end date when the person left the organization.
EndDate *Date `json:"endDate,omitempty"`
// FormattedType: Output only. The type of the organization translated
// and formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// JobDescription: The person's job description at the organization.
JobDescription string `json:"jobDescription,omitempty"`
// Location: The location of the organization office the person works
// at.
Location string `json:"location,omitempty"`
// Metadata: Metadata about the organization.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Name: The name of the organization.
Name string `json:"name,omitempty"`
// PhoneticName: The phonetic name of the organization.
PhoneticName string `json:"phoneticName,omitempty"`
// StartDate: The start date when the person joined the organization.
StartDate *Date `json:"startDate,omitempty"`
// Symbol: The symbol associated with the organization; for example, a
// stock ticker symbol, abbreviation, or acronym.
Symbol string `json:"symbol,omitempty"`
// Title: The person's job title at the organization.
Title string `json:"title,omitempty"`
// Type: The type of the organization. The type can be custom or one of
// these predefined values: * `work` * `school`
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Current") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Current") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Organization) MarshalJSON() ([]byte, error) {
type NoMethod Organization
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Person: Information about a person merged from various data sources
// such as the authenticated user's contacts and profile data. Most
// fields can have multiple items. The items in a field have no
// guaranteed order, but each non-empty field is guaranteed to have
// exactly one field with `metadata.primary` set to true.
type Person struct {
// Addresses: The person's street addresses.
Addresses []*Address `json:"addresses,omitempty"`
// AgeRange: Output only. **DEPRECATED** (Please use `person.ageRanges`
// instead) The person's age range.
//
// Possible values:
// "AGE_RANGE_UNSPECIFIED" - Unspecified.
// "LESS_THAN_EIGHTEEN" - Younger than eighteen.
// "EIGHTEEN_TO_TWENTY" - Between eighteen and twenty.
// "TWENTY_ONE_OR_OLDER" - Twenty-one and older.
AgeRange string `json:"ageRange,omitempty"`
// AgeRanges: Output only. The person's age ranges.
AgeRanges []*AgeRangeType `json:"ageRanges,omitempty"`
// Biographies: The person's biographies. This field is a singleton for
// contact sources.
Biographies []*Biography `json:"biographies,omitempty"`
// Birthdays: The person's birthdays. This field is a singleton for
// contact sources.
Birthdays []*Birthday `json:"birthdays,omitempty"`
// BraggingRights: **DEPRECATED**: No data will be returned The person's
// bragging rights.
BraggingRights []*BraggingRights `json:"braggingRights,omitempty"`
// CalendarUrls: The person's calendar URLs.
CalendarUrls []*CalendarUrl `json:"calendarUrls,omitempty"`
// ClientData: The person's client data.
ClientData []*ClientData `json:"clientData,omitempty"`
// CoverPhotos: Output only. The person's cover photos.
CoverPhotos []*CoverPhoto `json:"coverPhotos,omitempty"`
// EmailAddresses: The person's email addresses.
EmailAddresses []*EmailAddress `json:"emailAddresses,omitempty"`
// Etag: The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag)
// of the resource. Used for web cache validation.
Etag string `json:"etag,omitempty"`
// Events: The person's events.
Events []*Event `json:"events,omitempty"`
// ExternalIds: The person's external IDs.
ExternalIds []*ExternalId `json:"externalIds,omitempty"`
// FileAses: The person's file-ases.
FileAses []*FileAs `json:"fileAses,omitempty"`
// Genders: The person's genders. This field is a singleton for contact
// sources.
Genders []*Gender `json:"genders,omitempty"`
// ImClients: The person's instant messaging clients.
ImClients []*ImClient `json:"imClients,omitempty"`
// Interests: The person's interests.
Interests []*Interest `json:"interests,omitempty"`
// Locales: The person's locale preferences.
Locales []*Locale `json:"locales,omitempty"`
// Locations: The person's locations.
Locations []*Location `json:"locations,omitempty"`
// Memberships: The person's group memberships.
Memberships []*Membership `json:"memberships,omitempty"`
// Metadata: Output only. Metadata about the person.
Metadata *PersonMetadata `json:"metadata,omitempty"`
// MiscKeywords: The person's miscellaneous keywords.
MiscKeywords []*MiscKeyword `json:"miscKeywords,omitempty"`
// Names: The person's names. This field is a singleton for contact
// sources.
Names []*Name `json:"names,omitempty"`
// Nicknames: The person's nicknames.
Nicknames []*Nickname `json:"nicknames,omitempty"`
// Occupations: The person's occupations.
Occupations []*Occupation `json:"occupations,omitempty"`
// Organizations: The person's past or current organizations.
Organizations []*Organization `json:"organizations,omitempty"`
// PhoneNumbers: The person's phone numbers.
PhoneNumbers []*PhoneNumber `json:"phoneNumbers,omitempty"`
// Photos: Output only. The person's photos.
Photos []*Photo `json:"photos,omitempty"`
// Relations: The person's relations.
Relations []*Relation `json:"relations,omitempty"`
// RelationshipInterests: Output only. **DEPRECATED**: No data will be
// returned The person's relationship interests.
RelationshipInterests []*RelationshipInterest `json:"relationshipInterests,omitempty"`
// RelationshipStatuses: Output only. **DEPRECATED**: No data will be
// returned The person's relationship statuses.
RelationshipStatuses []*RelationshipStatus `json:"relationshipStatuses,omitempty"`
// Residences: **DEPRECATED**: (Please use `person.locations` instead)
// The person's residences.
Residences []*Residence `json:"residences,omitempty"`
// ResourceName: The resource name for the person, assigned by the
// server. An ASCII string with a max length of 27 characters, in the
// form of `people/{person_id}`.
ResourceName string `json:"resourceName,omitempty"`
// SipAddresses: The person's SIP addresses.
SipAddresses []*SipAddress `json:"sipAddresses,omitempty"`
// Skills: The person's skills.
Skills []*Skill `json:"skills,omitempty"`
// Taglines: Output only. **DEPRECATED**: No data will be returned The
// person's taglines.
Taglines []*Tagline `json:"taglines,omitempty"`
// Urls: The person's associated URLs.
Urls []*Url `json:"urls,omitempty"`
// UserDefined: The person's user defined data.
UserDefined []*UserDefined `json:"userDefined,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Addresses") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Addresses") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Person) MarshalJSON() ([]byte, error) {
type NoMethod Person
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PersonMetadata: The metadata about a person.
type PersonMetadata struct {
// Deleted: Output only. True if the person resource has been deleted.
// Populated only for
// [`connections.list`](/people/api/rest/v1/people.connections/list)
// requests that include a sync token.
Deleted bool `json:"deleted,omitempty"`
// LinkedPeopleResourceNames: Output only. Resource names of people
// linked to this resource.
LinkedPeopleResourceNames []string `json:"linkedPeopleResourceNames,omitempty"`
// ObjectType: Output only. **DEPRECATED** (Please use
// `person.metadata.sources.profileMetadata.objectType` instead) The
// type of the person object.
//
// Possible values:
// "OBJECT_TYPE_UNSPECIFIED" - Unspecified.
// "PERSON" - Person.
// "PAGE" - [Google+ Page.](http://www.google.com/+/brands/)
ObjectType string `json:"objectType,omitempty"`
// PreviousResourceNames: Output only. Any former resource names this
// person has had. Populated only for
// [`connections.list`](/people/api/rest/v1/people.connections/list)
// requests that include a sync token. The resource name may change when
// adding or removing fields that link a contact and profile such as a
// verified email, verified phone number, or profile URL.
PreviousResourceNames []string `json:"previousResourceNames,omitempty"`
// Sources: The sources of data for the person.
Sources []*Source `json:"sources,omitempty"`
// ForceSendFields is a list of field names (e.g. "Deleted") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Deleted") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *PersonMetadata) MarshalJSON() ([]byte, error) {
type NoMethod PersonMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PersonResponse: The response for a single person
type PersonResponse struct {
// HttpStatusCode: **DEPRECATED** (Please use status instead) [HTTP 1.1
// status code]
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
HttpStatusCode int64 `json:"httpStatusCode,omitempty"`
// Person: The person.
Person *Person `json:"person,omitempty"`
// RequestedResourceName: The original requested resource name. May be
// different than the resource name on the returned person. The resource
// name can change when adding or removing fields that link a contact
// and profile such as a verified email, verified phone number, or a
// profile URL.
RequestedResourceName string `json:"requestedResourceName,omitempty"`
// Status: The status of the response.
Status *Status `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "HttpStatusCode") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "HttpStatusCode") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *PersonResponse) MarshalJSON() ([]byte, error) {
type NoMethod PersonResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PhoneNumber: A person's phone number.
type PhoneNumber struct {
// CanonicalForm: Output only. The canonicalized [ITU-T
// E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.
// pdf) form of the phone number.
CanonicalForm string `json:"canonicalForm,omitempty"`
// FormattedType: Output only. The type of the phone number translated
// and formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the phone number.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the phone number. The type can be custom or one of
// these predefined values: * `home` * `work` * `mobile` * `homeFax` *
// `workFax` * `otherFax` * `pager` * `workMobile` * `workPager` *
// `main` * `googleVoice` * `other`
Type string `json:"type,omitempty"`
// Value: The phone number.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "CanonicalForm") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CanonicalForm") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *PhoneNumber) MarshalJSON() ([]byte, error) {
type NoMethod PhoneNumber
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Photo: A person's photo. A picture shown next to the person's name to
// help others recognize the person.
type Photo struct {
// Default: True if the photo is a default photo; false if the photo is
// a user-provided photo.
Default bool `json:"default,omitempty"`
// Metadata: Metadata about the photo.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Url: The URL of the photo. You can change the desired size by
// appending a query parameter `sz={size}` at the end of the url, where
// {size} is the size in pixels. Example:
// https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "Default") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Default") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Photo) MarshalJSON() ([]byte, error) {
type NoMethod Photo
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ProfileMetadata: The metadata about a profile.
type ProfileMetadata struct {
// ObjectType: Output only. The profile object type.
//
// Possible values:
// "OBJECT_TYPE_UNSPECIFIED" - Unspecified.
// "PERSON" - Person.
// "PAGE" - [Google+ Page.](http://www.google.com/+/brands/)
ObjectType string `json:"objectType,omitempty"`
// UserTypes: Output only. The user types.
//
// Possible values:
// "USER_TYPE_UNKNOWN" - The user type is not known.
// "GOOGLE_USER" - The user is a Google user.
// "GPLUS_USER" - The user is a Google+ user.
// "GOOGLE_APPS_USER" - The user is a G Suite user.
UserTypes []string `json:"userTypes,omitempty"`
// ForceSendFields is a list of field names (e.g. "ObjectType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ObjectType") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ProfileMetadata) MarshalJSON() ([]byte, error) {
type NoMethod ProfileMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Relation: A person's relation to another person.
type Relation struct {
// FormattedType: Output only. The type of the relation translated and
// formatted in the viewer's account locale or the locale specified in
// the Accept-Language HTTP header.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the relation.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Person: The name of the other person this relation refers to.
Person string `json:"person,omitempty"`
// Type: The person's relation to the other person. The type can be
// custom or one of these predefined values: * `spouse` * `child` *
// `mother` * `father` * `parent` * `brother` * `sister` * `friend` *
// `relative` * `domesticPartner` * `manager` * `assistant` *
// `referredBy` * `partner`
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Relation) MarshalJSON() ([]byte, error) {
type NoMethod Relation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RelationshipInterest: **DEPRECATED**: No data will be returned A
// person's relationship interest .
type RelationshipInterest struct {
// FormattedValue: Output only. The value of the relationship interest
// translated and formatted in the viewer's account locale or the locale
// specified in the Accept-Language HTTP header.
FormattedValue string `json:"formattedValue,omitempty"`
// Metadata: Metadata about the relationship interest.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The kind of relationship the person is looking for. The value
// can be custom or one of these predefined values: * `friend` * `date`
// * `relationship` * `networking`
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedValue") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedValue") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *RelationshipInterest) MarshalJSON() ([]byte, error) {
type NoMethod RelationshipInterest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RelationshipStatus: **DEPRECATED**: No data will be returned A
// person's relationship status.
type RelationshipStatus struct {
// FormattedValue: Output only. The value of the relationship status
// translated and formatted in the viewer's account locale or the
// `Accept-Language` HTTP header locale.
FormattedValue string `json:"formattedValue,omitempty"`
// Metadata: Metadata about the relationship status.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The relationship status. The value can be custom or one of
// these predefined values: * `single` * `inARelationship` * `engaged` *
// `married` * `itsComplicated` * `openRelationship` * `widowed` *
// `inDomesticPartnership` * `inCivilUnion`
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedValue") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedValue") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *RelationshipStatus) MarshalJSON() ([]byte, error) {
type NoMethod RelationshipStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Residence: **DEPRECATED**: Please use `person.locations` instead. A
// person's past or current residence.
type Residence struct {
// Current: True if the residence is the person's current residence;
// false if the residence is a past residence.
Current bool `json:"current,omitempty"`
// Metadata: Metadata about the residence.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The address of the residence.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Current") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Current") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Residence) MarshalJSON() ([]byte, error) {
type NoMethod Residence
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SearchDirectoryPeopleResponse: The response to a request for people
// in the authenticated user's domain directory that match the specified
// query.
type SearchDirectoryPeopleResponse struct {
// NextPageToken: A token, which can be sent as `page_token` to retrieve
// the next page. If this field is omitted, there are no subsequent
// pages.
NextPageToken string `json:"nextPageToken,omitempty"`
// People: The list of people in the domain directory that match the
// query.
People []*Person `json:"people,omitempty"`
// TotalSize: The total number of items in the list without pagination.
TotalSize int64 `json:"totalSize,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SearchDirectoryPeopleResponse) MarshalJSON() ([]byte, error) {
type NoMethod SearchDirectoryPeopleResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SipAddress: A person's SIP address. Session Initial Protocol
// addresses are used for VoIP communications to make voice or video
// calls over the internet.
type SipAddress struct {
// FormattedType: Output only. The type of the SIP address translated
// and formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the SIP address.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the SIP address. The type can be custom or or one
// of these predefined values: * `home` * `work` * `mobile` * `other`
Type string `json:"type,omitempty"`
// Value: The SIP address in the [RFC 3261
// 19.1](https://tools.ietf.org/html/rfc3261#section-19.1) SIP URI
// format.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SipAddress) MarshalJSON() ([]byte, error) {
type NoMethod SipAddress
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Skill: A skill that the person has.
type Skill struct {
// Metadata: Metadata about the skill.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The skill; for example, `underwater basket weaving`.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Skill) MarshalJSON() ([]byte, error) {
type NoMethod Skill
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Source: The source of a field.
type Source struct {
// Etag: **Only populated in `person.metadata.sources`.** The [HTTP
// entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source.
// Used for web cache validation.
Etag string `json:"etag,omitempty"`
// Id: The unique identifier within the source type generated by the
// server.
Id string `json:"id,omitempty"`
// ProfileMetadata: Output only. **Only populated in
// `person.metadata.sources`.** Metadata about a source of type PROFILE.
ProfileMetadata *ProfileMetadata `json:"profileMetadata,omitempty"`
// Type: The source type.
//
// Possible values:
// "SOURCE_TYPE_UNSPECIFIED" - Unspecified.
// "ACCOUNT" - [Google Account](https://accounts.google.com).
// "PROFILE" - [Google profile](https://profiles.google.com). You can
// view the profile at
// [https://profiles.google.com/](https://profiles.google.com/){id},
// where {id} is the source id.
// "DOMAIN_PROFILE" - [G Suite domain
// profile](https://support.google.com/a/answer/1628008).
// "CONTACT" - [Google contact](https://contacts.google.com). You can
// view the contact at
// [https://contact.google.com/](https://contact.google.com/){id}, where
// {id} is the source id.
// "OTHER_CONTACT" - [Google "Other
// contact"](https://contacts.google.com/other).
// "DOMAIN_CONTACT" - [G Suite domain shared
// contact](https://support.google.com/a/answer/9281635).
Type string `json:"type,omitempty"`
// UpdateTime: Output only. **Only populated in
// `person.metadata.sources`.** Last update timestamp of this source.
UpdateTime string `json:"updateTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "Etag") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Etag") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Source) MarshalJSON() ([]byte, error) {
type NoMethod Source
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Status: The `Status` type defines a logical error model that is
// suitable for different programming environments, including REST APIs
// and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each
// `Status` message contains three pieces of data: error code, error
// message, and error details. You can find out more about this error
// model and how to work with it in the [API Design
// Guide](https://cloud.google.com/apis/design/errors).
type Status struct {
// Code: The status code, which should be an enum value of
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
// Details: A list of messages that carry the error details. There is a
// common set of message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
// English. Any user-facing error message should be localized and sent
// in the google.rpc.Status.details field, or localized by the client.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Status) MarshalJSON() ([]byte, error) {
type NoMethod Status
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Tagline: **DEPRECATED**: No data will be returned A brief one-line
// description of the person.
type Tagline struct {
// Metadata: Metadata about the tagline.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The tagline.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Metadata") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Tagline) MarshalJSON() ([]byte, error) {
type NoMethod Tagline
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UpdateContactGroupRequest: A request to update an existing user
// contact group. All updated fields will be replaced.
type UpdateContactGroupRequest struct {
// ContactGroup: Required. The contact group to update.
ContactGroup *ContactGroup `json:"contactGroup,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContactGroup") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContactGroup") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UpdateContactGroupRequest) MarshalJSON() ([]byte, error) {
type NoMethod UpdateContactGroupRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UpdateContactPhotoRequest: A request to update an existing contact's
// photo. All requests must have a valid photo format: JPEG or PNG.
type UpdateContactPhotoRequest struct {
// PersonFields: Optional. A field mask to restrict which fields on the
// person are returned. Multiple fields can be specified by separating
// them with commas. Defaults to empty if not set, which will skip the
// post mutate get. Valid values are: * addresses * ageRanges *
// biographies * birthdays * calendarUrls * clientData * coverPhotos *
// emailAddresses * events * externalIds * genders * imClients *
// interests * locales * locations * memberships * metadata *
// miscKeywords * names * nicknames * occupations * organizations *
// phoneNumbers * photos * relations * sipAddresses * skills * urls *
// userDefined
PersonFields string `json:"personFields,omitempty"`
// PhotoBytes: Required. Raw photo bytes
PhotoBytes string `json:"photoBytes,omitempty"`
// Sources: Optional. A mask of what source types to return. Defaults to
// ReadSourceType.CONTACT and ReadSourceType.PROFILE if not set.
//
// Possible values:
// "READ_SOURCE_TYPE_UNSPECIFIED" - Unspecified.
// "READ_SOURCE_TYPE_PROFILE" - Returns SourceType.ACCOUNT,
// SourceType.DOMAIN_PROFILE, and SourceType.PROFILE.
// "READ_SOURCE_TYPE_CONTACT" - Returns SourceType.CONTACT.
// "READ_SOURCE_TYPE_DOMAIN_CONTACT" - Returns
// SourceType.DOMAIN_CONTACT.
Sources []string `json:"sources,omitempty"`
// ForceSendFields is a list of field names (e.g. "PersonFields") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "PersonFields") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UpdateContactPhotoRequest) MarshalJSON() ([]byte, error) {
type NoMethod UpdateContactPhotoRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UpdateContactPhotoResponse: The response for updating a contact's
// photo.
type UpdateContactPhotoResponse struct {
// Person: The updated person, if person_fields is set in the
// UpdateContactPhotoRequest; otherwise this will be unset.
Person *Person `json:"person,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Person") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Person") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UpdateContactPhotoResponse) MarshalJSON() ([]byte, error) {
type NoMethod UpdateContactPhotoResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Url: A person's associated URLs.
type Url struct {
// FormattedType: Output only. The type of the URL translated and
// formatted in the viewer's account locale or the `Accept-Language`
// HTTP header locale.
FormattedType string `json:"formattedType,omitempty"`
// Metadata: Metadata about the URL.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Type: The type of the URL. The type can be custom or one of these
// predefined values: * `home` * `work` * `blog` * `profile` *
// `homePage` * `ftp` * `reservations` * `appInstallPage`: website for a
// Google+ application. * `other`
Type string `json:"type,omitempty"`
// Value: The URL.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "FormattedType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FormattedType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Url) MarshalJSON() ([]byte, error) {
type NoMethod Url
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UserDefined: Arbitrary user data that is populated by the end users.
type UserDefined struct {
// Key: The end user specified key of the user defined data.
Key string `json:"key,omitempty"`
// Metadata: Metadata about the user defined data.
Metadata *FieldMetadata `json:"metadata,omitempty"`
// Value: The end user specified value of the user defined data.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UserDefined) MarshalJSON() ([]byte, error) {
type NoMethod UserDefined
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// method id "people.contactGroups.batchGet":
type ContactGroupsBatchGetCall struct {
s *Service
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// BatchGet: Get a list of contact groups owned by the authenticated
// user by specifying a list of contact group resource names.
func (r *ContactGroupsService) BatchGet() *ContactGroupsBatchGetCall {
c := &ContactGroupsBatchGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
return c
}
// MaxMembers sets the optional parameter "maxMembers": Specifies the
// maximum number of members to return for each group. Defaults to 0 if
// not set, which will return zero members.
func (c *ContactGroupsBatchGetCall) MaxMembers(maxMembers int64) *ContactGroupsBatchGetCall {
c.urlParams_.Set("maxMembers", fmt.Sprint(maxMembers))
return c
}
// ResourceNames sets the optional parameter "resourceNames": Required.
// The resource names of the contact groups to get.
func (c *ContactGroupsBatchGetCall) ResourceNames(resourceNames ...string) *ContactGroupsBatchGetCall {
c.urlParams_.SetMulti("resourceNames", append([]string{}, resourceNames...))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *ContactGroupsBatchGetCall) Fields(s ...googleapi.Field) *ContactGroupsBatchGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func (c *ContactGroupsBatchGetCall) IfNoneMatch(entityTag string) *ContactGroupsBatchGetCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *ContactGroupsBatchGetCall) Context(ctx context.Context) *ContactGroupsBatchGetCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *ContactGroupsBatchGetCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ContactGroupsBatchGetCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/contactGroups:batchGet")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "people.contactGroups.batchGet" call.
// Exactly one of *BatchGetContactGroupsResponse or error will be
// non-nil. Any non-2xx status code is an error. Response headers are in
// either *BatchGetContactGroupsResponse.ServerResponse.Header or (if a
// response was returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func (c *ContactGroupsBatchGetCall) Do(opts ...googleapi.CallOption) (*BatchGetContactGroupsResponse, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
}
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, err
}
ret := &BatchGetContactGroupsResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource names.",
// "flatPath": "v1/contactGroups:batchGet",
// "httpMethod": "GET",
// "id": "people.contactGroups.batchGet",
// "parameterOrder": [],
// "parameters": {
// "maxMembers": {
// "description": "Optional. Specifies the maximum number of members to return for each group. Defaults to 0 if not set, which will return zero members.",
// "format": "int32",
// "location": "query",
// "type": "integer"
// },
// "resourceNames": {
// "description": "Required. The resource names of the contact groups to get.",
// "location": "query",
// "repeated": true,
// "type": "string"
// }
// },
// "path": "v1/contactGroups:batchGet",
// "response": {
// "$ref": "BatchGetContactGroupsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/contacts",
// "https://www.googleapis.com/auth/contacts.readonly"
// ]
// }
}
// method id "people.contactGroups.create":
type ContactGroupsCreateCall struct {
s *Service
createcontactgrouprequest *CreateContactGroupRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Create: Create a new contact group owned by the authenticated user.
func (r *ContactGroupsService) Create(createcontactgrouprequest *CreateContactGroupRequest) *ContactGroupsCreateCall {
c := &ContactGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.createcontactgrouprequest = createcontactgrouprequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *ContactGroupsCreateCall) Fields(s ...googleapi.Field) *ContactGroupsCreateCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *ContactGroupsCreateCall) Context(ctx context.Context) *ContactGroupsCreateCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *ContactGroupsCreateCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ContactGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.createcontactgrouprequest)
if err != nil {
return nil, err
}
reqHeaders.Set("Content-Type", "application/json")
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/contactGroups")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "people.contactGroups.create" call.
// Exactly one of *ContactGroup or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *ContactGroup.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *ContactGroupsCreateCall) Do(opts ...googleapi.CallOption) (*ContactGroup, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
}
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, err
}
ret := &ContactGroup{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Create a new contact group owned by the authenticated user.",
// "flatPath": "v1/contactGroups",
// "httpMethod": "POST",
// "id": "people.contactGroups.create",
// "parameterOrder": [],
// "parameters": {},
// "path": "v1/contactGroups",
// "request": {
// "$ref": "CreateContactGroupRequest"
// },
// "response": {
// "$ref": "ContactGroup"
// },
// "scopes": [
// "https://www.googleapis.com/auth/contacts"
// ]
// }
}
// method id "people.contactGroups.delete":
type ContactGroupsDeleteCall struct {
s *Service
resourceName string
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Delete: Delete an existing contact group owned by the authenticated
// user by specifying a contact group resource name.
func (r *ContactGroupsService) Delete(resourceName string) *ContactGroupsDeleteCall {
c := &ContactGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.resourceName = resourceName
return c
}
// DeleteContacts sets the optional parameter "deleteContacts": Set to
// true to also delete the contacts in the specified group.
func (c *ContactGroupsDeleteCall) DeleteContacts(deleteContacts bool) *ContactGroupsDeleteCall {
c.urlParams_.Set("deleteContacts", fmt.Sprint(deleteContacts))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *ContactGroupsDeleteCall) Fields(s ...googleapi.Field) *ContactGroupsDeleteCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *ContactGroupsDeleteCall) Context(ctx context.Context) *ContactGroupsDeleteCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *ContactGroupsDeleteCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ContactGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resourceName}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("DELETE", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"resourceName": c.resourceName,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "people.contactGroups.delete" call.
// Exactly one of *Empty or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Empty.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func (c *ContactGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
}
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, err
}
ret := &Empty{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Delete an existing contact group owned by the authenticated user by specifying a contact group resource name.",
// "flatPath": "v1/contactGroups/{contactGroupsId}",
// "httpMethod": "DELETE",
// "id": "people.contactGroups.delete",
// "parameterOrder": [
// "resourceName"
// ],
// "parameters": {
// "deleteContacts": {
// "description": "Optional. Set to true to also delete the contacts in the specified group.",
// "location": "query",
// "type": "boolean"
// },
// "resourceName": {
// "description": "Required. The resource name of the contact group to delete.",
// "location": "path",
// "pattern": "^contactGroups/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resourceName}",
// "response": {
// "$ref": "Empty"
// },
// "scopes": [
// "https://www.googleapis.com/auth/contacts"
// ]
// }
}
// method id "people.contactGroups.get":
type ContactGroupsGetCall struct {
s *Service
resourceName string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Get a specific contact group owned by the authenticated user by
// specifying a contact group resource name.
func (r *ContactGroupsService) Get(resourceName string) *ContactGroupsGetCall {
c := &ContactGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.resourceName = resourceName
return c
}
// MaxMembers sets the optional parameter "maxMembers": Specifies the
// maximum number of members to return. Defaults to 0 if not set, which
// will return zero members.
func (c *ContactGroupsGetCall) MaxMembers(maxMembers int64) *ContactGroupsGetCall {
c.urlParams_.Set("maxMembers", fmt.Sprint(maxMembers))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *ContactGroupsGetCall) Fields(s ...googleapi.Field) *ContactGroupsGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func (c *ContactGroupsGetCall) IfNoneMatch(entityTag string) *ContactGroupsGetCall {
c.ifNoneMatch_ = entityTag
return c
}