Intercom Elixir SDK

Intercom snippet

Intercom can be installed in your web app to help you chat to logged-in and logged-out users.

Full configuration options can be found here.

Generate Intercom Snippet

require Intercom # Generate the full Intercom snippet Intercom.snippet( %{email: "your_data@example.com"}, # Key value pairs identifying your user. app_id: "<your app id>", # Your app's identifier. secret: "<your secret key>" # Your app's secret key. This enables secure mode https://docs.intercom.io/configure-intercom-for-your-product-or-site/staying-secure/enable-secure-mode-on-your-web-product )

Example Web Snippet

For example, this shows how to generate the web snippet in a Phoenix web app:

defmodule HelloPhoenix.PageController do use HelloPhoenix.Web, :controller require Intercom plug :intercom def index(conn, _params) do # Intercom injectable via <%= raw @intercom %> render conn, "index.html" end defp intercom(conn, _params) do {:ok, snippet} = Intercom.snippet( %{email: "bob@foo.com"}, app_id: "<your app id>", secret: "<your secret>" ) assign(conn, :intercom, snippet) end end

Intercom REST API

The Intercom REST API provides full access to Intercom resources. This library provides a thin wrapper over httpoison:

require Intercom.Client Intercom.Client.start Intercom.Client.get!( "/users", [], hackney: Intercom.Client.auth("<personal access token>", "") )