First of all, RingCentral does not support API key for authentication. Instead, we support JWT flow and Code flow (3-legged OAuth).
In both methods, RingCentral will return the tokens object which includes an access token, the access token expiration duration (normally 1 hour), a refresh token and the refresh token expiration duration (7 days). Developers can use the JWT token or can request the user to login once, then maintain the access token by using the refresh token to exchange for new access token periodically.
I am not a CData Sync expert and never used it. But I Googled and got this answer.
Q/ Does CData sync support oauth authentication using a refresh token
A/ Yes, CData Sync supports OAuth authentication using a refresh token, allowing it to automatically renew expired access tokens without requiring manual re-authentication. This is managed through configuration options that control how CData Sync initiates and maintains the OAuth flow.
CData Sync's OAuth refresh options
When setting up an OAuth connection, you can choose how CData Sync handles the token life cycle with the InitiateOAuth property.
GETANDREFRESH: This is the most automated option.
- If no token exists, CData Sync initiates the full OAuth flow, prompting a user to log in and authorize access through a browser.
- The application saves the access and refresh tokens to a configuration file specified by
OAuthSettingsLocation. - When the access token later expires, CData Sync automatically uses the saved refresh token to get a new one without user intervention.
REFRESH: This option assumes that a valid refresh token already exists.
- It is used to automatically renew an expired access token using a previously obtained refresh token.
- With this setting, CData Sync will not prompt the user for initial authorization.
OFF: This disables the automatic OAuth flow.
- All token management, including obtaining and refreshing, must be handled manually by the user or application.