defmodule Beanstream do @moduledoc """ A HTTP client for Beanstream. """ use HTTPoison.Base # based on HTTPoison @endpoint "https://www.beanstream.com/api/v1/" # Creates the URL for our endpoint. def process_url(path) do @endpoint <> path end # Encode the request as JSON. defp process_request_body(body) do Poison.encode!(body) end # Decode the response body as JSON. defp process_response_body(body) do Poison.decode!(body) end # Static headers for all requests. defp process_request_headers(headers) do Enum.into(headers, [{"Content-Type", "application/json"}]) end end