validateUserPermissions(insValidateUserPermissionsInputRepresentation)

Validate whether a user has the necessary org-level and user-level permissions to perform an insurance operation, such as creating a quote or policy, and return troubleshooting guidance when the user isn’t authorized.

API Version

68.0

Requires Chatter

No

Signature

public static ConnectApi.InsValidateUserPermissionsRepresentation validateUserPermissions(ConnectApi.InsValidateUserPermissionsInputRepresentation insValidateUserPermissionsInputRepresentation)

Parameters

insValidateUserPermissionsInputRepresentation
Type: ConnectApi.InsValidate​User​Permissions​InputRepresentation
Required. Input representation of the insurance operation to validate and, optionally, the user ID to check.

Usage

Use this method at design time to confirm that a user can perform a given insurance operation before guiding them through a setup flow. Provide a targetOperation value such as executeQuote, browseCatalog, or createPolicy. Optionally set userId. If userId isn't specified, the method validates permission for the current running user.

The method resolves org-level and user-level access checks for the operation. When the user is permitted, isValid is true. When a check fails, isValid is false and instructions includes the missing permission set or lists supported operation identifiers. Examples include:

  • Unsupported or blank targetOperation — returns invalid with the list of supported values.
  • Missing policy admin access for quote or policy operations — for example, assign DigitalInsurancePolicyAdminUser.
  • Missing product admin access for catalog, rating, surcharge, underwriting rule, or clause operations — for example, assign DigitalInsuranceProductAdmin or DigitalInsuranceRunTimeProductAdmin.

Example

This sample validates user permissions from Apex.

ConnectApi.InsValidateUserPermissionsInputRepresentation input =
    new ConnectApi.InsValidateUserPermissionsInputRepresentation();
input.targetOperation = 'createQuote'; // required
input.userId          = '005xx000001X7roAAC';                   // optional; defaults to running user

ConnectApi.InsValidateUserPermissionsRepresentation result =
    ConnectApi.InsuranceDesignAdvisorFamily.validateUserPermissions(input);

System.debug('isValid=' + result.isValid);
System.debug('instructions=' + result.instructions);