<%= render :partial => "header" %>
<%= tr("Trusted Application Authorization Flow") %>

<%=tr("The trusted application flow can only be used if your application has a trust relationship with the user and no other flow can work for your application.") %> <%=tr("For example, you can use trusted app flow if you have a highly privileged desktop application and user wants to give your application explicit access to all user data by providing you with user login and password.") %> <%=tr("This flow is not enabled by default.") %> <%=tr("If you want to use this flow, please email us and after we review your request we will make a decision on granting you the flow access.") %>

<%=tr("Application Authorization") %>

<%=tr("In order to authenticate your application, you must pass the following parameter to the request_token endpoint:") %>

<%=tr("Oauth Endpoint") %>

https://<%=Platform::Config.site_base_url %>/platform/oauth/request_token

<%=tr("Parameters") %>

<%=tr("Name") %> <%=tr("Description") %> <%=tr("Required") %>
client_id <%=tr("Application key generated during the app registration.") %> true
username <%=tr("User's username.") %> true
password <%=tr("User's password.") %> true
grant_type <%=tr("For this flow the grant type must be set to \"password\".") %> true
scope <%=tr("A comma delimited list of permissions that the application needs.") %> <%=tr("By default the scope is set to a full data access.") %> <%=tr("This is subject to change in the upcoming releases.") %> false

<%=tr("Example")%>

https://<%=Platform::Config.site_base_url %>/platform/oauth/request_token?client_id=YOUR_APP_ID&username=USERNAME&password=PASSWORD&grant_type=password

<%=tr("If your app is successfully authenticated and the user credentials are valid, the authorization server will return the access token in a JSON format:")%>

<%=tr("Returned Fields") %>

<%=tr("Name") %> <%=tr("Type") %> <%=tr("Description") %>
access_token String <%=tr("Access token to be used with every API request")%>
expires_in Number <%=tr("Seconds until the token will expire")%>
refresh_token String <%=tr("Token that can be used to get a new access token")%>

<%=tr("Example") %>

{"expires_in":86400,"refresh_token":"wEq6FMb3CcfPN6CckQv7","access_token":"sye4NMd130L4wqq13zjqqLHwuHd5jnnKwdVi9S8X"}

<%=tr("If your app failed to provide appropriate parameters, you will get one of the errors below in JSON format:")%>

<%=tr("Returned Fields") %>

<%=tr("Name") %> <%=tr("Type") %> <%=tr("Description") %>
error String <%=tr("Error code")%>
error_description String <%=tr("Error description")%>

<%=tr("Example") %>

{"error_description":"invalid client application id","error":"unauthorized_client"}

<%= render :partial => "footer" %>