MeltanoLabs / tap-salesforce

Singer.io tap for the Salesforce API
GNU Affero General Public License v3.0
1 stars 29 forks source link

feat: authentication module that supports both OAuth2 #61

Open srijan-chaudhuri opened 1 month ago

srijan-chaudhuri commented 1 month ago

Description of Change:

This PR introduces a cleaner way of handling errors so users can get more information about the point of failure.

Key changes:

OAuth2 authentication using client_id, client_secret, and refresh_token. Password-based authentication using username, password, and security_token. Retry logic for OAuth2 failures via the backoff library, ensuring retriable errors like expired tokens are automatically handled. Automatic token refresh every 15 minutes using a background thread for OAuth2. Config parsing to select and use the correct credential type (OAuth or password).

Closes issue:

https://github.com/MeltanoLabs/tap-salesforce/issues/62