Packages

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

Current section

Files

Jump to
intercom_elixir lib intercom api rest.ex
Raw

lib/intercom/api/rest.ex

defmodule Intercom.API.Rest do
@moduledoc false
def url(path, opts \\ []) do
("https://api.intercom.io/" <> path)
|> URI.parse()
|> put_query(opts)
|> URI.to_string()
end
defp put_query(uri, []), do: uri
defp put_query(uri, opts), do: Map.put(uri, :query, URI.encode_query(opts))
def authorized_headers do
case Intercom.API.Authentication.get_access_token() do
{:ok, access_token} ->
{:ok,
[
Authorization: "Bearer #{access_token}",
Accept: "application/json",
"Content-Type": "application/json"
]}
{:error, error} ->
{:error, error}
end
end
end