Asanaficator

Summary

authorization_header(options)

Same as authorization_header/2 but defaults initial headers to include @user_agent

authorization_header(arg1, headers)

There are two ways to authenticate through GitHub API v3:

delete!(url, headers \\ [], options \\ [])

Issues a DELETE request to the given url, raising an exception in case of failure

delete(url, headers \\ [], options \\ [])

Issues a DELETE request to the given url

get!(url, headers \\ [], options \\ [])

Issues a GET request to the given url, raising an exception in case of failure

get(url, headers \\ [], options \\ [])

Issues a GET request to the given url

head!(url, headers \\ [], options \\ [])

Issues a HEAD request to the given url, raising an exception in case of failure

head(url, headers \\ [], options \\ [])

Issues a HEAD request to the given url

json_request(method, url, body \\ "", headers \\ [], options \\ [])
options!(url, headers \\ [], options \\ [])

Issues a OPTIONS request to the given url, raising an exception in case of failure

options(url, headers \\ [], options \\ [])

Issues an OPTIONS request to the given url

patch!(url, body, headers \\ [], options \\ [])

Issues a PATCH request to the given url, raising an exception in case of failure

patch(path, client, body \\ "")
patch(url, body, headers \\ [], options \\ [])

Issues a PATCH request to the given url

post!(url, body, headers \\ [], options \\ [])

Issues a POST request to the given url, raising an exception in case of failure

post(path, client, body \\ "")
post(url, body, headers \\ [], options \\ [])

Issues a POST request to the given url

process_response(response)
put!(url, body, headers \\ [], options \\ [])

Issues a PUT request to the given url, raising an exception in case of failure

put(path, client, body \\ "")
put(url, body, headers \\ [], options \\ [])

Issues a PUT request to the given url

raw_request(method, url, body \\ "", headers \\ [], options \\ [])
request!(method, url, body \\ "", headers \\ [], options \\ [])

Issues an HTTP request with the given method to the given url, raising an exception in case of failure

request(method, url, body \\ "", headers \\ [], options \\ [])

Issues an HTTP request with the given method to the given url

start()

Starts HTTPoison and its dependencies

Types

headers :: %{} | [{binary, binary}]

response :: {integer, any} | :jsx.json_term

Functions

authorization_header(options)

Same as authorization_header/2 but defaults initial headers to include @user_agent.

authorization_header(arg1, headers)

Specs:

There are two ways to authenticate through GitHub API v3:

  • Basic authentication
  • OAuth2 Token

This function accepts both.

More info

https://asana.com/developers/documentation/getting-started/authentication

delete(url, headers \\ [], options \\ [])

Specs:

  • delete(binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues a DELETE request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

delete!(url, headers \\ [], options \\ [])

Specs:

  • delete!(binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a DELETE request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

get(url, headers \\ [], options \\ [])

Specs:

  • get(binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues a GET request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

get!(url, headers \\ [], options \\ [])

Specs:

  • get!(binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a GET request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

head(url, headers \\ [], options \\ [])

Specs:

  • head(binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues a HEAD request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

head!(url, headers \\ [], options \\ [])

Specs:

  • head!(binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a HEAD request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

json_request(method, url, body \\ "", headers \\ [], options \\ [])
options(url, headers \\ [], options \\ [])

Specs:

  • options(binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues an OPTIONS request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

options!(url, headers \\ [], options \\ [])

Specs:

  • options!(binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a OPTIONS request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

patch(path, client, body \\ "")
patch(url, body, headers \\ [], options \\ [])

Specs:

  • patch(binary, binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues a PATCH request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

patch!(url, body, headers \\ [], options \\ [])

Specs:

  • patch!(binary, binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a PATCH request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

post(path, client, body \\ "")
post(url, body, headers \\ [], options \\ [])

Specs:

  • post(binary, binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues a POST request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

post!(url, body, headers \\ [], options \\ [])

Specs:

  • post!(binary, binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a POST request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

process_response(response)

Specs:

  • process_response(HTTPoison.Response.t) :: response
put(path, client, body \\ "")
put(url, body, headers \\ [], options \\ [])

Specs:

  • put(binary, binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues a PUT request to the given url.

Returns {:ok, response} if the request is successful, {:error, reason} otherwise.

See request/5 for more detailed information.

put!(url, body, headers \\ [], options \\ [])

Specs:

  • put!(binary, binary, headers, [{atom, any}]) :: HTTPoison.Response.t | HTTPoison.AsyncResponse.t

Issues a PUT request to the given url, raising an exception in case of failure.

If the request does not fail, the response is returned.

See request!/5 for more detailed information.

raw_request(method, url, body \\ "", headers \\ [], options \\ [])
request(method, url, body \\ "", headers \\ [], options \\ [])

Specs:

  • request(atom, binary, binary, headers, [{atom, any}]) :: {:ok, HTTPoison.Response.t | HTTPoison.AsyncResponse.t} | {:error, HTTPoison.Error.t}

Issues an HTTP request with the given method to the given url.

Args:

  • method - HTTP method as an atom (:get, :head, :post, :put, :delete, etc.)
  • url - target url as a binary string or char list
  • body - request body as a binary string or char list
  • headers - HTTP headers as an orddict (e.g., `[{:Accept, "application/json"}]`)
  • options - orddict of options

Options:

  • :timeout - the timeout (in milliseconds) of the request
  • :stream_to - a PID to stream the response to
  • :proxy - a proxy to be used for the request; it can by a regular url or a {Host, Proxy} tuple

This function returns {:ok, response} or {:ok, async_response} if the request is successful, {:error, reason} otherwise.

Examples

request(:post, "https://my.website.com", "{\"foo\": 3}", [{"Accept", "application/json"}])
request!(method, url, body \\ "", headers \\ [], options \\ [])

Specs:

  • request!(atom, binary, binary, headers, [{atom, any}]) :: HTTPoison.Response.t

Issues an HTTP request with the given method to the given url, raising an exception in case of failure.

request!/5 works exactly like request/5 but it returns just the response in case of a successful request, raising an exception in case the request fails.

start()

Starts HTTPoison and its dependencies.