Üeberauth Withings

Withings strategy for Üeberauth

Installation

If available in Hex, the package can be installed as:

  1. Register your application at https://oauth.withings.com/

  2. Add ueberauth_withings to your list of dependencies in mix.exs:

    def deps do
    [{:ueberauth_withings, "~> 1.0"}]
    end
  3. Ensure ueberauth_withings is started before your application:

For Elixir 1.4+:

  def application do
    [extra_applications: [:ueberauth_withings]]
  end

For older versions:

  def application do
    [applications: [:ueberauth_withings]]
  end
  1. Add Withings to your Üeberauth configuration

    config :ueberauth, Ueberauth,
    providers: [
     withings: { Ueberauth.Strategy.Withings, [] }
    ]
  2. Update your provider configuration:

    config :ueberauth, Ueberauth.Strategy.Withings.OAuth,
    consumer_key: System.get_env("WITHINGS_CONSUMER_KEY"),
    consumer_secret: System.get_env("WITHINGS_CONSUMER_SECRET")
  3. Include the Überauth plug in your controller:

    defmodule MyApp.AuthController do
    use MyApp.Web, :controller
    plug Ueberauth
    ...
    end
  4. Create the request and callback routes if you haven't already:

    scope "/auth", MyApp do
    pipe_through :browser
    
    get "/:provider", AuthController, :request
    get "/:provider/callback", AuthController, :callback
    end
  5. You controller needs to implement callbacks to deal with Ueberauth.Auth and Ueberauth.Failure responses.

Calling

Depending on the configured url you can initialize authorization through:

/auth/withings