IT CanvassTalk to an advisor
APIs & integration · LessonBy , SailPoint Trainer, 7 yrs · Published · IdentityIQ 8.4 · all levels

OAuth

How OAuth secures SailPoint API access with client credentials and tokens.

Quick answer

SailPoint APIs use OAuth 2.0: a client obtains an access token (often via client credentials) and sends it as a bearer token on each call.

Key takeaways
  • OAuth 2.0 secures the APIs
  • Client credentials grant for service integrations
  • Access tokens are short-lived bearer tokens
  • Scopes limit what a token can do

OAuth 2.0 secures the SailPoint APIs. Rather than sending a username and password on every call, a client obtains a short-lived access token and presents it as a bearer token. For machine-to-machine integrations, the client-credentials grant is the standard.

Getting a token

Register a client (obtaining a client ID and secret), then exchange those for an access token at the token endpoint:

POST /oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&client_id=...&client_secret=...

The response contains an access_token and an expiry. Send the token on each API request as Authorization: Bearer <token>.

Scopes and least privilege

Tokens can be scoped so a client only has the permissions it needs. Request the minimum scopes for the integration’s job, a reporting integration should not hold provisioning rights. This limits the blast-radius if a credential leaks.

Handling tokens safely

  • Store the client secret securely, in a secrets manager, never in source control or client-side code.
  • Cache the token until near expiry, then refresh, rather than authenticating on every call.
  • Re-authenticate on 401 in case the token has expired or been revoked.

Common pitfalls

  • Secrets embedded in code or images.
  • Over-scoped tokens granting more than the integration needs.
  • Requesting a new token per call, wasteful and rate-limit-prone.

Practice challenge

+0 XPStreak ×0
Question 1 of 3
What secures SailPoint APIs?

Frequently asked questions

What does the term OAuth refer to in SailPoint?
OAuth 2.0 secures the SailPoint APIs. Rather than sending a username and password on every call, a client obtains a short-lived access token and presents it as a bearer token. For machine-to-machine integrations, the client-credentials grant is the standard.
What is another point to note about OAuth?
Send the token on each API request as Authorization: Bearer <token>.
What else is worth knowing about OAuth?
Tokens can be scoped so a client only has the permissions it needs.
What tends to go wrong with OAuth?
Secrets embedded in code or images. Over-scoped tokens granting more than the integration needs. Requesting a new token per call, wasteful and rate-limit-prone.
Want this with a live instructor and a lab tenant?
SailPoint Developer training →
Already working on SailPoint and stuck on a live ticket?Get an expert SailPoint developer on screen-share to finish your daily tasks with you. Deliver on time, protect your reputation and your job. Monthly support only, no task-wise plans.Task assigned · no idea where to startStill stuck · your job on the lineExpert joins your screenDelivered on timeExplore On Job Support