Configure onEmailConversationCreate, onEmailConversationUpdate, and onEmailConversationDelete

Marketplace Platform v2.3 deprecation:We’re continuing to improve the Marketplace Platform to deliver stronger security, better performance, and new capabilities. As part of this evolution, Marketplace Platform v2.3 will be deprecated. To learn the dates and next steps, see Migration guide.

onEmailConversationCreate

When an email is sent from the Freshsales Suite system to a contact or received into the Freshsales Suite system from a contact, the onEmailConversationCreate event is triggered and the registered callback method is executed.

Subscribe to the onEmailConversationCreate event and register the callback by using the following sample manifest.json content.

manifest.json
"events": {
  "onEmailConversationCreate": {
    "handler": "onEmailConversationCreateCallback"
  }
}

Define the corresponding callback by using the following sample server.js content:

server.js
exports = {
  onEmailConversationCreateCallback: function(payload) {
  console.log("Logging arguments from onEmailConversationCreate event: " + JSON.stringify(payload));
  }
}

Attributes of the data object

  • actorobject

    Information pertaining to the entity who triggered the onEmailConversationCreate event in the Freshsales Suite system.

    • created_atstring

      Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

    • deal_pipeline_idinteger

      Identifier of the deal pipeline with which the user who created the email-conversation is associated (if the user is assigned as a contact or sales owner when the deal is configured).

    • emailstring

      Email address of the user.

    • idinteger

      Identifier of the user.

    • is_activeboolean

      Specifies whether the user is currently active in the Freshsales Suite system.

      Possible values: true, false

    • job_titlestring

      Designation of the user in the Freshsales Suite system.

    • mobile_numberstring

      Contact number of the user.

    • namestring

      Name of the user.

    • reports_to_idinteger

      Identifier of the user to whom the user reports. Note:If the actor.type is system, only the actor.id, actor.name, and actor.type values are displayed as part of the actor object.

    • time_zonestring

      Time zone of the user configured in the Freshsales Suite system.

    • typestring

      Identifier specifying whether a user or system created the email conversation.

      Possible values: user, system

    • updated_atstring

      Timestamp of when the user details were last updated in the Freshsales Suite system, specified in the UTC format.

    • work_numberstring

      Official phone number of the user.

  • associationsobject

    All associated objects of the email conversation object, which specify additional information pertaining to the conversation.

    • creatorobject

      Information pertaining to the user who initiated/updated/deleted the email conversation.

      • created_atstring

        Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

      • deal_pipeline_idinteger

        Identifier of the deal pipeline with which the email-conversation creator is associated (if the creator is assigned as a contact or sales owner when the deal is configured).

      • emailstring

        Email address of the user.

      • idinteger

        Identifier of the user.

      • is_activeboolean

        Specifies whether the user is currently active in the Freshsales Suite system.

        Possible values: true, false

      • job_titlestring

        Designation of the user in the Freshsales Suite system.

      • mobile_numberstring

        Contact number of the user.

      • namestring

        Name of the user.

      • reports_to_idinteger

        Identifier of the user to whom the user reports.

      • time_zonestring

        Time zone of the user configured in the Freshsales Suite system.

      • typestring

        Identifier specifying whether a user or system initiated the email conversation.

        Possible value: user

      • updated_atstring

        Timestamp of when the user details were last updated in the Freshsales Suite system, specified in the UTC format.

      • work_numberstring

        Official phone number of the user.

  • email_conversationobject

    Information pertaining to an email conversation that is initiated from the Freshsales Suite system.

    • created_atstring

      Timestamp of when the email conversation was configured in the Freshsales Suite system, specified in the UTC format.

    • creator_idstring

      Auto-generated identifier of the email’s sender.

      When the email is received into the Freshsales Suite system, this value is null.

    • date_headerstring

      Timestamp of when the email is sent, specified in the UTC format.

    • directionstring

      Direction specifying whether the message is sent from or received into the Freshsales Suite system.

      Possible values: Outgoing, Incoming

    • email_associationboolean

      Specifies whether the email address to which the email is sent to or received from is associated with a contact or lead existing in the Freshsales Suite system.

      If true, the email conversation is added to the recent conversations of the contact.

      Possible values: true, false

    • email_idinteger

      Auto-generated identifier of the email address from which the email that triggered the event originated.

    • email_recipientsarray of objects

      Information pertaining to all the email addresses associated with the email conversation.

      • bounce_reasonsstring

        Reason why the email was not delivered, if the value bounced is true.

      • bouncedboolean

        Specifies whether the email was not delivered to the recipient.

        Possible values: true, false

      • bounced_timestring

        Timestamp of when the email returned without being delivered, specified in the UTC format.

      • clickedboolean

        Specifies whether the recipient clicked the link in the email. Possible values: true, false

      • clicked_timestring

        Timestamp of when the recipient clicked the link in the email, specified in the UTC format.

      • conversation_idinteger

        When an email is sent or received, an email conversation is created in the Freshsales Suite system.

        conversation_id is the auto-generated identifier associated with the currently sent message in the email conversation.

      • created_atstring

        Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

      • email_addressstring

        Email address of the user.

      • email_idinteger

        Numeric identifier of the email address.

      • email_namestring

        Name of the user.

      • fieldstring

        email_recipients specifies the details of all email addresses added to the various fields when sending an email. field value identifies the field in which a particular email address is entered.

        Possible values: from, to, reply_to, cc, bcc

      • idinteger

        Identifier of the object, auto-generated when a user is added to the Freshsales Suite system.

      • openedboolean

        Specifies whether the recipient opened the email.

        Possible values: true, false

      • opened_timestring

        Timestamp of when the recipient opened the email, specified in the UTC format.

      • targetable_idinteger

        Email address to which the email is sent or received from can be associated with a contact or lead existing in the Freshsales Suite system. targetable_id is the identifier of the contact or lead to which the email address is associated with.

        The value of this attribute is null when the email_association value is false.

      • targetable_typestring

        Email address to which the email is sent or received from can be associated with a contact or lead existing in the Freshsales Suite system. targetable_type specifies whether the email address is associated with a contact or lead.

        Possible values: Contact, Lead

        The value of this attribute is null when the email_association value is false.

      • unsubscribedboolean

        Specifies whether the recipient has clicked the unsubscribe link in the email.

        Possible values: true, false

      • unsubscribed_timestring

        Timestamp of when the recipient clicked the unsubscribe link, specified in the UTC format.

      • updated_atstring

        Timestamp of when the user’s details were last updated in the Freshsales Suite system, specified in the UTC format.

      • uuidstring

        Auto-generated unique user identifier.

    • email_statusstring

      Status of the email after it reaches (or tries reaching) the contact’s email address.

      Possible values: Default, Sent, Bounced, Replied, Opened, Clicked

      If an incoming email triggers the event, the value of this attribute is Default.

    • idinteger

      Identifier of an email conversation object, auto-generated when the email conversation is initiated in the Freshsales Suite system.

    • in_reply_tostring

      If the reply to an existing message of an email conversation triggered the event, in_reply_to identifies the message to which the reply is sent.

      For onEmailConversationCreate, this value is null.

    • message_idstring

      An email conversation can consist of multiple messages.

      message_id is the auto-generated identifier associated with the message that triggered the event.

    • needs_trackingboolean

      Specifies whether open and click tracking is enabled. Tracking helps collect information on whether the email is opened and the link(s) that are part of the email is clicked.

      Possible values: true, false

    • ref_conversation_idstring

      When an email is sent or received, an email conversation is created in the Freshsales Suite system.

      ref_conversation_id is the auto-generated identifier of the parent email conversation (the message that triggered the onEmailConversationCreate event).

    • scheduled_atstring

      Emails can be scheduled to be sent at a specific date and time.

      The value of scheduled_at indicates the date and time at which the email is scheduled to be sent, in the UTC format.

      If an incoming email triggers the event, the value of this attribute is null.

    • source_additional_infoobject

      Information related to the source of the contact’s email address.

      • idinteger

        Identifier of the source object, auto-generated when the source of the contact is created in the Freshsales Suite system.

      • namestring

        Name of the source.

      • sourcestring

        Internal identifier of the source.

    • statusstring

      Specifies the status based on whether the message is sent from or received into the Freshsales Suite system.

      Possible values:

      • Sent: If creation of an outgoing email triggers the event.
      • Default: If an incoming email triggers the event.
    • subjectstring

      Subject line of the email.

    • template_idinteger

      Identifier of the template using which the email was sent.

      When the email is received into the Freshsales Suite system, this value is null.

    • unsubscribeboolean

      Specifies whether an unsubscribe link is added to the email.

      Possible values: true, false

    • updated_atstring

      Timestamp of when the email conversation was last updated in the Freshsales Suite system, specified in the UTC format.

onEmailConversationUpdate

The onEmailConversationUpdate event is triggered when,

  • The email is opened if the email tracking is enabled.
  • The link(s) added to the email is clicked if the email tracking is enabled.
  • A reply is sent to a message or a new message is added to the email conversation.

Subscribe to the onEmailConversationUpdate event and register the callback by using the following sample manifest.json content.

manifest.json
"events": {
  "onEmailConversationUpdate": {
    "handler": "onEmailConversationUpdateCallback"
  }
}

Define the corresponding callback by using the following sample server.js content:

server.js
exports = {
  onEmailConversationUpdateCallback: function(payload) {
  console.log("Logging arguments from onEmailConversationUpdate event: " + JSON.stringify(payload));
  }
}

Attributes of the data object

  • actorobject

    Information pertaining to the entity who triggered the onEmailConversationUpdate event in the Freshsales Suite system.

    • created_atstring

      Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

    • deal_pipeline_idinteger

      Identifier of the deal pipeline with which the user who created the email-conversation is associated (if the user is assigned as a contact or sales owner when the deal is configured).

    • emailstring

      Email address of the user.

    • idinteger

      Identifier of the user.

    • is_activeboolean

      Specifies whether the user is currently active in the Freshsales Suite system.

      Possible values: true, false

    • job_titlestring

      Designation of the user in the Freshsales Suite system.

    • mobile_numberstring

      Contact number of the user.

    • namestring

      Name of the user.

    • reports_to_idinteger

      Identifier of the user to whom the user reports. Note:If the actor.type is system, only the actor.id, actor.name, and actor.type values are displayed as part of the actor object.

    • time_zonestring

      Time zone of the user configured in the Freshsales Suite system.

    • typestring

      Identifier specifying whether a user or system created the email conversation.

      Possible values: user, system

    • updated_atstring

      Timestamp of when the user details were last updated in the Freshsales Suite system, specified in the UTC format.

    • work_numberstring

      Official phone number of the user.

  • associationsobject

    All associated objects of the email conversation object, which specify additional information pertaining to the conversation updated.

    • creatorobject

      Information pertaining to the user who initiated/updated/deleted the email conversation.

      • created_atstring

        Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

      • deal_pipeline_idinteger

        Identifier of the deal pipeline with which the email-conversation creator is associated (if the creator is assigned as a contact or sales owner when the deal is configured).

      • emailstring

        Email address of the user.

      • idinteger

        Identifier of the user.

      • is_activeboolean

        Specifies whether the user is currently active in the Freshsales Suite system.

        Possible values: true, false

      • job_titlestring

        Designation of the user in the Freshsales Suite system.

      • mobile_numberstring

        Contact number of the user.

      • namestring

        Name of the user.

      • reports_to_idinteger

        Identifier of the user to whom the user reports.

      • time_zonestring

        Time zone of the user configured in the Freshsales Suite system.

      • typestring

        Identifier specifying whether a user or system initiated the email conversation.

        Possible value: user

      • updated_atstring

        Timestamp of when the user details were last updated in the Freshsales Suite system, specified in the UTC format.

      • work_numberstring

        Official phone number of the user.

  • changesobject

    Information pertaining to the changes that triggered the onEmailConversationUpdate event, specified as a JSON object of the following format:

    "changes": {
      "misc_changes": {},
      "model_changes": {
       //For non-array attributes
        "<email_conversation.attribute that changed>": ["Old value", "New value"]
        //For array attributes
        "<email_conversation.array attribute that changed>": [["Old array"], ["New array"]]
      },
      "system_changes": {}
    }
    • misc_changesobject

      List of all miscellaneous database parameters whose values have changed, along with the old and modified values.

    • model_changesobject

      List of all attributes whose values have changed, along with the old and modified values of the attributes.

    • system_changesobject

      List of all system-level parameters whose values have changed, along with the old and modified values.

  • email_conversationobject

    Information pertaining to an email conversation that is updated in the Freshsales Suite system.

    • created_atstring

      Timestamp of when the email conversation was configured in the Freshsales Suite system, specified in the UTC format.

    • creator_idstring

      Auto-generated identifier of the email’s sender.

      When the email is received into the Freshsales Suite system, this value is null.

    • date_headerstring

      Timestamp of when the email is sent, specified in the UTC format.

    • directionstring

      Direction specifying whether the message is sent from or received into the Freshsales Suite system.

      Possible values: Outgoing, Incoming

    • email_associationboolean

      Specifies whether the email address to which the email is sent to or received from is associated with a contact or lead existing in the Freshsales Suite system.

      If true, the email conversation is added to the recent conversations of the contact.

      Possible values: true, false

    • email_idinteger

      Auto-generated identifier of the email address from which the email that triggered the event originated.

    • email_recipientsarray of objects

      Information pertaining to all the email addresses associated with the email conversation.

      • bounce_reasonsstring

        Reason why the email was not delivered, if the value bounced is true.

      • bouncedboolean

        Specifies whether the email was not delivered to the recipient.

        Possible values: true, false

      • bounced_timestring

        Timestamp of when the email returned without being delivered, specified in the UTC format.

      • clickedboolean

        Specifies whether the recipient clicked the link in the email. Possible values: true, false

      • clicked_timestring

        Timestamp of when the recipient clicked the link in the email, specified in the UTC format.

      • conversation_idinteger

        When an email is sent or received, an email conversation is created in the Freshsales Suite system.

        conversation_id is the auto-generated identifier associated with the currently sent message in the email conversation.

      • created_atstring

        Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

      • email_addressstring

        Email address of the user.

      • email_idinteger

        Numeric identifier of the email address.

      • email_namestring

        Name of the user.

      • fieldstring

        email_recipients specifies the details of all email addresses added to the various fields when sending an email. field value identifies the field in which a particular email address is entered.

        Possible values: from, to, reply_to, cc, bcc

      • idinteger

        Identifier of the object, auto-generated when a user is added to the Freshsales Suite system.

      • openedboolean

        Specifies whether the recipient opened the email.

        Possible values: true, false

      • opened_timestring

        Timestamp of when the recipient opened the email, specified in the UTC format.

      • targetable_idinteger

        Email address to which the email is sent or received from can be associated with a contact or lead existing in the Freshsales Suite system. targetable_id is the identifier of the contact or lead to which the email address is associated with.

        The value of this attribute is null when the email_association value is false.

      • targetable_typestring

        Email address to which the email is sent or received from can be associated with a contact or lead existing in the Freshsales Suite system. targetable_type specifies whether the email address is associated with a contact or lead.

        Possible values: Contact, Lead

        The value of this attribute is null when the email_association value is false.

      • unsubscribedboolean

        Specifies whether the recipient has clicked the unsubscribe link in the email.

        Possible values: true, false

      • unsubscribed_timestring

        Timestamp of when the recipient clicked the unsubscribe link, specified in the UTC format.

      • updated_atstring

        Timestamp of when the user’s details were last updated in the Freshsales Suite system, specified in the UTC format.

      • uuidstring

        Auto-generated unique user identifier.

    • email_statusstring

      Status of the email after it reaches (or tries reaching) the contact’s email address.

      Possible values: Default, Sent, Bounced, Replied, Opened, Clicked

      If an incoming email triggers the event, the value of this attribute is Default.

    • idinteger

      Identifier of an email conversation object, auto-generated when the email conversation is initiated in the Freshsales Suite system.

    • in_reply_tostring

      If the reply to an existing message of an email conversation triggered the event, in_reply_to identifies the message to which the reply is sent.

      For onEmailConversationCreate, this value is null.

    • message_idstring

      An email conversation can consist of multiple messages.

      message_id is the auto-generated identifier associated with the message that triggered the event.

    • needs_trackingboolean

      Specifies whether open and click tracking is enabled. Tracking helps collect information on whether the email is opened and the link(s) that are part of the email is clicked.

      Possible values: true, false

    • ref_conversation_idstring

      When an email is sent or received, an email conversation is created in the Freshsales Suite system.

      ref_conversation_id is the auto-generated identifier of the parent email conversation (the message that triggered the onEmailConversationCreate event).

    • scheduled_atstring

      Emails can be scheduled to be sent at a specific date and time.

      The value of scheduled_at indicates the date and time at which the email is scheduled to be sent, in the UTC format.

      If an incoming email triggers the event, the value of this attribute is null.

    • source_additional_infoobject

      Information related to the source of the contact’s email address.

      • idinteger

        Identifier of the source object, auto-generated when the source of the contact is created in the Freshsales Suite system.

      • namestring

        Name of the source.

      • sourcestring

        Internal identifier of the source.

    • statusstring

      Specifies the status based on whether the message is sent from or received into the Freshsales Suite system.

      Possible values:

      • Sent: If creation of an outgoing email triggers the event.
      • Default: If an incoming email triggers the event.
    • subjectstring

      Subject line of the email.

    • template_idinteger

      Identifier of the template using which the email was sent.

      When the email is received into the Freshsales Suite system, this value is null.

    • unsubscribeboolean

      Specifies whether an unsubscribe link is added to the email.

      Possible values: true, false

    • updated_atstring

      Timestamp of when the email conversation was last updated in the Freshsales Suite system, specified in the UTC format.

onEmailConversationDelete

The onEmailConversationDelete event is triggered when,

  • There is a hard delete request for the email conversation from the Freshsales Suite system.
  • An email conversation is deleted from trash automatically after 30 days.

Subscribe to the onEmailConversationDelete event and register the callback by using the following sample manifest.json content.

manifest.json
"events": {
  "onEmailConversationDelete": {
    "handler": "onEmailConversationDeleteCallback"
  }
}

Define the corresponding callback by using the following sample server.js content:

server.js
exports = {
  onEmailConversationDeleteCallback: function(payload) {
  console.log("Logging arguments from onEmailConversationDelete event: " + JSON.stringify(payload));
  }
}

Attributes of the data object

  • actorobject

    Information pertaining to the entity who triggered the onEmailConversationDelete event in the Freshsales Suite system.

    • created_atstring

      Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

    • deal_pipeline_idinteger

      Identifier of the deal pipeline with which the user who created the email-conversation is associated (if the user is assigned as a contact or sales owner when the deal is configured).

    • emailstring

      Email address of the user.

    • idinteger

      Identifier of the user.

    • is_activeboolean

      Specifies whether the user is currently active in the Freshsales Suite system.

      Possible values: true, false

    • job_titlestring

      Designation of the user in the Freshsales Suite system.

    • mobile_numberstring

      Contact number of the user.

    • namestring

      Name of the user.

    • reports_to_idinteger

      Identifier of the user to whom the user reports. Note:If the actor.type is system, only the actor.id, actor.name, and actor.type values are displayed as part of the actor object.

    • time_zonestring

      Time zone of the user configured in the Freshsales Suite system.

    • typestring

      Identifier specifying whether a user or system created the email conversation.

      Possible values: user, system

    • updated_atstring

      Timestamp of when the user details were last updated in the Freshsales Suite system, specified in the UTC format.

    • work_numberstring

      Official phone number of the user.

  • associationsobject

    All associated objects of the email conversation object, which specify additional information pertaining to the conversation deleted.

    • creatorobject

      Information pertaining to the user who initiated/updated/deleted the email conversation.

      • created_atstring

        Timestamp of when the user was created in the Freshsales Suite system, specified in the UTC format.

      • deal_pipeline_idinteger

        Identifier of the deal pipeline with which the email-conversation creator is associated (if the creator is assigned as a contact or sales owner when the deal is configured).

      • emailstring

        Email address of the user.

      • idinteger

        Identifier of the user.

      • is_activeboolean

        Specifies whether the user is currently active in the Freshsales Suite system.

        Possible values: true, false

      • job_titlestring

        Designation of the user in the Freshsales Suite system.

      • mobile_numberstring

        Contact number of the user.

      • namestring

        Name of the user.

      • reports_to_idinteger

        Identifier of the user to whom the user reports.

      • time_zonestring

        Time zone of the user configured in the Freshsales Suite system.

      • typestring

        Identifier specifying whether a user or system initiated the email conversation.

        Possible value: user

      • updated_atstring

        Timestamp of when the user details were last updated in the Freshsales Suite system, specified in the UTC format.

      • work_numberstring

        Official phone number of the user.

  • email_conversationobject

    Information pertaining to an email conversation that is deleted from the Freshsales Suite system.

    • created_atstring

      Timestamp of when the email conversation was configured in the Freshsales Suite system, specified in the UTC format.

    • email_recipient_idsarray of integers

      Identifiers of all the email addresses associated with the email conversation, specified as an array.

    • idinteger

      Identifier of an email conversation object, auto-generated when the email conversation is initiated in the Freshsales Suite system.

    • message_idstring

      An email conversation can consist of multiple messages.

      message_id is the auto-generated identifier associated with the message that was last sent.

    • source_additional_infoobject

      Information related to the source of the contact’s email address.

      • idinteger

        Identifier of the source object, auto-generated when the source of the contact is created in the Freshsales Suite system.

      • namestring

        Name of the source.

      • sourcestring

        Internal identifier of the source.

    • updated_atstring

      Timestamp of when the email conversation was last updated in the Freshsales Suite system, specified in the UTC format.