getFromWorkflowAndStepAndAssigneeSummary static method

Future<PcoCollection<PcoPeoplePerson>> getFromWorkflowAndStepAndAssigneeSummary(
  1. String workflowId,
  2. String stepId,
  3. String assigneeSummaryId, {
  4. PcoPeoplePersonQuery? query,
  5. bool getAll = false,
  6. bool includeAllRelated = false,
  7. bool includeAddresses = false,
  8. bool includeEmails = false,
  9. bool includeFieldData = false,
  10. bool includeHouseholds = false,
  11. bool includeInactiveReason = false,
  12. bool includeMaritalStatus = false,
  13. bool includeNamePrefix = false,
  14. bool includeNameSuffix = false,
  15. bool includeOrganization = false,
  16. bool includePersonApps = false,
  17. bool includePhoneNumbers = false,
  18. bool includePlatformNotifications = false,
  19. bool includePrimaryCampus = false,
  20. bool includeSchool = false,
  21. bool includeSocialProfiles = false,
})

Will get a PcoCollection of PcoPeoplePerson objects (expecting one) using a path like this: /people/v2/workflows/$workflowId/steps/$stepId/assignee_summaries/$assigneeSummaryId/person

Getting a PcoCollection is useful even when retrieving a single object because it contains error data and helper functions.

Additional options may be specified by using the query argument, but some query options are also available as boolean flags in this function call too.

Implementation

static Future<PcoCollection<PcoPeoplePerson>>
    getFromWorkflowAndStepAndAssigneeSummary(
  String workflowId,
  String stepId,
  String assigneeSummaryId, {
  PcoPeoplePersonQuery? query,
  bool getAll = false,
  bool includeAllRelated = false,
  bool includeAddresses = false,
  bool includeEmails = false,
  bool includeFieldData = false,
  bool includeHouseholds = false,
  bool includeInactiveReason = false,
  bool includeMaritalStatus = false,
  bool includeNamePrefix = false,
  bool includeNameSuffix = false,
  bool includeOrganization = false,
  bool includePersonApps = false,
  bool includePhoneNumbers = false,
  bool includePlatformNotifications = false,
  bool includePrimaryCampus = false,
  bool includeSchool = false,
  bool includeSocialProfiles = false,
}) async {
  query ??= PcoPeoplePersonQuery();
  if (getAll) query.getAll = true;
  if (includeAllRelated) query.include.addAll(PcoPeoplePerson.canInclude);
  if (includeAddresses) query.include.add('addresses');
  if (includeEmails) query.include.add('emails');
  if (includeFieldData) query.include.add('field_data');
  if (includeHouseholds) query.include.add('households');
  if (includeInactiveReason) query.include.add('inactive_reason');
  if (includeMaritalStatus) query.include.add('marital_status');
  if (includeNamePrefix) query.include.add('name_prefix');
  if (includeNameSuffix) query.include.add('name_suffix');
  if (includeOrganization) query.include.add('organization');
  if (includePersonApps) query.include.add('person_apps');
  if (includePhoneNumbers) query.include.add('phone_numbers');
  if (includePlatformNotifications)
    query.include.add('platform_notifications');
  if (includePrimaryCampus) query.include.add('primary_campus');
  if (includeSchool) query.include.add('school');
  if (includeSocialProfiles) query.include.add('social_profiles');
  var url =
      '/people/v2/workflows/$workflowId/steps/$stepId/assignee_summaries/$assigneeSummaryId/person';

  return PcoCollection.fromApiCall<PcoPeoplePerson>(url,
      query: query, apiVersion: kApiVersion);
}