Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SAASINT-2960] DDSaaS: Intercom: Integration v1.0.0 #18602

Open
wants to merge 18 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/config/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,8 @@ integration/iis:
- iis/**/*
integration/impala:
- impala/**/*
integration/intercom:
- intercom/**/*
integration/istio:
- istio/**/*
integration/jboss_wildfly:
Expand Down
7 changes: 7 additions & 0 deletions intercom/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# CHANGELOG - Intercom

## 1.0.0 / 2024-09-17

***Added***:

* Initial Release
84 changes: 84 additions & 0 deletions intercom/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# Intercom

## Overview
[Intercom][1] is a customer communication platform that enables businesses to engage with their users through in-app messaging, email, and chat. It offers features like live chat, automated messaging, and customer support tools, making it easier for companies to provide personalized customer experiences.

The Intercom integration seamlessly collects admin activities, data events, conversations, news items and tickets data and ingests them into Datadog for comprehensive analysis using webhooks.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The Intercom integration seamlessly collects admin activities, data events, conversations, news items and tickets data and ingests them into Datadog for comprehensive analysis using webhooks.
The Intercom integration seamlessly collects admin activities, data events, conversations, news items, and ticket data, and ingests them into Datadog for comprehensive analysis using webhooks.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have applied the changes as per suggested.


## Setup

Follow the instructions below to configure this integration for your Intercom account.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Follow the instructions in the Configuration section.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have taken the reference from Contentful README.


### Configuration

#### Webhook Configuration
Configure the Datadog endpoint to forward Intercom events as logs to Datadog. See [Intercom webhook overview][3] for more details.

- #### Webhook URL generation
- Select an existing API key or create a new one by clicking one of the buttons below:<!-- UI Component to be added by DataDog team -->
- #### Register a new application
- Sign in to your [Intercom][2] account with a user which has full access to Apps and Integrations.
- Go to **Settings**.
- Under the Integrations section, select **Developer Hub**.
- Click on **New app**
- Fill in the required details for your application, such as the name and associated workspace.
- Click **Create app**.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Sign in to your [Intercom][2] account with a user which has full access to Apps and Integrations.
- Go to **Settings**.
- Under the Integrations section, select **Developer Hub**.
- Click on **New app**
- Fill in the required details for your application, such as the name and associated workspace.
- Click **Create app**.
1. Sign in to your [Intercom][2] account using a user account with full access to Apps and Integrations.
2. Go to **Settings**.
3. In the Integrations section, select **Developer Hub**.
4. Click **New app**.
5. Fill in the required details for your application, such as the name and associated workspace.
6. Click **Create app**.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for your suggestion. I have applied the changes as recommended.

- #### Configure webhook topics
- Select Required permissions
- After creating the app, go to the *Authentication* section in the left-hand menu and click on the **Edit** button in the top-right corner.
- By default, all permissions will be enabled, but ensure that the following permissions are specifically enabled:
- Read admins
- Read content data
- Read conversations
- Read events
- Read tickets
- Click **Save**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Select Required permissions
- After creating the app, go to the *Authentication* section in the left-hand menu and click on the **Edit** button in the top-right corner.
- By default, all permissions will be enabled, but ensure that the following permissions are specifically enabled:
- Read admins
- Read content data
- Read conversations
- Read events
- Read tickets
- Click **Save**
1. Select Required permissions
1. After creating the app, navigate to the *Authentication* section using the left-side menu and click **Edit** button in the upper-right corner.
2. By default, all permissions are enabled. However, ensure that the following specific permissions are enabled:
- Read admins
- Read content data
- Read conversations
- Read events
- Read tickets
3. Click **Save**.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have applied the recommended changes.

- Select Webhook topics
- Now, go to the Webhooks section present in the left sidebar.
- Enter the endpoint URL that was generated [here](#webhook-url-generation).
- From the dropdown menu labeled **Select a topic**, select the below webhook topics:
- admin.activity_log_event.created
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we please format these as code?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done changes as per suggestions.

- content_stat.news_item
- conversation.admin.closed
- conversation.admin.replied
- conversation.admin.single.created
- conversation.admin.snoozed
- conversation.admin.unsnoozed
- conversation.priority.updated
- conversation.rating.added
- conversation.user.created
- event.created
- ticket.admin.assigned
- ticket.attribute.updated
- ticket.created
- ticket.state.updated
- ticket.team.assigned
- Click **Save**.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Select Webhook topics
- Now, go to the Webhooks section present in the left sidebar.
- Enter the endpoint URL that was generated [here](#webhook-url-generation).
- From the dropdown menu labeled **Select a topic**, select the below webhook topics:
- admin.activity_log_event.created
- content_stat.news_item
- conversation.admin.closed
- conversation.admin.replied
- conversation.admin.single.created
- conversation.admin.snoozed
- conversation.admin.unsnoozed
- conversation.priority.updated
- conversation.rating.added
- conversation.user.created
- event.created
- ticket.admin.assigned
- ticket.attribute.updated
- ticket.created
- ticket.state.updated
- ticket.team.assigned
- Click **Save**.
2. Select Webhook topics
1. Next, navigate to the **Webhooks** section using the left-side menu.
2. Enter the endpoint URL that was generated [here](#webhook-url-generation).
3. On the **Select a topic** dropdown menu, select the following webhook topics:
- admin.activity_log_event.created
- content_stat.news_item
- conversation.admin.closed
- conversation.admin.replied
- conversation.admin.single.created
- conversation.admin.snoozed
- conversation.admin.unsnoozed
- conversation.priority.updated
- conversation.rating.added
- conversation.user.created
- event.created
- ticket.admin.assigned
- ticket.attribute.updated
- ticket.created
- ticket.state.updated
- ticket.team.assigned
4. Click **Save**.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have implemented the recommended changes.


## Data Collected

### Logs

The Intercom integration collects and forwards admin activities, tickets, data events, news items and conversation logs to Datadog.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The Intercom integration collects and forwards admin activities, tickets, data events, news items and conversation logs to Datadog.
The Intercom integration collects and forwards admin activities, tickets, data events, news items, and conversation logs to Datadog.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes have been implemented as per your suggestion.


### Metrics

The Intercom integration does not include any metrics.

### Events

The Intercom integration does not include any events.

### Service Checks

The Intercom integration does not include any service checks.

## Support

For further assistance, contact [Datadog Support][5].

[1]: https://www.intercom.com/
[2]: https://app.intercom.com/
[3]: https://developers.intercom.com/docs/webhooks
[4]: https://app.datadoghq.com/integrations/intercom
[5]: https://docs.datadoghq.com/help/
Loading
Loading