An elixir client library for Auth0
APACHE-2.0 License
An elixir client library for Auth0
You can install the stable version from hex:
def deps do
[{:auth0_ex, "~> 0.9"}]
end
You can use github repo as your package source to use the latest source code but beware it might have breaking and unstable code:
def deps do
[{:auth0_ex, github: "techgaun/auth0_ex"}]
end
Add a configuration block like below:
You can create non-interactive client for management api as described HERE.
Once you do that, you should be able to grab client ID and client secret from the setting page for use with Auth0Ex.
This is a recommended setup as Auth0Ex can recreate new access_token
when the current one expires.
config :auth0_ex,
domain: System.get_env("AUTH0_DOMAIN"),
mgmt_client_id: System.get_env("AUTH0_MGMT_CLIENT_ID"),
mgmt_client_secret: System.get_env("AUTH0_MGMT_CLIENT_SECRET"),
http_opts: []
config :auth0_ex,
domain: System.get_env("AUTH0_DOMAIN"),
mgmt_token: System.get_env("AUTH0_MGMT_TOKEN"),
http_opts: []
search_engine
API is being deprecated by Auth0. User queries now specify search_engine=v3
by default. If for some reason you need the v2
engine you can set v2_search: true
in your config block.AUTH0_DOMAIN
should be entire tenant domain Auth0 provides. We fall back to adding auth0.com
right now but that will be removed in future version. This allows us to use Auth0Ex
in all tenant regions unlike the previous versions.auth0.com
to be added, you can set config :auth0_ex, custom_domain: true
Export appropriate environment variable and you should be all set.
Please refer to the documentation for more details.
In addition to the management API resources, there is also a support for most used authentication APIs.
Authentication API will use the same domain
config you specify in the config above. If you wish to use Auth0Ex
for authentication APIs only, all you need to specify is domain
in config.