Identify / Group
The Identify and Group calls tell our analytics tools who a person is and which church they belong to.
Status: sent today
The mobile app, TV apps, and web send Identify. The TV apps send Group.
Identify
Description: Fired when a user is able to be identified in an application (e.g. a login).
Destinations: BigQuery, HubSpot, Amplitude.
These properties appear in the traits block instead of a properties block.
| Property | Type | Required | Description |
|---|---|---|---|
user_id | String | Yes | Unique ID for the person. |
group_id | String | Yes | Unique ID of the church. |
email | String | Yes | Email of the owner/point of contact. |
name | String | Yes | Name of the person. |
created_at | Date | Yes | Timestamp of profile creation. |
role | String | No | The role of the individual in the org. |
is_logged_in | Boolean | Yes | If the user was logged in when performing the event. |
Implementation example:
analytics.identify("98765ogrefied", {
name: "Shrek the Ogre",
email: "shrek@swamp.com",
created_at: "2001-05-22T00:00:00",
last_login: "2025-03-23T00:00:00",
role: "Ogre King",
age: "35",
gender: "Male",
user_id: "98765ogrefied",
group_id: "shreks-swamp-kingdom",
campus: "fionas-half",
is_logged_in: true,
});Resulting payload:
{
"type": "identify",
"traits": {
"name": "Shrek the Ogre",
"email": "shrek@swamp.com",
"created_at": "2001-05-22T00:00:00",
"last_login": "2025-03-23T00:00:00",
"role": "Ogre King",
"age": "35",
"gender": "Male",
"user_id": "98765ogrefied",
"group_id": "shreks-swamp-kingdom",
"campus": "fionas-half",
"is_logged_in": true
},
"userId": "98765ogrefied"
}Group
Description: Fired when an organization is identified by a user (e.g. account creation, a login).
Destinations: BigQuery, HubSpot, Amplitude.
These properties appear in the traits block instead of a properties block. The default property user_id is not present in this call because it isn't relevant here.
| Property | Type | Required | Description |
|---|---|---|---|
group_id | String | Yes | Unique ID for the org. |
email | String | Yes | Email of the org owner. |
name | String | Yes | Name of the org. |
created_at | Timestamp | Yes | Timestamp of org account creation. |
website | String | No | Org website. |
type | String | No | Org type. |
audience | String | No | Size of org/church. |
discovery | String | No | How the org discovered the application. |
reason | String | No | Reason the org uses the application. |
owner_role | String | No | Role of the org owner. |
attribution | String | No | Ad attribution for the original account signup. |
Implementation example:
analytics.group("shreks-swamp-kingdom", {
name: "Shrek's Swamp Kingdom",
group_id: "shreks-swamp-kingdom",
created_at: "2001-05-22T00:00:00",
website: "https://www.swampkingdom.com/",
type: "swamp kingdom",
audience: "SIZE_1_10",
discovery: "Dragon's Fire (Social Media)",
reason: "Ogre Kingdom Management",
email: "shrek@swampkingdom.com",
owner_role: "Ogre King",
attribution_campaign: "swamp-reign",
campuses: ["fionas-half", "donkeys-half"],
});Resulting payload:
{
"type": "group",
"traits": {
"name": "Shrek's Swamp Kingdom",
"group_id": "shreks-swamp-kingdom",
"created_at": "2001-05-22T00:00:00",
"website": "https://www.swampkingdom.com/",
"type": "swamp kingdom",
"audience": "SIZE_1_10",
"discovery": "Dragon's Fire (Social Media)",
"reason": "Ogre Kingdom Management",
"email": "shrek@swampkingdom.com",
"owner_role": "Ogre King",
"attribution_campaign": "swamp-reign",
"campuses": ["fionas-half", "donkeys-half"]
},
"groupId": "shreks-swamp-kingdom"
}