Search
⌃K

Redeeming Entitlements

Entitlements API for redeeming user entitlements
A federated user must be registered with the Sudo Platform entitlements service before they can access other entitled services in their environment. This process is called redeeming entitlements.
Entitlement redemption must occur the first time a federated user signs in to the Sudo Platform. However, it is an idempotent operation and subsequent calls will have no effect.
The redemption operation uses information in the user's identity token and takes no parameters.
Swift
Kotlin
JavaScript
do {
let redeemed = try await entitlementsClient.redeemEntitlements()
// Handle success
}
catch(let error) {
// Handle error
}
try {
val entitlements = entitlementsClient.redeemEntitlements()
// Handle redeemed entitlements
}
catch (e: SudoEntitlements.EntitlementsException) {
// Handle error
}
try {
const entitlements = await entitlementsClient.redeemEntitlements()
// Handle redeemed entitlements
}
catch (err) {
// Handle error
}
The redeemEntitlements method returns the user's entitlements. See the API Reference for details of the returned structure.

Errors

The redeemEntitlements API will throw errors in the the following circumstances:
Swift
Kotlin
JavaScript
Condition
Action
.notSignedIn
User was not signed in when redeemEntitlements was invoked.
Ensure user is signed in prior to invoking redeemEntitlements
.ambiguousEntitlements
User has been configured to match more than one entitlements set.
Ensure your identity provider has been set up to include claims that in the user's token that will map to exactly one entitlements set.
.invalidToken
The user's token does not contain a claim that can be mapped to an entitlements set, or has the user been pre-configured with initial entitlements.
Ensure your identity provider has been set up to include an expected claim when federating sign-on or pre-configure the user with entitlements.
.serviceError
A transient error occurred in the service while redeeming entitlements.
Retry the request. If the problem persists, ask us for help
Errors in Kotlin are thrown as exceptions in the SudoEntitlementsClient.EntitlementsException class name space.
Condition
Action
NotSignedInException
User was not signed in when redeemEntitlements was invoked.
Ensure user is signed in prior to invoking redeemEntitlements
AmbiguousEmtitlementsException
User has been configured to match more than one entitlements set.
Ensure your identity provider has been set up to include claims that in the user's token that will map to exactly one entitlements set.
InvalidTokenException
The user's token does not contain a claim that can be mapped to an entitlements set, or has the user been pre-configured with initial entitlements.
Ensure your identity provider has been set up to include an expected claim when federating sign-on or pre-configure the user with entitlements.
UnknownException
A transient error occurred in the service while redeeming entitlements.
Retry the request. If the problem persists, ask us for help
Condition
Action
NotSignedInError
User was not signed in when redeemEntitlements was invoked.
Ensure user is signed in prior to invoking redeemEntitlements
AmbiguousEntitlementsError
User has been configured to match more than one entitlements set.
Ensure your identity provider has been set up to include claims that in the user's token that will map to exactly one entitlements set.
InvalidTokenError
The user's token does not contain a claim that can be mapped to an entitlements set, or has the user been pre-configured with initial entitlements.
Ensure your identity provider has been set up to include an expected claim when federating sign-on or pre-configure the user with entitlements.
ServiceError
A transient error occurred in the service while redeeming entitlements.
Retry the request. If the problem persists, ask us for help