4162b5be55
* feat: remove Revert.dev dependency from Pipedrive integration - Replace Revert API calls with direct Pipedrive OAuth2 and REST API - Update OAuth flow to use Pipedrive's authorization endpoint - Implement token exchange in callback handler - Map Revert's unified API format to Pipedrive's native API structure - Remove REVERT_* environment variables from configuration - Update app config to reflect direct Pipedrive integration - Follow patterns from other CRM integrations like HubSpot Breaking change: Requires PIPEDRIVE_CLIENT_ID and PIPEDRIVE_CLIENT_SECRET environment variables instead of REVERT_* variables Co-Authored-By: anik@cal.com <adhabal2002@gmail.com> * feat: implement proper token refresh logic for Pipedrive OAuth - Add token refresh implementation following Pipedrive OAuth2 specification - Use proper Basic Auth for token refresh requests - Handle token refresh errors with appropriate logging - Update access token and expiry date after successful refresh - Add note about database credential update requirement Co-Authored-By: anik@cal.com <adhabal2002@gmail.com> * feat: add database credential updates for Pipedrive token refresh - Import updateTokenObjectInDb utility for proper credential management - Store credentialId in constructor for database updates - Update token refresh logic to persist refreshed tokens to database - Follow Cal.com patterns for OAuth credential management - Ensure tokens are properly updated after successful refresh Co-Authored-By: anik@cal.com <adhabal2002@gmail.com> * refactor: use OAuthManager for Pipedrive token management - Refactor CrmService.ts to use OAuthManager instead of manual token refresh - Create getPipedriveAppKeys helper function for client credentials - Update callback.ts to use the new helper function - Add requestPipedrive helper method for all API calls - Implement proper token refresh callbacks (isTokenObjectUnusable, isAccessTokenUnusable) This addresses the review comments from hariom and cubic on PR #22492. Co-Authored-By: anik@cal.com <adhabal2002@gmail.com> * fix: validate token endpoint response before storing Pipedrive credentials Co-Authored-By: unknown <> --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
137 lines
4.1 KiB
Bash
137 lines
4.1 KiB
Bash
# ********** INDEX **********
|
|
#
|
|
# - APP STORE
|
|
# - BASECAMP
|
|
# - DAILY.CO VIDEO
|
|
# - GOOGLE CALENDAR/MEET/LOGIN
|
|
# - HUBSPOT
|
|
# - HUDDLE01
|
|
# - OFFICE 365
|
|
# - SLACK
|
|
# - STRIPE
|
|
# - TANDEM
|
|
# - ZOOM
|
|
# - GIPHY
|
|
# - VITAL
|
|
# - ZAPIER
|
|
# - LARK
|
|
# - WEB3
|
|
# - SALESFORCE
|
|
# - ZOHOCRM
|
|
# - ZOHO_BIGIN
|
|
|
|
# - APP STORE **********************************************************************************************
|
|
# ⚠️ ⚠️ ⚠️ THESE WILL BE MIGRATED TO THE DATABASE TO PREVENT AWS's 4KB ENV QUOTA ⚠️ ⚠️ ⚠️
|
|
|
|
# - BASECAMP
|
|
# Used to enable Basecamp integration with Cal.com
|
|
# @see https://github.com/calcom/cal.com#obtaining-basecamp-client-id-and-secret
|
|
BASECAMP3_CLIENT_ID=
|
|
BASECAMP3_CLIENT_SECRET=
|
|
BASECAMP3_USER_AGENT=
|
|
|
|
# - DAILY.CO VIDEO
|
|
# Enables Cal Video. to get your key
|
|
# 1. Visit our [Daily.co Partnership Form](https://go.cal.com/daily) and enter your information
|
|
# 2. From within your dashboard, go to the [developers](https://dashboard.daily.co/developers) tab.
|
|
# @see https://github.com/calcom/cal.com#obtaining-daily-api-credentials
|
|
|
|
DAILY_API_KEY=
|
|
DAILY_SCALE_PLAN=''
|
|
DAILY_WEBHOOK_SECRET=''
|
|
DAILY_MEETING_ENDED_WEBHOOK_SECRET=''
|
|
|
|
# - GOOGLE CALENDAR/MEET/LOGIN
|
|
# Needed to enable Google Calendar integration and Login with Google
|
|
# @see https://github.com/calcom/cal.com#obtaining-the-google-api-credentials
|
|
GOOGLE_API_CREDENTIALS=
|
|
|
|
# To enable Login with Google you need to:
|
|
# 1. Set `GOOGLE_API_CREDENTIALS` above
|
|
# 2. Set `GOOGLE_LOGIN_ENABLED` to `true`
|
|
# When self-hosting please ensure you configure the Google integration as an Internal app so no one else can login to your instance
|
|
# @see https://support.google.com/cloud/answer/6158849#public-and-internal&zippy=%2Cpublic-and-internal-applications
|
|
GOOGLE_LOGIN_ENABLED=false
|
|
|
|
# - HUBSPOT
|
|
# Used for the HubSpot integration
|
|
# @see https://github.com/calcom/cal.com/#obtaining-hubspot-client-id-and-secret
|
|
HUBSPOT_CLIENT_ID=""
|
|
HUBSPOT_CLIENT_SECRET=""
|
|
|
|
# - OFFICE 365
|
|
# Used for the Office 365 / Outlook.com Calendar / MS Teams integration
|
|
# @see https://github.com/calcom/cal.com/#Obtaining-Microsoft-Graph-Client-ID-and-Secret
|
|
MS_GRAPH_CLIENT_ID=
|
|
MS_GRAPH_CLIENT_SECRET=
|
|
|
|
# - SLACK
|
|
# @see https://github.com/calcom/cal.com/#obtaining-slack-client-id-and-secret-and-signing-secret
|
|
SLACK_SIGNING_SECRET=
|
|
SLACK_CLIENT_ID=
|
|
SLACK_CLIENT_SECRET=
|
|
|
|
# - STRIPE
|
|
NEXT_PUBLIC_STRIPE_PUBLIC_KEY= # pk_test_...
|
|
STRIPE_PRIVATE_KEY= # sk_test_...
|
|
STRIPE_WEBHOOK_SECRET= # whsec_...
|
|
STRIPE_CLIENT_ID= # ca_...
|
|
PAYMENT_FEE_FIXED=10 # Take 10 additional cents commission
|
|
PAYMENT_FEE_PERCENTAGE=0.005 # Take 0.5% commission
|
|
|
|
# - TANDEM
|
|
# Used for the Tandem integration -- contact support@tandem.chat for API access.
|
|
TANDEM_CLIENT_ID=""
|
|
TANDEM_CLIENT_SECRET=""
|
|
TANDEM_BASE_URL="https://tandem.chat"
|
|
|
|
# - ZOOM
|
|
# Used for the Zoom integration
|
|
# @see https://github.com/calcom/cal.com/#obtaining-zoom-client-id-and-secret
|
|
ZOOM_CLIENT_ID=
|
|
ZOOM_CLIENT_SECRET=
|
|
|
|
# - GIPHY
|
|
# Used for the Giphy integration
|
|
# @see https://support.giphy.com/hc/en-us/articles/360020283431-Request-A-GIPHY-API-Key
|
|
GIPHY_API_KEY=
|
|
|
|
# - VITAL
|
|
# Used for the vital integration
|
|
# @see https://github.com/calcom/cal.com/#obtaining-vital-api-keys
|
|
VITAL_API_KEY=
|
|
VITAL_WEBHOOK_SECRET=
|
|
# "sandbox" | "prod" | "production" | "development"
|
|
VITAL_DEVELOPMENT_MODE="sandbox"
|
|
# "us" | "eu"
|
|
VITAL_REGION="us"
|
|
|
|
# - ZAPIER
|
|
# Used for the Zapier integration
|
|
# @see https://github.com/calcom/cal.com/blob/main/packages/app-store/zapier/README.md
|
|
ZAPIER_INVITE_LINK=""
|
|
|
|
# - LARK
|
|
# Needed to enable Lark Calendar integration and Login with Lark
|
|
# @see <https://open.larksuite.com/document/ukTMukTMukTM/ukDNz4SO0MjL5QzM/g>
|
|
LARK_OPEN_APP_ID=""
|
|
LARK_OPEN_APP_SECRET=""
|
|
LARK_OPEN_VERIFICATION_TOKEN=""
|
|
|
|
# - SALESFORCE
|
|
# Used for the Salesforce (Sales Cloud) app
|
|
SALESFORCE_CONSUMER_KEY=""
|
|
SALESFORCE_CONSUMER_SECRET=""
|
|
|
|
# - ZOHOCRM
|
|
# Used for the Zoho CRM integration
|
|
ZOHOCRM_CLIENT_ID=""
|
|
ZOHOCRM_CLIENT_SECRET=""
|
|
|
|
|
|
# *********************************************************************************************************
|
|
|
|
# - Huddle01
|
|
# Used for the huddle01 integration
|
|
HUDDLE01_API_TOKEN=
|