Skip to content

Latest commit

 

History

History
71 lines (48 loc) · 2.32 KB

README.md

File metadata and controls

71 lines (48 loc) · 2.32 KB

This is a fork of the intercom library which is no longer maintained.

Intercom

An Elixir library for working with Intercom using the Intercom API.

Installation

Add intercom to your list of dependencies in mix.exs:

# Elixir version 1.13 or higher

def deps do
  [
    {:intercom, "~> 3.0", hex: :intercom_elixir}
  ]
end

# otherwise

def deps do
  [
    {:intercom, "~> 2.0", hex: :intercom_elixir}
  ]
end

Configuration

To get started you'll need to add your access_token to your config.exs file. You can also change the http_adapter used to make requests. This library uses HTTPoison by default.

See How to get your Access Token.

Keep your access token secret. It provides access to your private Intercom data and should be treated like a password.

config :intercom,
  access_token: "access_token_here..."
  http_adapter: HTTPoison

Usage

The full documentation is published to hexdocs.

This library provides functions for easy access to API endpoints. For example, User endpoints can be accessed like this:

# Get a user
{:ok, user} = Intercom.Users.get("a1b2")

# List users by `tag_id`
{:ok, %{"users" => users}} = Intercom.Users.list_by(tag_id: "a1b2")

# Insert or update a user
{:ok, upserted_user} = Intercom.Users.upsert(%{id: "a1b2", name: "Steve Buscemi"})

If there are endpoints in the API that aren't currently supported by this library, you can access them manually like this:

{:ok, data} = Intercom.API.call_endpoint(:post, "new_endpoint/a1b2", %{body_data: "here"})

Resources