Group
A group of people that meet together regularly.
Example Object
{
"type": "Group",
"id": "1",
"attributes": {
"archived_at": "2000-01-01T12:00:00Z",
"can_create_conversation": true,
"can_create_conversation_reason_code": "string",
"chat_enabled": true,
"contact_email": "string",
"created_at": "2000-01-01T12:00:00Z",
"description": "string",
"description_as_plain_text": "string",
"events_listed": true,
"events_visibility": "value",
"header_image": {},
"leaders_can_search_people_database": true,
"listed": true,
"location_type_preference": "value",
"members_are_confidential": true,
"memberships_count": 1,
"name": "string",
"public_church_center_web_url": "string",
"schedule": "string",
"tag_ids": 1,
"virtual_location_url": "string",
"widget_status": {}
},
"relationships": {
"group_type": {
"data": {
"type": "GroupType",
"id": "1"
}
},
"location": {
"data": {
"type": "Location",
"id": "1"
}
}
}
}
Attributes
| Name |
Type |
Description |
archived_at |
date_time |
The date and time the group was archived.
|
can_create_conversation |
boolean |
A boolean representing the current user's authorization to start a new conversation in the group.
Only available when requested with the `?fields` param |
can_create_conversation_reason_code |
string |
A code representing why the current user can or cannot start a new conversation in the group.
Possible values: `chat_disabled`, `group_archived`, `non_member`, `leaders_only`.
Nil when the user is permitted to create a conversation.
Only available when requested with the `?fields` param |
chat_enabled |
boolean |
A boolean representing whether or not the group has Chat enabled.
|
contact_email |
string |
If a contact_email is provided, we will display a contact button on the public page
where potential members can ask questions before joining the group.
|
created_at |
date_time |
The date and time the group was created.
|
description |
string |
A longform description of the group. Can contain HTML markup.
|
description_as_plain_text |
string |
The plain text version of the group description.
|
events_listed |
boolean |
Whether or not events are visible to the public on Church Center
|
events_visibility |
string |
The visibility of events for the group.
Possible values: `public` or `members` |
header_image |
hash |
A hash of header image URLs. The keys are `thumbnail`, `medium`, and `original`.
```json
{
"thumbnail": "https://groups-production.s3.amazonaws.com/uploads/group/header_image/1986065/thumbnail_image-1676676396838.jpg",
"medium": "https://groups-production.s3.amazonaws.com/uploads/group/header_image/1986065/medium_image-1676676396838.jpg",
"original": "https://groups-production.s3.amazonaws.com/uploads/group/header_image/1986065/image-1676676396838.jpg"
}
```
|
id |
primary_key |
|
leaders_can_search_people_database |
boolean |
Whether or not group leaders have access to the entire
church database on the admin side of Groups. (Not recommended)
|
listed |
boolean |
Whether or not the group is visible on Church Center
|
location_type_preference |
string |
The location type preference for the group.
Possible values: `physical` or `virtual` |
members_are_confidential |
boolean |
Whether or not group members can see other members' info
|
memberships_count |
integer |
The number of members in the group, includes leaders.
Does not include membership requests.
|
name |
string |
The name/title of the group.
|
public_church_center_web_url |
string |
The public URL for the group on Church Center.
|
schedule |
string |
A text summary of the group's typical meeting schedule.
Can be a string like "Sundays at 9:30am" or "Every other Tuesday at 7pm".
|
tag_ids |
integer |
The IDs of the tags associated with the group.
Only available when requested with the `?fields` param |
virtual_location_url |
string |
The URL for the group's virtual location. A zoom link, for example.
This could be set even if `location_type_preference` is `physical`.
This is useful if you want to display a zoom link even if the group is meeting in person.
|
widget_status |
hash |
DEPRECATED: This is a private attribute used by Home widgets that we plan to remove soon.
Only available when requested with the `?fields` param |
Relationships
| Name |
Type |
Association Type |
Note |
| group_type |
GroupType |
to_one |
The group type that this group belongs to.
Unique groups do not belong to a group type
and will return a `null` data set for the relationship.
|
| location |
Location |
to_one |
The group's default location is where the group normally meets.
But remember, each group event can have its own location if needed.
|
Can Include
| Parameter |
Value |
Description |
Assignable |
| include |
enrollment |
include associated enrollment |
|
| include |
group_type |
include associated group_type |
create and update |
| include |
location |
include associated location |
create and update |
Order By
| Parameter |
Value |
Type |
Description |
| order |
chat_enabled |
string |
prefix with a hyphen (-chat_enabled) to reverse the order |
| order |
contact_email |
string |
prefix with a hyphen (-contact_email) to reverse the order |
| order |
created_at |
string |
prefix with a hyphen (-created_at) to reverse the order |
| order |
enrollment_limit |
string |
prefix with a hyphen (-enrollment_limit) to reverse the order |
| order |
listed |
string |
prefix with a hyphen (-listed) to reverse the order |
| order |
members_are_confidential |
string |
prefix with a hyphen (-members_are_confidential) to reverse the order |
| order |
memberships_count |
string |
prefix with a hyphen (-memberships_count) to reverse the order |
| order |
name |
string |
prefix with a hyphen (-name) to reverse the order |
Query By
| Name |
Parameter |
Type |
Description |
Example |
| archive_status |
where[archive_status] |
string |
Query on a specific archive_status
Possible values: `not_archived`, `only`, or `include` |
?where[archive_status]=value |
| name |
where[name] |
string |
Query on a specific name |
?where[name]=string |
Pagination
| Name |
Parameter |
Type |
Description |
| per_page |
per_page |
integer |
how many records to return per page (min=1, max=100, default=25) |
| offset |
offset |
integer |
get results from given offset |
Endpoints
Listing
| HTTP Method |
Endpoint |
| GET |
/groups/v2/groups |
Reading
| HTTP Method |
Endpoint |
| GET |
/groups/v2/groups/{id} |
Updating
| HTTP Method |
Endpoint |
Assignable Attributes |
| PATCH |
/groups/v2/groups/{id} |
- name
- group_type_id
- schedule
- tag_ids
|
Actions
| HTTP Method |
Endpoint |
Description |
| POST |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/assign_campuses |
|
| POST |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/disable_chat |
|
| POST |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/duplicate |
|
| POST |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/enable_chat |
|
Associations
| HTTP Method |
Endpoint |
Returns |
Details |
Filter By |
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/applications |
GroupApplication
|
requests to join this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/campuses |
Campus
|
campuses assigned this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/enrollment |
Enrollment
|
enrollment details for this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/events |
Event
|
events for this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/group_type |
GroupType
|
group type of this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/location |
Location
|
default physical location for this group's events
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/memberships |
Membership
|
memberships belonging to this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/my_membership |
Membership
|
the current person's membership for this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/people |
Person
|
people who have memberships for this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/resources |
Resource
|
file and link resources shared with this group
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/tags |
Tag
|
tags assigned to this group
|
|
Belongs To
| HTTP Method |
Endpoint |
Association |
Details |
Filter By |
| GET |
https://api.planningcenteronline.com/groups/v2/campuses/{campus_id}/groups |
Campus
|
groups which have applied this campus
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/events/{event_id}/group |
Event
|
group which the event belongs to
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/group_applications/{group_application_id}/group |
GroupApplication
|
group being applied to
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/group_types/{group_type_id}/groups |
GroupType
|
groups belonging to this group type
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/events/{event_id}/location/{location_id}/group |
Location
|
group that manages this location
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/memberships/{membership_id}/group |
Membership
|
group for this membership
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups |
Organization
|
groups for this organization
|
campus
enrollment
group
group_type
hidden
meeting_schedule
my_groups
people_database_searchable
published
tag
|
| GET |
https://api.planningcenteronline.com/groups/v2/people/{person_id}/groups |
Person
|
groups of which this person is a member
|
|
| GET |
https://api.planningcenteronline.com/groups/v2/groups/{group_id}/tags/{tag_id}/groups |
Tag
|
groups which have applied this tag
|
|