Skip to content

Reference

Close

Set up Close OAuth for sales CRM and pipeline management

Connect your users to Close for sales CRM, pipeline management, and lead tracking.

PropertyValue
Provider IDclose
CategoryCRM
PKCESupported
Token refreshAutomatic
Redirect URIShown in Developer Portal

Go to Close Developer Settings

Navigate to Close Developer Settings and sign in.

Create an app

Open the OAuth Apps tab and click Create App.

Configure the application

Enter the app name and description. Add the Alter callback URL (from the Developer Portal) to Redirect URL.

Get credentials

Copy the Client ID and Client Secret.

Open the Developer Portal

Go to portal.alterauth.com and navigate to the application.

Add Close provider

Go to OAuth Providers > Add Provider > Close.

Enter credentials

  • Client ID: Paste your Close Client ID
  • Client Secret: Paste your Close Client Secret

Select scopes

Choose the scopes the application needs.

Save

Click Save. The provider is now active.

ScopeDescription
offline_accessRequest a refresh token for long-lived access
all.full_accessFull read and write access to all resources
all.readRead-only access to all resources
  • Alter always requests offline_access (it is a required scope), so Close issues a refresh token and Alter Vault renews access tokens automatically.
  • For read-only integrations, use all.read combined with offline_access.
  • A new OAuth app starts as Private: only users in the same Close organization can authorize it. Request Public from the app’s settings when users from other organizations need to connect.
  • See the Close API documentation for more details on authentication and available endpoints.

Alter policy rules can target these attested operations and families for operation-level and parameter-aware controls.

Operation IDFamiliesMethodProvider pathNotes
bulkCreatesendPOST/send_as/bulk/also accepts bulk-create
archivedelete, writePOST/playbook/{id}/archive/—
deletedeleteDELETE/lead/{id}/—
deleteAssociationdeleteDELETE/custom_field/shared/{scf_id}/association/{object_type}/also accepts delete-association
deleteByUseradmin, deleteDELETE/send_as/also accepts delete-by-user
deleteIntegrationadmin, deleteDELETE/scheduling_link/integration/{source_id}/also accepts delete-integration
deleteShareddeleteDELETE/shared_scheduling_link/{id}/also accepts delete-shared
deleteSharedAssociationdelete, writePOST/shared_scheduling_link_association/unmap/also accepts delete-shared-association
deleteSubscriptiondeleteDELETE/sequence_subscription/{id}/also accepts delete-subscription
removeMemberadmin, deleteDELETE/group/{group_id}/member/{user_id}/also accepts remove-member
unarchivedelete, writePOST/playbook/{id}/unarchive/—
addMemberadmin, writePOST/group/{group_id}/member/also accepts add-member
updatePinnedViewsadmin, writePUT/membership/{id}/pinned_views/also accepts update-pinned-views
updateSettingsadmin, writePUT/blocked_phone_number/settings/also accepts update-settings
bulk-updatewritePUT/task/—
createwritePOST/lead/—
createAssociationwritePOST/custom_field/shared/{scf_id}/association/also accepts create-association
post:/activity/meeting/{id}/integration/writePOST/activity/meeting/{id}/integration/also accepts create-integration
createLeadwritePOST/export/lead/also accepts create-lead
createOpportunitywritePOST/export/opportunity/also accepts create-opportunity
createSharedwritePOST/shared_scheduling_link/also accepts create-shared
createSharedAssociationwritePOST/shared_scheduling_link_association/also accepts create-shared-association
createSubscriptionwritePOST/sequence_subscription/also accepts create-subscription
getActivitywritePOST/report/activity/also accepts get-activity
getFunnelStageswritePOST/report/funnel/opportunity/stages/also accepts get-funnel-stages
getFunnelTotalswritePOST/report/funnel/opportunity/totals/also accepts get-funnel-totals
mergewritePOST/lead/merge/—
updatewritePUT/lead/{id}/—
updateAssociationwritePUT/custom_field/shared/{scf_id}/association/{object_type}/also accepts update-association
updateSharedwritePUT/shared_scheduling_link/{id}/also accepts update-shared
updateSubscriptionwritePUT/sequence_subscription/{id}/also accepts update-subscription
fetchreadGET/form/{id}/—
getreadGET/lead/{id}/—
getAssociationreadGET/custom_field/shared/{scf_id}/association/{object_type}/also accepts get-association
getCustomreadGET/report/custom/{org_id}/also accepts get-custom
getLeadreadGET/export/lead/{id}/also accepts get-lead
getSentEmailsreadGET/report/sent_emails/{org_id}/also accepts get-sent-emails
getThreadreadGET/comment_thread/{id}/also accepts get-thread
listThreadsreadGET/comment_thread/also accepts list-threads
renderreadGET/email_template/{id}/render/—

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.