auth0_ex
                                
                                 auth0_ex copied to clipboard
                                
                                    auth0_ex copied to clipboard
                            
                            
                            
                        An elixir client library for Auth0
Auth0Ex
An elixir client library for Auth0
Installation
You can install the stable version from hex:
def deps do
[{:auth0_ex, "~> 0.8"}]
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
Configuration
Add a configuration block like below:
- First option is to use management api client.
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: []
- Second option is to use pre-created token with access to management API.
config :auth0_ex,
  domain: System.get_env("AUTH0_DOMAIN"),
  mgmt_token: System.get_env("AUTH0_MGMT_TOKEN"),
  http_opts: []
Notes
- The v2 search_engineAPI is being deprecated by Auth0. User queries now specifysearch_engine=v3by default. If for some reason you need thev2engine you can setv2_search: truein your config block.
- if you use pre-created management token, it will always be used for your requests.
- AUTH0_DOMAINshould be entire tenant domain Auth0 provides. We fall back to adding- auth0.comright now but that will be removed in future version. This allows us to use- Auth0Exin all tenant regions unlike the previous versions.
- If you don't want auth0.comto be added, you can setconfig :auth0_ex, custom_domain: true
Export appropriate environment variable and you should be all set.
Please refer to the documentation for more details.
Authentication API
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.