Collection of Facebook workflows for PAL.
For details, read the Facebook documentation.
You can configure the workflow by passing options below into pal:new/2 or pal:group/2 functions:
client_id(required) - The client ID obtained from the App dashboard.client_secret(required) - The client secret obtained from the App Dashboard.redirect_uri(required) - The client redirection endpoint. After completing its interaction with the resource owner, the authorization server directs the resource owner's user-agent to this uri.scope(optional) - A list of requested permissions.request_options(optional) - Options for the hackney HTTP client.includes(optional) - Parts of authentication schema to be processed by the workflow. All by default,[uid, credentials, info, extra, rules].
code- The authorization code.state- The state was previously passed to the authentication provider.errorIf the request fails due to a missing, invalid, or mismatching redirection URI, or if the client identifier is missing or invalid.
An successful execution of pal:authenticate/{2,3} function returns
the authentication schema below.
#{access_token => <<"...">>,
expires_in => <<"5183998">>}See a complete example with PAL and Cowboy HTTP server here.
You can configure the workflow by passing options below into pal:new/2 or pal:group/2 functions:
request_options(optional) - Options for the hackney HTTP client.includes(optional) - Parts of authentication schema to be processed by the workflow. All by default,[uid, credentials, info, extra, rules].
access_token- An access Token obtained using thepal_facebook_oauth2_authcodeworkflow.
An successful execution of pal:authenticate/{2,3} function returns
the authentication schema below.
#{uid => <<"...">>,
info =>
#{name => <<"John Doe">>,
first_name => <<"John">>,
last_name => <<"Doe">>,
gender => <<"male">>,
email => <<"[email protected]">>,
image => <<"https://graph.facebook.com/...">>,
uri => <<"https://www.facebook.com/...">>}}See a complete example with PAL and Cowboy HTTP server here.
The source code is provided under the terms of the MIT license.