Endgame Schema

Endgame Schema

Last Updated: April 5, 2023

image

Endgame uses the following information in order to serve it's core function:

  1. Domain. Companies, which have characteristics like employee count and owner, but also information inherited from the aggregate of workspaces and users.
  2. Workspaces. Customer orgs in your product—including information that will define their stage (e.g. current plan tier) in the customer lifecycle.
  3. Users. People using your your product.
  4. Events. The specific actions that are being taken by users in the product.

While this document provides a general outline of the required data for Endgame to function, there may be data specific to your product or GTM processes that you should consider including to further optimize your experience with Endgame.

Domains

General information about the domain in your product. It is recommended that you use an Update or Create (aka Upsert) methodology to send domain data to Endgame after an initial full sync.

💡
Note: The domain object is not required to setup and use Endgame. If you prefer to configure Endgame with only two tiers (Workspace and Users), Endgame supports this as well.

Domains schema

required?keydata_typedefinition
domain_id

string

The unique identifier of an domain (e.g. “12309”, “06fe94”, “example.com”)

domain_name

string

The name of the domain (e.g. “Example Inc”) based on either product, or CRM data

domain_domain

string

The domain itself (e.g. “example.com”)

domain_property

string number ISO 8601 date boolean

Additional relevant properties that might be helpful to surface within Endgame.

💡
You can optionally include additional workspace properties (e.g. employee_count, arr, num_open_opps, account_owner) to improve filtering within Endgame and give your reps more context. See Best Practices FieldsBest Practices Fields for suggestions.

Example Domain Payload

{
  "domain_id": "1",
  "domain_name": "Endgame Labs, Inc.",
  "domain_domain": "endgame.io",
  "employee_count": "2700",
  "account_owner": "bob@endgame.io",
  "last_sales_activity": "2021-02-18T21:37:48+00:00"
}

Workspaces

General information about the workspace in your product. It is recommended that you use an Update or Create (aka Upsert) methodology to send workspace data to Endgame after an initial full sync.

Workspaces schema

required?keydata_typedefinition
workspace_id

string

The unique identifier of an workspace

domain_id

string

The domain associated with this workspace

workspace_name

string

The name of the workspace based on either product, or CRM data

workspace_plan

string

Workspace specific billing plan (e.g., starter, business, enterprise)

workspace_domain

string

The name of the domain based on either product, or CRM data

workspace_property

string number ISO 8601 date boolean

Additional relevant properties that might be helpful to segmenting workspaces within Endgame.

💡
You can optionally include additional workspace properties (e.g. trial_end_date, renewal_date, account_owner, vip_status) to improve filtering within Endgame and give your reps more context on workspaces. See Best Practices FieldsBest Practices Fields for suggestions.

Example Workspace Payload

{
  "workspace_id": "4784",
  "workspace_domain_id": "1",
  "workspace_domain": "endgame.io",
  "workspace_name": "Endgame Labs, Inc.",
  "workspace_plan": "Team",
  "workspace_plan_type": "Paid",
  "trial_start_date": "2021-02-18T21:37:48+00:00",
  "trial_end_date": "2021-02-18T21:37:48+00:00",
  "renewal_date": "2021-02-18T21:37:48+00:00"
}

Users

General information about the users in your product. It is recommended that you use an Update or Create (aka Upsert) methodology to send user data to Endgame after an initial full sync.

Users schema

required?keytypedefinition
workspace_user_id

string

A unique id comprised of both the workspace id, along with the user id. For example “workspace_id:user_id”. Required in certain circumstances—such as data delivery via Census.

user_id

string

The user ID associated with a workspace user

workspace_id

string

The workspace ID associated with this user

user_name

string

The full name of the user

user_email

string

The user's email address

user_property

string ISO 8601

The owner of the user. Generally derived from CRM data (e.g., Salesforce contacts or leads)

💡
You can optionally include additional user properties (e.g. user_type , is_owner, user_title, acv) to improve filtering within Endgame and give your reps more context on users. See Best Practices FieldsBest Practices Fields for suggestions.

Example User Payload

{
  "workspace_user_id": "4784:12211232",  
  "user_id": "12211232",
  "workspace_id": "4784",
  "timestamp": "2021-02-18T21:37:48+00:00"
}

Events

General information about the actions that users are taking in your product. It is recommended that you use an Append Only methodology to send event data to Endgame.

Event schema

required?keydata typedescription
uid

string

Generated unique identifier for each event.

timestamp

ISO 8601

Timestamp of when this event occurred.

action

string

Name of the type of event that this was (e.g., "user_created")

workspace_id

string

Unique identifier for the workspace.

user_id

string

Unique identifier for the user that caused the action.

event_property

string ISO 8601

Any additional information related to the event that may be relevant.

💡
You can optionally include additional event properties (e.g. event_type, scope, search_query, source) to improve filtering within Endgame and give your reps more granular event data. See Best Practices FieldsBest Practices Fields for suggestions.

Example Event Payload

{
  "uid": "123e4567-e89b-12d3-a456-426614174000",
  "timestamp": "2021-02-18T21:37:48+00:00",
  "action": "Song Played",
  "workspace_id": "4784",
  "user_id": "12211232",
  "scope": "website",
}

Related documentation:

Best Practices FieldsBest Practices Fields