Overview
Configuration is provided for establishing connections with the Google People service. The configuration is used in the REST Connection Manager.
Setup
Press icon to get more information about the connection parameters.
Obtain data
Use REST Source component to get data from service resource.
Insert data
Use REST Destination component to insert data into service resource.
Quick Start
In this task, we will show you step-by-step how to create a connection to Google People REST API using COZYROC's REST Connection Manager.
Congratulations! You have now established a connection to your Google People instance.
In this guide, we will show how to read data from the Google People service resource using the COZYROC REST Source component.
In this guide, we will show how to write data to the Google People service resource using the COZYROC REST Destination component.
Step 3. Double click on the "REST Destination" component and select Google People connection from the combo. Also, select resource action and Google People resource you want to work on. Optionally you can specify the personFields in the grid below for the fields you want to get in response if the request is been successfull.
Configuration
Base URL address: https://people.googleapis.com/v1
.
- OAuth
-
The authentication uses an authorized token. The token will be refreshed with the following expression:
{{=Date.now() + (response.expires_in - 300) * 1000}}
.The authentication has the following user-defined parameters:
- Scope:
The following request parameters will be automatically processed during the authentication process:
-
Authorization:
Bearer {{=token.Access}}
Documentation: https://developers.google.com/identity/protocols/oauth2.
Based on resource template Base.
- [Read] action
-
Endpoint URL address:
/contactGroups
.
The result is extracted from:{{=response.contactGroups}}
.
The result is paginated.The following request parameters will be automatically processed:
-
pageToken:
{{=parameters.iterator}}
-
pageSize:
{{=parameters.batchSize}}
Documentation: https://developers.google.com/people/api/rest/v1/contactGroups/list.
-
pageToken:
- [Read single] action
-
Endpoint URL address:
/{{=parameters.resourceName}}
.
The result is extracted from:{{=[response]}}
.The action has the following user-defined parameters:
- resourceName: Required. Specifies file resourceName.
Documentation: https://developers.google.com/people/api/rest/v1/contactGroups/get.
- [Read batch] action
-
Endpoint URL address:
/contactGroups:batchGet
.
The result is extracted from:{{=response.responses}}
.The action has the following user-defined parameters:
- resourceNames: Required. Specify in format contactGroup/all|contactGroups/friends. Split by vertical bar (|)
The following request parameters will be automatically processed:
-
resourceNames:
{{=People.getParameterList(parameters.resourceNames)}}
Documentation: https://developers.google.com/people/api/rest/v1/contactGroups/batchGet.
- [Create] action
-
Endpoint URL address:
/contactGroups
.The following request parameters will be automatically processed:
-
application/json:
{{={ contactGroup : item } }}
Documentation: https://developers.google.com/people/api/rest/v1/contactGroups/create.
-
application/json:
- [Update] action
-
Endpoint URL address:
/{{=item.resourceName}}
.The following request parameters will be automatically processed:
-
application/json:
{{={ contactGroup : item } }}
Documentation: https://developers.google.com/people/api/rest/v1/contactGroups/update.
-
application/json:
- [Delete] action
-
Endpoint URL address:
/{{=item.resourceName}}
.
- name
Template: ShortText.
- resourceName
A key field. Template: ShortText.
- readGroupFields
Template: ShortText.
- updateGroupFields
Template: ShortText.
- etag
Template: ShortText.
- metadata
Field components:
-
Uses template:
DateTime
. - Contains the following components: updateTime, deleted.
-
Uses template:
- formattedName
Template: ShortText.
- memberResourceNames
Template: LongText. A composite field.
- groupType
Template: LongText. A composite field.
- memberCount
Data type: DT_I4
- clientData
Field components:
- An array.
- Contains the following components: key, value.
- requestedResourceName
Template: ShortText.
- status
Field components:
-
Uses template:
ShortText
. - Contains the following components: code, message, details.
-
Uses template:
- contactGroup
Field components:
-
Uses template:
ShortText
. - Contains the following components: name, resourceName, etag, metadata, formattedName, memberResourceNames, memberCount, clientData.
-
Uses template:
- modify_members
-
The value is sent to
/{{=item.resourceName}}/members:modify
address. Field components:-
Uses template:
LongText
. - Contains the following components: resourceNamesToAdd, resourceNamesToRemove.
Documentation: https://developers.google.com/people/api/rest/v1/contactGroups.members/modify.
-
Uses template:
Based on resource template Other.
- [Read] action
-
Endpoint URL address:
/otherContacts
.
The result is extracted from:{{=response.otherContacts}}
.The following request parameters will be automatically processed:
-
readMask:
{{=People.getResourceFields(parameters).join()}}
Documentation: https://developers.google.com/people/api/rest/v1/otherContacts/list.
-
readMask:
- [Read search] action
-
Endpoint URL address:
/otherContacts:search
.
The result is extracted from:{{=_.pluck(response.results, 'person')}}
.The action has the following user-defined parameters:
- query: Required. Specify the plain-text query for the request
The following request parameters will be automatically processed:
-
readMask:
{{=People.getResourceFields(parameters).join()}}
Documentation: https://developers.google.com/people/api/rest/v1/otherContacts/search.
The resource includes the fields from the PersonT template.
Based on resource template Base.
- [Create] action
-
Endpoint URL address:
/{{=item.resourceName}}/:copyOtherContactToMyContactsGroup
.Documentation: https://developers.google.com/people/api/rest/v1/otherContacts/copyOtherContactToMyContactsGroup.
- copyMask
Template: ShortText.
- resourceName
A key field. Template: ShortText.
- sources
Template: ShortText. A composite field.
- readMask
Template: ShortText.
Based on resource template Other.
- [Read] action
-
Endpoint URL address:
/people:batchGet
.
The result is extracted from:{{=_.pluck(response.responses, 'person')}}
.
The result is paginated.The action has the following user-defined parameters:
- resourceNames: Required. Specify in format people/all|people/friends. Split by vertical bar (|)
The following request parameters will be automatically processed:
-
personFields:
{{=People.getResourceFields(parameters).join()}}
-
resourceNames:
{{=People.getParameterList(parameters.resourceNames)}}
Documentation: https://developers.google.com/people/api/rest/v1/people/getBatchGet.
- [Read single] action
-
Endpoint URL address:
/{{=parameters.resourceName}}
.
The result is extracted from:{{=[response]}}
.
The result is paginated.The action has the following user-defined parameters:
- resourceName: Required. Specify in format people/me.
The following request parameters will be automatically processed:
-
personFields:
{{=People.getResourceFields(parameters).join()}}
Documentation: https://developers.google.com/people/api/rest/v1/people/get.
- [Read connection] action
-
Endpoint URL address:
/people/me/connections
.
The result is extracted from:{{=response.connections}}
.The following request parameters will be automatically processed:
-
personFields:
{{=People.getResourceFields(parameters).join()}}
Documentation: https://developers.google.com/people/api/rest/v1/people.connections/list.
-
personFields:
- [Read directory] action
-
Endpoint URL address:
/people:listDirectoryPeople
.
The result is extracted from:{{=response.people}}
.The action has the following user-defined parameters:
- sources: Required. Specify Directory sources to return in format names|addresses
The following request parameters will be automatically processed:
-
readMask:
{{=People.getResourceFields(parameters).join()}}
-
sources:
{{=People.getParameterList(parameters.sources)}}
Documentation: https://developers.google.com/people/api/rest/v1/people/listDirectoryPeople.
- [Read searchContact] action
-
Endpoint URL address:
/people:searchContacts
.
The result is extracted from:{{=_.pluck(response.results, 'people')}}
.The action has the following user-defined parameters:
- query: Required. Specify The plain-text query for the request.
The following request parameters will be automatically processed:
-
readMask:
{{=People.getResourceFields(parameters).join()}}
-
query:
{{=parameters.query}}
Documentation: https://developers.google.com/people/api/rest/v1/people/searchContacts.
- [Read searchDirectory] action
-
Endpoint URL address:
/people:searchDirectoryPeople
.
The result is extracted from:{{=response.people}}
.The action has the following user-defined parameters:
- sources: Required. Specify Directory sources to return in format names|addresses
- query: Required. Specify Prefix query that matches fields in the person
The following request parameters will be automatically processed:
-
readMask:
{{=People.getResourceFields(parameters).join()}}
-
sources:
{{=People.getParameterList(parameters.sources)}}
-
query:
{{=parameters.query}}
Documentation: https://developers.google.com/people/api/rest/v1/people/searchDirectoryPeople.
- [Create] action
-
Endpoint URL address:
/people:createContact
.The action has the following user-defined parameters:
- personFields: Required. Specify in format names|addresses|ageRanges. Split by vertical bar (|)
The following request parameters will be automatically processed:
-
personFields:
{{=People.getParameterList(parameters.personFields)}}
Documentation: https://developers.google.com/people/api/rest/v1/people/createContact.
- [Update] action
-
Endpoint URL address:
/{{=item.resourceName}}/:updateContact
.
The action uses PATCH method.The action has the following user-defined parameters:
- personFields: Required. Specify in format names|addresses|ageRanges. Split by vertical bar (|)
- updatePersonFields: Required. Specify in format names|addresses|ageRanges. Split by vertical bar (|)
The following request parameters will be automatically processed:
-
personFields:
{{=People.getParameterList(parameters.personFields)}}
-
updatePersonFields:
{{=People.getParameterList(parameters.updatePersonFields)}}
Documentation: https://developers.google.com/people/api/rest/v1/people/batchUpdateContacts.
- [Delete] action
-
Endpoint URL address:
/{{=item.resourceName}}:deleteContact
.Documentation: https://developers.google.com/people/api/rest/v1/people/deleteContact.
The resource includes the fields from the PersonT template.
- readMask
Template: ShortText.
- sources
Template: LongText. A composite field.
- contactPerson
Template: PersonT.
Based on resource template Base.
- [Update] action
-
Endpoint URL address:
/{{=item.resourceName}}/:updateContactPhoto
.
The action uses PATCH method.Documentation: https://developers.google.com/people/api/rest/v1/people/updateContactPhoto.
- [Delete] action
-
Endpoint URL address:
/{{=item.resourceName}}/:deleteContactPhoto
.Documentation: https://developers.google.com/people/api/rest/v1/people/updateContactPhoto.
- photoBytes
Data type: DT_IMAGE Before setting, the value is processed with
{{=!_.isUndefined(value) && getClrType('System.Convert').ToBase64String(value.readAll())}}
expression.- resourceName
A key field. Template: ShortText.
- sources
Template: ShortText. A composite field.
- personFields
Template: ShortText.
- [Read] action
-
The following request parameters will be automatically processed:
-
groupFields:
{{=People.getResourceFields(parameters).join()}}
-
_includeUserParameters:
{{=parameters}}
-
groupFields:
- [Create] action
-
The action uses POST method.The following request parameters will be automatically processed:
-
application/json:
{{=item}}
-
application/json:
- [Update] action
-
The action uses PUT method.The following request parameters will be automatically processed:
-
application/json:
{{=item}}
-
application/json:
- [Delete] action
-
The action uses DELETE method.
- [Read] action
-
The result is paginated.The following request parameters will be automatically processed:
-
pageToken:
{{=parameters.iterator}}
-
pageSize:
{{=parameters.batchSize}}
-
_includeUserParameters:
{{=parameters}}
-
pageToken:
- [Create] action
-
The action uses POST method.The following request parameters will be automatically processed:
-
application/json:
{{=item}}
-
application/json:
- [Update] action
-
The action uses PUT method.The following request parameters will be automatically processed:
-
application/json:
{{=item}}
-
_includeUserParameters:
{{=parameters}}
-
application/json:
- [Delete] action
-
The action uses DELETE method.
- ShortText
Data type: DT_WSTR ( length 255 )
- LongText
Data type: DT_WSTR ( length 1000 )
- DateTime
Data type: DT_DBTIMESTAMP
- personMetadataT
Field components:
- Contains the following components: primary, sourcePrimary, verified, source.
- PersonT
Field components:
-
Uses template:
ShortText
. - Contains the following components: name, etag, resourceName, metadata, addresses, ageRange, ageRanges, biographies, birthdays, braggingRights, calendarUrls, clientData, coverPhotos, emailAddresses, events, externalIds, fileAses, genders, imClients, interests, locales, locations, memberships, miscKeywords, names, nicknames, occupations, organizations, phoneNumbers, photos, relations, relationshipInterests, relationshipStatuses, residences, sipAddresses, skills, taglines, urls, userDefined.
-
Uses template:
What's New
- New: Introduced connection.
Related documentation
COZYROC SSIS+ Components Suite is free for testing in your development environment.
A licensed version can be deployed on-premises, on Azure-SSIS IR and on COZYROC Cloud.