Precheck an Access Request
post
/access-governance/access-controls/20250331/accessRequests/actions/precheck
Checks a proposed access request for access guardrails & separation of duties violations.
You can call this API before creating an access request when needed.
Request
Header Parameters
-
opc-request-id: string
The client request ID for tracing. The only valid characters for request IDs are letters, numbers, underscore, and dash.
Details for the proposed Access Request.
Root Schema : CreateAccessRequestDetails
Type:
objectThe information about new AccessRequest.
Show Source
-
accessBundles:
array accessBundles
list of Access bundle items.
-
accessLimitDataDetails:
array accessLimitDataDetails
List of access limit data associated to permission request
-
accountProfileDetails:
array accountProfileDetails
List of account profiles associated to access request. Required only if the associated access bundle has Account Profile attached to it.
-
attributes:
object attributes
Additional Properties Allowed: additionalPropertiesAttributes of the corresponding model. Example: `{"foo-namespace": {"bar-key": "value"}}`
-
createdBy:
string
The user that created the request
-
identities:
array identities
list of identity ids
-
justification:
string
Justification for creating the access request
-
orchestratedSystemAttributes:
array orchestratedSystemAttributes
list of orchestratedSystemAttributes associated with targets
-
permissionRoles:
array permissionRoles
list of Permission roles items.
-
requestStatus:
string
Status of the access request
Nested Schema : accessLimitDataDetails
Type:
arrayList of access limit data associated to permission request
Show Source
-
Array of:
object AccessLimitDataDetails
Access Limit Data configured by Identity
Nested Schema : accountProfileDetails
Type:
arrayList of account profiles associated to access request. Required only if the associated access bundle has Account Profile attached to it.
Show Source
-
Array of:
object AccountProfileInfo
Account Profile Configuration by Identity
Nested Schema : attributes
Type:
objectAdditional Properties Allowed
Show Source
Attributes of the corresponding model.
Example: `{"foo-namespace": {"bar-key": "value"}}`
Nested Schema : orchestratedSystemAttributes
Type:
arraylist of orchestratedSystemAttributes associated with targets
Show Source
-
Array of:
object OrchestratedSystemAttribute
Account & permission attributes
Nested Schema : AccessLimitDataDetails
Type:
objectAccess Limit Data configured by Identity
Show Source
-
accessBundleId:
string
Access bundle Id
-
accessLimitDataInfo:
object AccessLimitDataInfo
Access Limit Data information object.
-
identityAccessLimitDetails:
array identityAccessLimitDetails
Access Limit Data for Identity
-
isIdentitySpecific:
boolean
Same configuration for all identities.
Nested Schema : AccessLimitDataInfo
Type:
objectAccess Limit Data information object.
Show Source
-
accessLimitData:
object AccessLimitData
The Temporal Access Bundle data.
-
accessLimitType:
string
Allowed Values:
[ "INDEFINITELY", "NUMBER_OF_DAYS", "NUMBER_OF_HOURS", "DATE_TIME_RANGE" ]Time limit type of the access bundle
Nested Schema : identityAccessLimitDetails
Type:
arrayAccess Limit Data for Identity
Show Source
-
Array of:
object IdentityAccessLimitDataInfo
Access Limit Data for Identity
Nested Schema : AccessLimitData
Type:
objectThe Temporal Access Bundle data.
Show Source
-
dateTimeConfig:
object AccessLimitDateTimeConfig
The Temporal Access Bundle data for date time.
-
daysConfig:
object AccessLimitDaysConfig
The Temporal Access Bundle data for days.
-
hoursConfig:
object AccessLimitHoursConfig
The Temporal Access Bundle data for hours.
Nested Schema : AccessLimitDateTimeConfig
Type:
objectThe Temporal Access Bundle data for date time.
Show Source
-
expirationEndTime:
integer(int64)
Time in epoch when the access should be expired
-
expirationStartTime:
integer(int64)
Time in epoch when the access should be granted
Nested Schema : AccessLimitDaysConfig
Type:
objectThe Temporal Access Bundle data for days.
Show Source
-
expirationInDays:
integer
Maximum number of days allowed before expiry
-
extensionApprovalWorkflowId:
object IdInfo
Generic identifying information object.
-
extensionInDays:
integer
Number of days extensions is allowed
-
notificationInDays:
integer
Number of days when notification should be sent
Nested Schema : AccessLimitHoursConfig
Type:
objectThe Temporal Access Bundle data for hours.
Show Source
-
expirationInHours:
integer
Maximum number of hours allowed before expiry
-
extensionApprovalWorkflowId:
object IdInfo
Generic identifying information object.
-
extensionInHours:
integer
Number of hours extensions is allowed
-
notificationInHours:
integer
Number of hours when notification should be sent
Nested Schema : IdInfo
Type:
objectGeneric identifying information object.
Show Source
-
displayName:
string
Display Name of the entity.
-
id:
string
Id of the entity.
-
name:
string
Name of the entity.
Nested Schema : IdentityAccessLimitDataInfo
Type:
objectAccess Limit Data for Identity
Show Source
-
accessLimitDataInfo:
object AccessLimitDataInfo
Access Limit Data information object.
-
identityId:
string
Global Identity Id
Nested Schema : AccountProfileInfo
Type:
objectAccount Profile Configuration by Identity
Show Source
-
accountAttributes:
array accountAttributes
Account Attribute Values
-
accountProfileId:
string
Account Profile Id
-
identityAccountAttributesDetails:
array identityAccountAttributesDetails
Account Attributes Info by Identity
-
identitySpecific:
boolean
Same configuration for all identities.
Nested Schema : accountAttributes
Type:
arrayAccount Attribute Values
Show Source
-
Array of:
object QuestionAttributeDataSummary
Question Attributes of account profile
Nested Schema : identityAccountAttributesDetails
Type:
arrayAccount Attributes Info by Identity
Show Source
-
Array of:
object IdentityAccountAttributesInfo
Account Profile Attributes
Nested Schema : QuestionAttributeDataSummary
Type:
objectQuestion Attributes of account profile
Show Source
-
children:
array children
nested attributes
-
isQuestion:
boolean
Boolean value for checking if this is attribute is a question for requester.
-
name:
string
Attribute name - Unique identifier
-
values:
array values
Attribute Values
Nested Schema : children
Type:
arraynested attributes
Show Source
-
Array of:
object NestedQuestionAttributeSummary
Nested set of question attributes
Nested Schema : NestedQuestionAttributeSummary
Type:
objectNested set of question attributes
Show Source
-
items:
array items
Question attributes
Nested Schema : items
Type:
arrayQuestion attributes
Show Source
-
Array of:
object QuestionAttributeDataSummary
Question Attributes of account profile
Nested Schema : IdentityAccountAttributesInfo
Type:
objectAccount Profile Attributes
Show Source
-
accountAttributes:
array accountAttributes
Account Attribute Values
-
identityId:
string
Global Identity Id
Nested Schema : accountAttributes
Type:
arrayAccount Attribute Values
Show Source
-
Array of:
object QuestionAttributeDataSummary
Question Attributes of account profile
Nested Schema : OrchestratedSystemAttribute
Type:
objectAccount & permission attributes
Show Source
-
accountAttributes:
array accountAttributes
List of Orchestrated System account attributes
-
orchestratedSystem:
object Info
Generic information object.
-
permissionAttributes:
array permissionAttributes
List of Orchestrated System permission attributes
Nested Schema : accountAttributes
Type:
arrayList of Orchestrated System account attributes
Show Source
-
Array of:
object OrchestratedSystemAttributeData
Orchestrated System Attributes
Nested Schema : Info
Type:
objectGeneric information object.
Show Source
-
displayName:
string
Display Name of the entity.
-
id:
string
id of the entity.
-
name:
string
name of the entity.
Nested Schema : permissionAttributes
Type:
arrayList of Orchestrated System permission attributes
Show Source
-
Array of:
object OrchestratedSystemAttributeData
Orchestrated System Attributes
Nested Schema : OrchestratedSystemAttributeData
Type:
objectOrchestrated System Attributes
Show Source
-
children:
array children
nested attributes
-
defaultValues:
array defaultValues
Attribute Value
-
discriminator:
string
this field signify attribute field is password
-
lookupType:
string
LookupID for the attribute
-
name:
string
Attribute name
-
permissionType:
string
Permission Type
-
title:
string
Display Name for the attribute.
-
type:
string
Type of attribute
Nested Schema : children
Type:
arraynested attributes
Show Source
-
Array of:
object NestedAttributes
Nested set of Orchestrated System attributes
Nested Schema : NestedAttributes
Type:
objectNested set of Orchestrated System attributes
Show Source
-
items:
array items
Orchestrated System attributes
Nested Schema : items
Type:
arrayOrchestrated System attributes
Show Source
-
Array of:
object OrchestratedSystemAttributeData
Orchestrated System Attributes
Response
Supported Media Types
- application/json
200 Response
The results of the precheck analysis.
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : AccessRequestPrecheckResult
Type:
objectResults of running access guardrails & separation of duties analysis for an access request, without creating the access request.
Show Source
-
accessGuardrailViolations(required):
object AccessGuardrailViolationCollection
Collection of access guardrail violations.
-
separationOfDutiesAnalysisRequests(required):
object SeparationOfDutiesRequestCollection
A collection of separation of duties request summaries.
Nested Schema : AccessGuardrailViolationCollection
Type:
objectCollection of access guardrail violations.
Show Source
-
items(required):
array items
List of access guardrail violation details.
Nested Schema : SeparationOfDutiesRequestCollection
Type:
objectA collection of separation of duties request summaries.
Show Source
-
items(required):
array items
List of separation of duties request summaries.
Nested Schema : items
Type:
arrayList of access guardrail violation details.
Show Source
-
Array of:
object AccessGuardrailViolationSummary
Access Guardrail violation summary.
Nested Schema : AccessGuardrailViolationSummary
Type:
objectAccess Guardrail violation summary.
Show Source
-
accessGuardrailId:
string
Id of the access guardrail associated to an Access Bundle.
-
accessGuardrailName:
string
Name of the access guardrail associated to an Access Bundle.
-
violationDetails:
object violationDetails
Additional Properties Allowed: additionalPropertiesA map where keys represent global identities and values are lists of violations in strings.
Nested Schema : violationDetails
Type:
objectAdditional Properties Allowed
Show Source
A map where keys represent global identities and values are lists of violations in strings.
Nested Schema : items
Type:
arrayList of separation of duties request summaries.
Show Source
-
Array of:
object SeparationOfDutiesRequestSummary
A summary for a separation of duties request.
Nested Schema : SeparationOfDutiesRequestSummary
Type:
objectA summary for a separation of duties request.
Show Source
-
requestId(required):
string
A string representing a separation of duties work request. Get updates on the status of a request by using the 'Check status of the separation of duties request(s)' endpoint.
-
status(required):
string
The status of the separation of duties work request.
400 Response
Bad Request
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
401 Response
Unauthorized
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
404 Response
Not Found
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
409 Response
Conflict
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
429 Response
Too Many Requests
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
500 Response
Internal Server Error
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
Default Response
Unknown Error
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
objectError Information.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing.
-
message(required):
string
A human-readable error string.
Examples
The following example shows how to pre check requested access bundles for identities against access guardrails & separation of duties violations.
cURL Request Example
curl -i -X POST \
-H "Authorization:Bearer <your-access-token>" \
-H "Content-Type:application/json" \
-d \
'{
"justification": "Precheck Access Request",
"createdBy": "88b9690ece3xxx3953570480031e7d0",
"accessBundles": [
"24bd8566-8562-41f5-9xx-86e6b07c1c10",
"d6109ef9-67c6-4e32-bxxb-5b260d1cc6ac",
"c0c749ea-7c50-4fc6-bxx5-f99e4ab1208b",
"46af0a2b-9381-4c42-xxxxx-xxxxxxxxxxx"
],
"identities": [
"globalId.ICF.063a21f6-db00-44f9-875a-83xxx583.875f18xxxxx6467b3b06f5"
],
"accountProfileDetails": []
}'\
'<${service-instance-url}/access-governance/access-controls/${versionId}/accessRequests/actions/precheck' >'
Example Request Payload
{
"justification": "Precheck Access Request",
"createdBy": "88b9690ece3xxx3953570480031e7d0",
"accessBundles": [
"24bd8566-8562-41f5-9xx-86e6b07c1c10",
"d6109ef9-67c6-4e32-bxxb-5b260d1cc6ac",
"c0c749ea-7c50-4fc6-bxx5-f99e4ab1208b",
"46af0a2b-9381-4c42-xxxxx-xxxxxxxxxxx"
],
"identities": [
"globalId.ICF.063a21f6-db00-44f9-875a-83xxx583.875f18xxxxx6467b3b06f5"
],
"accountProfileDetails": []
}Example of the Response Code
You'll receive 200 OK response along with the following response body:
{
"accessGuardrailViolations": {
"items": [
{
"accessGuardrailId": "e8c79607xxxx-4894-8ef3-ec1215d70025",
"accessGuardrailName": "AGRwithLowRisk",
"violationDetails": {
"globalId.ICF.063a21f6-db00-44f9-xxxxxx07583.875f18cf300b44cd1b3446467b3b06f5": [
"This Identity does not have identity attribute Employee user name contains 0805"
]
}
}
]
},
"separationOfDutiesAnalysisRequests": {
"items": [
{
"requestId": "001673a9xxb43fc97aedc93571e14f2",
"status": "InProgress"
},
{
"requestId": "f334fbba4e1xxa2fc2135cd73e729",
"status": "InProgress"
},
{
"requestId": null,
"status": null
},
{
"requestId": null,
"status": null
}
]
}
}