No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
Newer Version Available
EventRelation
Represents people (a user,
a lead, or contacts) or a resource (such as a conference room) invited
to an event. This object lets you add or remove invitees from an event
and use the API to
manage invitees’ responses to invitations.
EventRelation allows a variable number of relationships, as follows:
- If you’ve enabled Shared Activities for your organization, an event can be related to up to 50 contacts or one lead. If you haven’t enabled Shared Activities, an event can be related to only one contact or lead.
- An event can also be related to one account, asset, campaign, case, contract, opportunity, product, solution, or custom object.
Supported Calls
create(), delete(), describeSObjects(), getDeleted(), getUpdated(), query(), queryAll(), retrieve(), update(), upsert()
Fields
| Field | Details |
|---|---|
| AccountId |
|
| EventId |
|
| IsDeleted |
|
| IsInvitee |
|
| IsParent |
|
| IsWhat |
|
| RelationId |
|
| RespondedDate |
|
| Response |
|
| Status |
|
Usage
- Send email notifications
- To send email notifications for a given event, query EventRelation for the event, iterate through the list, examine the status, and send email notifications to every person who accepted the invitation.
- Determine what events a given invitee is attending
- To determine all the events that a particular person is attending during a given time period (for example, next week), you can have a client application query the Event object for a given date range, iterate through the results, and, for each event, query the EventRelation object to determine whether the particular person (RelationId) has accepted an invitation to that event.
- Create an invitee if Shared Activities is enabled (or during the process of enabling it or rolling back)
- If the invitee is already a contact or lead, update IsInvitee to true.
- If the invitee is not already a contact or lead, create an EventRelation object for the invitee with IsInvitee set to true.
- Create an invitee if Shared Activities is not enabled
- Create an EventRelation object for the invitee.
- Query relations to a contact or a lead
1List<EventRelation> whoRelations = [SELECT Id, Relation.Name FROM 2 EventRelation WHERE EventId = '00UD0000005zijD' AND isParent = true AND isWhat = false];- Query invitee relations
1List<EventRelation> inviteeRelations = [SELECT Id, Relation.Name FROM 2 EventRelation WHERE EventId = '00UD0000005zijD' AND isInvitee = true];- Update an invitee relation to a contact or lead invitee relation
1EventRelation er = [SELECT Id FROM EventRelation WHERE EventId = 2 '00UD0000005zijD' AND isInvitee = true and isParent = false LIMIT 1]; 3er.isParent = true; 4update er;- Update a contact or lead relation to a contact or lead invitee relation
1EventRelation er = [SELECT Id FROM EventRelation WHERE EventId = 2 '00UD0000005zijD' AND isParent = true and isInvitee = false LIMIT 1]; 3er.isInvitee = true; 4update er;- Insert a contact or lead relation
1EventRelation er = new EventRelation(EventId = '00UD0000005zijH', 2 RelationId = '003D000000Q8aeV', isParent = true, isInvitee = false); 3insert er;- Insert an invitee relation
If isParent, isWhat and IsInvitee are not set, and RelationId is a contact, lead, user, or calendar, IsInvitee defaults to true. This means if an EventRelation isn’t specifically inserted as a relation to a contact or lead, it’s treated as an Invitee relation by default.
1EventRelation er = new EventRelation(EventId = '00UD0000005zijH', 2 RelationId = '003D000000Q8adV'); 3insert er;