<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.rws.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Refresh authentication token</title><link>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token</link><description>Wiki for Language Weaver Cloud</description><dc:language>en-US</dc:language><generator>Telligent Community 12 Non-Production</generator><item><title>Refresh authentication token</title><link>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token</link><pubDate>Fri, 07 Feb 2020 00:56:47 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:d60a7022-b305-4ae6-8545-b6a839aac2c1</guid><dc:creator>Quinn Lam (former member)</dc:creator><comments>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token#comments</comments><description>Current Revision posted to Wiki by Quinn Lam (former member) on 2/7/2020 12:56:47 AM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;Each call to the API must have an authorization token, by which the API service will determine if the request is authorized.&amp;nbsp; There are two methods to retrieve an authentication token:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Token Request with API credentials, which is a Client ID/Secret pair&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;The token created with this authentication flow is cached by SDL MT Cloud for 24 hours.&amp;nbsp; Therefore, the same token will be provided within the 24 hours of its validity period.&amp;nbsp; Programmers can decide to locally store the token value and use it in various requests to the REST API service and only make a new authentication call when the token expires, or make the authentication call each time and not program any local codes to manage the token expiration.&amp;nbsp;&amp;nbsp;In this scenario where you are unable to store the token and need to make another token request within 24 hours, you will notice that&amp;nbsp;the service reissue the same token and the response body will give you an updated time of when it will be expired.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Token Request with user credentials, which is a Username/Password pair&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Unlike the other authentication flow, tokens created with user credentials are not cached and therefore will be a new one with each request.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;Tokens are valid for 24 hours.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Our recommendation for machine to machine workflows where individual users&amp;nbsp;are not involved is to use authentication via API Credentials.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;For both authentication flows, the best implementation would be to generate a token &lt;strong&gt;once&lt;/strong&gt;&amp;nbsp;and store it, then only request a new one when&amp;nbsp;the token&amp;nbsp;expires. This way&amp;nbsp;you will get the best performance possible, as&amp;nbsp;your application will not make an extra request for every translation call (this extra request will add up after a while if the application has high translation needs).&lt;/span&gt;&lt;/p&gt;
&lt;div id="vidyowebrtcscreenshare_is_installed"&gt;&lt;/div&gt;
&lt;div id="vidyowebrtcscreenshare_is_installed"&gt;&lt;/div&gt;
&lt;div id="vidyowebrtcscreenshare_is_installed"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Refresh authentication token</title><link>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token/revision/2</link><pubDate>Tue, 05 Nov 2019 00:21:09 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:d60a7022-b305-4ae6-8545-b6a839aac2c1</guid><dc:creator>Quinn Lam (former member)</dc:creator><comments>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token#comments</comments><description>Revision 2 posted to Wiki by Quinn Lam (former member) on 11/5/2019 12:21:09 AM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;Each call to the API must have an authorization token, by which the API service will determine if the request is authorized.&amp;nbsp; There are two methods to retrieve an authentication token:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Token Request with API credentials, which is a Client ID/Secret pair&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;The token created with this authentication flow is cached by SDL MT Cloud for 24 hours.&amp;nbsp; Therefore, the same token will be provided within the 24 hours of its validity period.&amp;nbsp; Programmers can decide to locally store the token value and use it in various requests to the REST API service and only make a new authentication call when the token expires, or make the authentication call each time and not program any local codes to manage the token expiration.&amp;nbsp;&amp;nbsp;In this scenario where you are unable to store the token and need to make another token request within 24 hours, you will notice that&amp;nbsp;the service reissue the same token and the response body will give you an updated time of when it will be expired.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Token Request with user credentials, which is a Username/Password pair&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Unlike the other authentication flow, tokens created with user credentials are not cached and therefore will be a new one with each request.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;Tokens are valid for 24 hours.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Our recommendation for machine to machine workflows where individual users&amp;nbsp;are not involved is to use authentication via API Credentials.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;For both authentication flows, the best implementation would be to generate a token &lt;strong&gt;once&lt;/strong&gt;&amp;nbsp;and store it, then only request a new one when&amp;nbsp;the token&amp;nbsp;expires. This way&amp;nbsp;you will get the best performance possible, as&amp;nbsp;your application will not make an extra request for every translation call (This extra request will add up after a while if the application has high translation needs).&lt;/span&gt;&lt;/p&gt;
&lt;div id="vidyowebrtcscreenshare_is_installed"&gt;&lt;/div&gt;
&lt;div id="vidyowebrtcscreenshare_is_installed"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Refresh authentication token</title><link>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token/revision/1</link><pubDate>Tue, 05 Nov 2019 00:19:25 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:d60a7022-b305-4ae6-8545-b6a839aac2c1</guid><dc:creator>Quinn Lam (former member)</dc:creator><comments>https://community.rws.com/product-groups/linguistic-ai/cloud/w/language-weaver-wiki/5121/refresh-authentication-token#comments</comments><description>Revision 1 posted to Wiki by Quinn Lam (former member) on 11/5/2019 12:19:25 AM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;Each call to the API must have an authorization token, by which the API service will determine if the request is authorized.&amp;nbsp; There are two methods to retrieve an authentication token:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Token Request with API credentials, which is a Client ID/Secret pair&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;The token created with this authentication flow is cached by SDL MT Cloud for 24 hours.&amp;nbsp; Therefore, the same token will be provided within the 24 hours of its validity period.&amp;nbsp; Programmers can decide to locally store the token value and use it in various requests to the REST API service and only make a new authentication call when the token expires, or make the authentication call each time and not program any local codes to manage the token expiration.&amp;nbsp;&amp;nbsp;In this scenario where you are unable to store the token and need to make another token request within 24 hours, you will notice that&amp;nbsp;the service reissue the same token and the response body will give you an updated time of when it will be expired.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Token Request with user credentials, which is a Username/Password pair&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="font-family:inherit;"&gt;Unlike the other authentication flow, tokens created with user credentials are not cached and therefore will be a new one with each request.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;Tokens are valid for 24 hours.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Our recommendation for machine to machine workflows where individual users is not involved is to use authentication via API Credentials.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;For both authentication flows, the best would be to generate a token &lt;strong&gt;once&lt;/strong&gt;&amp;nbsp;and store it, then only request a new one when&amp;nbsp;the token&amp;nbsp;expires. This way&amp;nbsp;you will get the best performance possible, as&amp;nbsp;your application will not make an extra request for every translation call (This extra request will add up after a while if the application has high translation needs).&lt;/span&gt;&lt;/p&gt;
&lt;div id="vidyowebrtcscreenshare_is_installed"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item></channel></rss>