Skip to main content

Entity (Base Entity)

Entity

Entity is the root type for every record in TribeCRM. All entity types — relations, activities, products, labels, notes, and more — inherit from it. It defines the universal fields (ID, _Type, _Name, timestamps) and shared relationships (labels, notes, attachments) that are available on every record in the system.

The Entity endpoint provides a cross-type view of all records in the database. This is rarely used directly — you typically query a specific entity type instead.

When to use this endpoint

The Entity endpoint is useful for looking up a record when you only have its ID but don't know its type, or for cross-type searches on shared fields like _Name or CreationDate.

Base Entity

Entity is a base entity and cannot be created directly. You must create a concrete subtype. See Subtypes for the full list.

Endpoints

List Entities

Retrieve a paginated list of all entities across all types.

GET/v1/odata/Entity

Single Entity

Retrieve a single entity by its ID (regardless of type).

GET/v1/odata/Entity({id})

With expanded relations:

GET/v1/odata/Entity({id})?$expand=Labels,Notes,Attachments

Create Entity

The Entity endpoint does not support direct creation. Use a type-specific endpoint instead:

Update Entity

Update any entity by its ID. Provide only the fields to update.

PUT/v1/odata/Entity({id})

Delete Entity

Delete any entity by its ID.

DELETE/v1/odata/Entity({id})

Subtypes

Entity is the root of the type hierarchy. Key direct subtypes include:

SubtypeOData Entity SetDescription
RelationsRelationPeople and organizations
ActivitiesActivityTasks, meetings, opportunities, invoices
RelationshipsRelationshipLinks between relations
ProductsProductProducts and services
Product LinesProductLineLine items on activities
DatastoresDatastoreLookup values (phases, genders, languages)
AddressesAddressPhysical addresses
NotesNoteNotes on any entity
LabelsLabelTags / labels
AttachmentsAttachmentFile attachments
WorkflowsWorkflowWorkflow definitions
TeamsTeamTeams

Fields

All fields below are available on every entity in the system.

Identity Fields

FieldTypeDescription
IDGuidPrimary key (UUID)
_TypeStringEntity type discriminator (e.g., Relation.Person, Activity.SalesOpportunity)
_NameStringComputed display name
SortIndexDoubleSorting order

Timestamp Fields

FieldTypeDescription
CreationDateDateTimeOffsetDate the record was created
LastMutationDateDateTimeOffsetDate of the last modification
CloseDateDateTimeOffsetDate the record was closed

Status Fields

FieldTypeDescription
IsActiveBooleanWhether the record is active
IsClosedBooleanWhether the record is closed

Relationships

RelationshipTarget EntityCardinalityDescription
CreatorRelation.Person.ContactN:1User who created the record
TeamTeamN:1Assigned team
LabelsLabel1:NTags / labels
NotesNote1:NNotes
AttachmentsAttachment1:NFile attachments
EventsEvent1:NEvents (activity log)
FavoriteFavorite1:NFavorite markers
ExternalIdsExternalId1:NExternal system identifiers
WorkflowStateWorkflowStateN:1Current workflow phase
PackPackN:1Data pack (schema group)
EntityTypeEntityTypeN:1Entity type definition

Expanding Relationships

GET/v1/odata/Entity({id})?$expand=Labels
GET/v1/odata/Entity({id})?$expand=Creator,Labels,Notes,Attachments
GET/v1/odata/Entity({id})/Labels
GET/v1/odata/Entity({id})/Notes
GET/v1/odata/Entity({id})/Attachments

Filtering Examples

:::warning Filtering by _Type is not supported _Type is returned in every response but cannot be used in $filter — the clause is silently ignored. See Filtering by Type in the OData concepts page for the working alternative (query the type-specific entity set instead, e.g. /v1/odata/Relation_Person or /v1/odata/Activity_Invoice). :::

GET/v1/odata/Entity?$filter=contains(_Name, '{_Name}')&$top={top}
GET/v1/odata/Entity?$filter=CreationDate gt {CreationDate}&$top={top}
GET/v1/odata/Entity?$filter=LastMutationDate gt {LastMutationDate}&$top={top}
GET/v1/odata/Entity?$filter=IsActive eq {IsActive}&$top={top}
GET/v1/odata/Entity?$filter=IsClosed eq {IsClosed}&$top={top}