get method

Future<Person> get(
  1. String resourceName, {
  2. String? personFields,
  3. String? requestMask_includeField,
  4. List<String>? sources,
  5. String? $fields,
})

Provides information about a person by specifying a resource name.

Use people/me to indicate the authenticated user. The request returns a 400 error if 'personFields' is not specified.

Request parameters:

resourceName - Required. The resource name of the person to provide information about. - To get information about the authenticated user, specify people/me. - To get information about a google account, specify people/{account_id}. - To get information about a contact, specify the resource name that identifies the contact as returned by people.connections.list. Value must have pattern ^people/\[^/\]+$.

personFields - Required. A field mask to restrict which fields on the person are returned. Multiple fields can be specified by separating them with commas. 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

requestMask_includeField - Required. Comma-separated list of person fields to be included in the response. Each path should start with person.: for example, person.names or person.photos.

sources - Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_PROFILE and READ_SOURCE_TYPE_CONTACT if not set.

$fields - Selector specifying which fields to include in a partial response.

Completes with a Person.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<Person> get(
  core.String resourceName, {
  core.String? personFields,
  core.String? requestMask_includeField,
  core.List<core.String>? sources,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (personFields != null) 'personFields': [personFields],
    if (requestMask_includeField != null)
      'requestMask.includeField': [requestMask_includeField],
    if (sources != null) 'sources': sources,
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/' + core.Uri.encodeFull('$resourceName');

  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return Person.fromJson(response_ as core.Map<core.String, core.dynamic>);
}