Skip to content

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.

PropertyTypeRequiredDescription
user_idStringYesUnique ID for the person.
group_idStringYesUnique ID of the church.
emailStringYesEmail of the owner/point of contact.
nameStringYesName of the person.
created_atDateYesTimestamp of profile creation.
roleStringNoThe role of the individual in the org.
is_logged_inBooleanYesIf the user was logged in when performing the event.

Implementation example:

javascript
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:

json
{
  "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.

PropertyTypeRequiredDescription
group_idStringYesUnique ID for the org.
emailStringYesEmail of the org owner.
nameStringYesName of the org.
created_atTimestampYesTimestamp of org account creation.
websiteStringNoOrg website.
typeStringNoOrg type.
audienceStringNoSize of org/church.
discoveryStringNoHow the org discovered the application.
reasonStringNoReason the org uses the application.
owner_roleStringNoRole of the org owner.
attributionStringNoAd attribution for the original account signup.

Implementation example:

javascript
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:

json
{
  "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"
}

Apollos Platform Documentation