PcoPeopleList class Null safety
This class represents a PCO People List Object
- Application: people
- Id: list
- Type: List
- ApiVersion: 2022-07-14
- Is Deprecated: false
- Is Collection Only: false
- Default Endpoint: https://api.planningcenteronline.com/people/v2/lists
- Create Endpoint: NONE
Instantiation
- This object cannot be created through the API.
- Instantiate from existing
JSON
data using thePcoPeopleList.fromJson()
constructor. - Load an instance from the API using one of the static methods defined on this class.
Usage
- Fields exposed by the API are readable through getter methods.
- Fields writable by the API are exposed through setter methods.
- Original
json
data is exposed through the read-onlyattributes
map. - Additional data is available through the read-only
links
andrelationships
maps. - Available relationships / includes are exposed through typed getters.
Description
A list is a powerful tool for finding and grouping people together using any criteria imaginable.
Attributes (and permissions)
id
(ro) -> PCO:id
name
(ro) -> PCO:name
isAutoRefresh
(ro) -> PCO:auto_refresh
status
(ro) -> PCO:status
isHasInactiveResults
(ro) -> PCO:has_inactive_results
isIncludeInactive
(ro) -> PCO:include_inactive
returns
(ro) -> PCO:returns
isReturnOriginalIfNone
(ro) -> PCO:return_original_if_none
subset
(ro) -> PCO:subset
isAutomationsActive
(ro) -> PCO:automations_active
automationsCount
(ro) -> PCO:automations_count
description
(ro) -> PCO:description
isInvalid
(ro) -> PCO:invalid
nameOrDescription
(ro) -> PCO:name_or_description
isRecentlyViewed
(ro) -> PCO:recently_viewed
refreshedAt
(ro) -> PCO:refreshed_at
isStarred
(ro) -> PCO:starred
totalPeople
(ro) -> PCO:total_people
batchCompletedAt
(ro) -> PCO:batch_completed_at
createdAt
(ro) -> PCO:created_at
updatedAt
(ro) -> PCO:updated_at
Edges and Actions
Outbound Edges:
campus-list-campus
: https://api.planningcenteronline.com/people/v2/lists/1/campuslistcategory-list-category
: https://api.planningcenteronline.com/people/v2/lists/1/categoryperson-list-created_by
: https://api.planningcenteronline.com/people/v2/lists/1/created_bylistresult-list-list_results
: https://api.planningcenteronline.com/people/v2/lists/1/list_resultsmailchimpsyncstatus-list-mailchimp_sync_status
: https://api.planningcenteronline.com/people/v2/lists/1/mailchimp_sync_statusperson-list-people
: https://api.planningcenteronline.com/people/v2/lists/1/peoplerule-list-rules
: https://api.planningcenteronline.com/people/v2/lists/1/ruleslistshare-list-shares
: https://api.planningcenteronline.com/people/v2/lists/1/sharesliststar-list-star
: https://api.planningcenteronline.com/people/v2/lists/1/starperson-list-updated_by
: https://api.planningcenteronline.com/people/v2/lists/1/updated_by
Inbound Edges:
list-campus-lists
: https://api.planningcenteronline.com/people/v2/campuses/1/listslist-listcategory-lists
: https://api.planningcenteronline.com/people/v2/list_categories/1/listslist-organization-lists
: https://api.planningcenteronline.com/people/v2/lists
Actions:
mailchimp_sync
: https://api.planningcenteronline.com/people/v2/lists/1/mailchimp_syncrun
: https://api.planningcenteronline.com/people/v2/lists/1/run
Raw Data Object Example
{
"type": "List",
"id": "1",
"attributes": {
"name": "string",
"auto_refresh": true,
"status": "string",
"has_inactive_results": true,
"include_inactive": true,
"returns": "string",
"return_original_if_none": true,
"subset": "string",
"automations_active": true,
"automations_count": 1,
"description": "string",
"invalid": true,
"name_or_description": "string",
"recently_viewed": true,
"refreshed_at": "2000-01-01T12:00:00Z",
"starred": true,
"total_people": 1,
"batch_completed_at": "2000-01-01T12:00:00Z",
"created_at": "2000-01-01T12:00:00Z",
"updated_at": "2000-01-01T12:00:00Z"
},
"relationships": {}
}
- Inheritance
-
- Object
- PcoResource
- PcoPeopleList
Constructors
-
PcoPeopleList({String? id, String? name, bool? isAutoRefresh, String? status, bool? isHasInactiveResults, bool? isIncludeInactive, String? returns, bool? isReturnOriginalIfNone, String? subset, bool? isAutomationsActive, int? automationsCount, String? description, bool? isInvalid, String? nameOrDescription, bool? isRecentlyViewed, DateTime? refreshedAt, bool? isStarred, int? totalPeople, DateTime? batchCompletedAt, DateTime? createdAt, DateTime? updatedAt, Map<
String, List< ? withRelationships, List<PcoResource> >PcoResource> ? withIncluded}) -
Create a new PcoPeopleList object. This object cannot be created with the API
factory
- PcoPeopleList.empty()
- Create an empty instance of this class. This is only useful when an endpoint requires related or included data.
-
PcoPeopleList.fromJson(Map<
String, dynamic> data, {List<Map< ? withIncluded})String, dynamic> >
Properties
- api → PlanningCenter
-
planning center resources must be tied to an api
read-onlyinherited
- apiEndpoint → String
-
read-onlyinherited
- apiPath → String
-
PcoResources include their own path as a link object
but this might be null if we haven't created/fetched the object yet
Child classes should redefine this getter to allow for manual path overrides
read-onlyoverride
- apiVersion → String
-
child classes can override these getters which will allow
methods in this class to see static variables from child classes
read-onlyoverride
-
attributes
→ ReadOnlyMapView<
String, dynamic> -
contains the underlying attributes returned by the api
and allows a user to access arbitrary data in the attributes by actual api name
read-onlyinherited
- automationsCount → int
-
read-only
- batchCompletedAt → DateTime
-
read-only
- canCreate → bool
-
read-onlyoverride
- canDestroy → bool
-
read-onlyoverride
- canUpdate → bool
-
read-onlyoverride
-
createAllowed
→ List<
String> -
read-onlyoverride
- createdAt → DateTime
-
read-onlyinherited
- createPathTemplate → String
-
read-onlyoverride
- defaultPathTemplate → String
-
read-onlyoverride
- description → String
-
read-only
- fetched ↔ bool
-
indicate whether an item is full or partial
read / writeinherited
- hashCode → int
-
The hash code for this object.
read-onlyinherited
- id → String?
-
read-onlyinherited
-
included
→ List<
PcoResource> -
contains included items parsed into objects
read-onlyinherited
- includedCampus → PcoPeopleCampus?
-
read-only
- includedMailchimpSyncStatus → PcoPeopleMailchimpSyncStatus?
-
read-only
-
includedPeople
→ List<
PcoPeoplePerson> -
read-only
-
includedRules
→ List<
PcoPeopleRule> -
read-only
- isAutomationsActive → bool
-
read-only
- isAutoRefresh → bool
-
read-only
- isHasInactiveResults → bool
-
read-only
- isIncludeInactive → bool
-
read-only
- isInvalid → bool
-
read-only
- isRecentlyViewed → bool
-
read-only
- isReturnOriginalIfNone → bool
-
read-only
- isStarred → bool
-
read-only
-
links
→ ReadOnlyMapView<
String, dynamic> -
contains the links data returned by the api if present
read-onlyinherited
- name → String
-
read-only
- nameOrDescription → String
-
read-only
- needsSave → bool
-
read-onlyinherited
- pcoApplication ↔ String
-
latefinalinherited
- refreshedAt → DateTime
-
read-only
-
relationships
→ ReadOnlyMapView<
String, List< PcoResource> > -
contains relationships parsed into objects
even though the api sends relationship objects as Maps or Lists
we always put them into lists for consistency
read-onlyinherited
- resourceType ↔ String
-
all planning center resources must have a
type
latefinalinherited - returns → String
-
read-only
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
- slug → String
-
read-onlyinherited
- status → String
-
read-only
- subset → String
-
read-only
- totalPeople → int
-
read-only
-
updateAllowed
→ List<
String> -
read-onlyoverride
- updatedAt → DateTime
-
read-onlyinherited
Methods
-
coerceDouble(
dynamic a) → double -
inherited
-
coerceInt(
dynamic a) → int -
inherited
-
delete(
) → Future< PlanningCenterApiResponse< PlanningCenterApiData> > -
inherited
-
filteredAttributes(
List< String> allowedKeys) → Map<String, dynamic> -
inherited
-
fromJson(
Map< String, dynamic> data, {List<Map< ? withIncluded}) → dynamicString, dynamic> > -
Takes a full JSON:API Response Object (the contents of a "data" field)
will clear and update id, apiPath, attributes and
_relationships
inherited -
getCampus(
{PcoPeopleCampusQuery? query}) → Future< PcoCollection< PcoPeopleCampus> > -
Will get a collection of PcoPeopleCampus objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/campus
-
getCategory(
{PcoPeopleListCategoryQuery? query}) → Future< PcoCollection< PcoPeopleListCategory> > -
Will get a collection of PcoPeopleListCategory objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/category
-
getCreatedBy(
{PcoPeoplePersonQuery? query}) → Future< PcoCollection< PcoPeoplePerson> > -
Will get a collection of PcoPeoplePerson objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/created_by
-
getListResults(
{PcoPeopleListResultQuery? query}) → Future< PcoCollection< PcoPeopleListResult> > -
Will get a collection of PcoPeopleListResult objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/list_results
-
getMailchimpSyncStatus(
{PcoPeopleMailchimpSyncStatusQuery? query}) → Future< PcoCollection< PcoPeopleMailchimpSyncStatus> > -
Will get a collection of PcoPeopleMailchimpSyncStatus objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/mailchimp_sync_status
-
getPeople(
{PcoPeoplePersonQuery? query}) → Future< PcoCollection< PcoPeoplePerson> > -
Will get a collection of PcoPeoplePerson objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/people
-
getRules(
{PcoPeopleRuleQuery? query}) → Future< PcoCollection< PcoPeopleRule> > -
Will get a collection of PcoPeopleRule objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/rules
-
Will get a collection of PcoPeopleListShare objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/shares
-
getStar(
{PcoPeopleListStarQuery? query}) → Future< PcoCollection< PcoPeopleListStar> > -
Will get a collection of PcoPeopleListStar objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/star
-
getUpdatedBy(
{PcoPeoplePersonQuery? query}) → Future< PcoCollection< PcoPeoplePerson> > -
Will get a collection of PcoPeoplePerson objects (expecting many)
using a path like this:
https://api.planningcenteronline.com/people/v2/lists/1/updated_by
-
handleIncludes(
List< Map< included) → voidString, dynamic> > -
This function populates the relationships with typed resource objects
based on the data in the
included
map of the json.inherited -
handleItem(
Map< String, dynamic> data) → PcoResource? -
inherited
-
handleRelationships(
Map< String, dynamic> items, [List<Map< included = const []]) → Map<String, dynamic> >String, List< PcoResource> > -
inherited
-
includedCategory<
T extends PcoResource> () → List< T> - The code generator could not automatically determine the resource type of this relationship. For type safe code, you should specify it in the type argument when calling.
-
includedCreatedBy<
T extends PcoResource> () → List< T> - The code generator could not automatically determine the resource type of this relationship. For type safe code, you should specify it in the type argument when calling.
- The code generator could not automatically determine the resource type of this relationship. For type safe code, you should specify it in the type argument when calling.
-
includedUpdatedBy<
T extends PcoResource> () → List< T> - The code generator could not automatically determine the resource type of this relationship. For type safe code, you should specify it in the type argument when calling.
-
mailchimpSync(
Object data) → Future< PlanningCenterApiResponse< PlanningCenterApiData> > -
ACTION:
mailchimp_sync
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited
-
run(
Object data) → Future< PlanningCenterApiResponse< PlanningCenterApiData> > -
ACTION:
run
-
save(
{Map< String, PcoResource> ? withRelated, List<PcoResource> ? withIncluded}) → Future<PlanningCenterApiResponse< PlanningCenterApiData> > -
Many Planning Center endpoints allow or require additional relationships and/or included items
to be sent with a create/update operation. Since these cannot always be determined by the automatic
code generation, they may be included as arguments to the save operation.
inherited
-
toCreateResource(
) → Map< String, dynamic> -
create the attributes Map for this object without the
id
field using only the attributes allowed in create (post) operationsinherited -
toDataMap(
{Map< String, PcoResource> ? withRelated, List<PcoResource> ? withIncluded}) → Map<String, dynamic> -
create a json-api Map for this object automatically selecting create or update
based on the existence of the
id
field. Will result in something like this:inherited -
toIdResource(
) → Map< String, dynamic> -
returns the simplest representation of this resource with
only the type and the id:
inherited
-
toJson(
{dynamic includeAttributes = true, dynamic includeRelationships = false}) → Map< String, dynamic> -
Some api requests only want the type and id of an object.
In those cases, set
includeAttributes
to false or call toIdResource instead.inherited -
toString(
) → String -
A string representation of this object.
inherited
-
toUpdateResource(
) → Map< String, dynamic> -
create the attributes Map for this object using only
the attributes allowed in update (patch) operations
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
-
canInclude
→ List<
String> -
possible includes with parameter ?include=a,b
read-only
-
canOrderBy
→ List<
String> -
possible orderings with parameter ?order=
read-only
-
canQuery
→ List<
String> -
possible queries using parameters like ?where
key
=value or ?wheregt|lt
=valueread-only
Static Methods
-
get(
{String? id, PcoPeopleListQuery? query, bool getAll = false, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoCollection< PcoPeopleList> > -
Will get a
PcoCollection
of PcoPeopleList objects (expecting many) using a path like this:/people/v2/lists
-
getAll(
{String? id, PcoPeopleListQuery? query, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoCollection< PcoPeopleList> > -
Will get a
PcoCollection
containing ALL PcoPeopleList objects (expecting many) using a path like this:/people/v2/lists
-
getAllFromCampus(
String campusId, {String? id, PcoPeopleListQuery? query, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoCollection< PcoPeopleList> > -
Will get a
PcoCollection
containing ALL PcoPeopleList objects (expecting many) using a path like this:/people/v2/campuses/$campusId/lists
-
getAllFromListCategory(
String listCategoryId, {String? id, PcoPeopleListQuery? query, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoCollection< PcoPeopleList> > -
Will get a
PcoCollection
containing ALL PcoPeopleList objects (expecting many) using a path like this:/people/v2/list_categories/$listCategoryId/lists
-
getFromCampus(
String campusId, {String? id, PcoPeopleListQuery? query, bool getAll = false, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoCollection< PcoPeopleList> > -
Will get a
PcoCollection
of PcoPeopleList objects (expecting many) using a path like this:/people/v2/campuses/$campusId/lists
-
getFromListCategory(
String listCategoryId, {String? id, PcoPeopleListQuery? query, bool getAll = false, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoCollection< PcoPeopleList> > -
Will get a
PcoCollection
of PcoPeopleList objects (expecting many) using a path like this:/people/v2/list_categories/$listCategoryId/lists
-
getSingle(
String id, {PcoPeopleListQuery? query, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoPeopleList?> -
Will get a single
PcoPeopleList
object using a path like this:/people/v2/lists/[id]
-
getSingleFromCampus(
String campusId, String id, {PcoPeopleListQuery? query, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoPeopleList?> -
Will get a single
PcoPeopleList
object using a path like this:/people/v2/campuses/$campusId/lists/[id]
-
getSingleFromListCategory(
String listCategoryId, String id, {PcoPeopleListQuery? query, bool includeAllRelated = false, bool includeCampus = false, bool includeCategory = false, bool includeCreatedBy = false, bool includeMailchimpSyncStatus = false, bool includePeople = false, bool includeRules = false, bool includeUpdatedBy = false}) → Future< PcoPeopleList?> -
Will get a single
PcoPeopleList
object using a path like this:/people/v2/list_categories/$listCategoryId/lists/[id]
Constants
- kApiVersion → const String
-
'2022-07-14'
- kAutomationsActive → const String
-
'automations_active'
- kAutomationsCount → const String
-
'automations_count'
- kAutoRefresh → const String
-
'auto_refresh'
- kBatchCompletedAt → const String
-
'batch_completed_at'
- kCreatedAt → const String
-
'created_at'
- kCreatePathTemplate → const String
-
'null'
- kDefaultPathTemplate → const String
-
'https://api.planningcenteronline.com/people/v2/lists'
- kDescription → const String
-
'description'
- kHasInactiveResults → const String
-
'has_inactive_results'
- kId → const String
-
'id'
- kIncludeInactive → const String
-
'include_inactive'
- kInvalid → const String
-
'invalid'
- kName → const String
-
'name'
- kNameOrDescription → const String
-
'name_or_description'
- kPcoApplication → const String
-
'people'
- kRecentlyViewed → const String
-
'recently_viewed'
- kRefreshedAt → const String
-
'refreshed_at'
- kReturnOriginalIfNone → const String
-
'return_original_if_none'
- kReturns → const String
-
'returns'
- kStarred → const String
-
'starred'
- kStatus → const String
-
'status'
- kSubset → const String
-
'subset'
- kTotalPeople → const String
-
'total_people'
- kTypeId → const String
-
'list'
- kTypeString → const String
-
'List'
- kUpdatedAt → const String
-
'updated_at'