Understanding Scenarios
A Scenario is a predefined template that defines the structure, input schema, and lifecycle behaviors of Requests for Information (RFIs). Scenarios enable organizations to standardize the creation and management of RFIs by providing a consistent framework tailored to specific use cases or regulatory requirements.
By leveraging scenarios, you can:
- Ensure Consistency: Use standardized templates for common RFI processes.
- Simplify RFI Creation: Reduce the need to define the structure and requirements for each new RFI.
- Enhance Compliance: Align RFIs with regulatory requirements by using predefined schemas.
- Improve Efficiency: Streamline workflows by reusing scenarios for recurring processes.
What is a Scenario?
A scenario is essentially a blueprint for creating RFIs. It encapsulates:
- Input Schema: Defines the data structure required when creating an RFI.
- Display Metadata: Provides UI rendering instructions for client applications.
- Lifecycle Behaviors: Specifies how RFIs based on the scenario progress through different states.
- Time-to-Live (TTL): Sets the expiration time for RFIs, if applicable.
Scenarios are represented as resources within the API and have unique identifiers that are used when creating drafts or RFIs.
Key Components of a Scenario
Input Schema
- Definition: A JSON schema that specifies the required and optional fields when creating an RFI.
- Purpose: Ensures that all RFIs based on the scenario contain consistent and valid data.
- Usage: Validates the
input
field when creating drafts or RFIs.
Display Metadata
- Definition: Contains information for rendering the RFI in client applications.
- Components:
- Instructions: Localized text providing guidance on how to handle the RFI.
- Groups and Questions: Defines how questions are grouped and displayed.
- Purpose: Enhances the user experience by providing structured and localized content.
RFI TTL (Time-to-Live)
- Definition: Specifies the duration after which an RFI will expire if not completed.
- Purpose: Enforces deadlines and automates the lifecycle of RFIs.
- Usage: Set using the
rfi_ttl
field in the scenario, formatted as a duration string (e.g.,"3600s"
for one hour).
Annotations
- Definition: Key-value pairs for storing arbitrary metadata related to the scenario.
- Purpose: Allows for custom metadata without affecting the scenario's functionality.
- Usage: Accessible via the
annotations
field.
Managing Scenarios
Listing Scenarios
Retrieve a list of available scenarios to identify which one suits your needs.
Request
GET /request/v1alpha/scenarios Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token}
Response
{ "scenarios": [ { "name": "scenarios/counterparty-assurance", "display_name": "Counterparty Assurance", "rfi_input_json_schema": { /* Schema details */ }, "rfi_ttl": "86400s", /* Other scenario details */ }, /* Other scenarios */ ] }
Getting a Scenario
Fetch detailed information about a specific scenario.
Request
GET /request/v1alpha/scenarios/{scenario} Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token}
- Replace
{scenario}
with the scenario ID (e.g.,counterparty-assurance
).
Response
{ "name": "scenarios/counterparty-assurance", "display_name": "Counterparty Assurance", "rfi_input_json_schema": { /* Schema details */ }, "rfi_ttl": "86400s", /* Other scenario details */ }
Deleting a Scenario
Remove an unwanted scenario from your environment.
Request
DELETE /request/v1alpha/scenarios/{scenario} Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token}
Response
- A successful deletion will return a
200 OK
status with an empty body.
Undeleting a Scenario
Restore a previously deleted scenario.
Request
POST /request/v1alpha/scenarios/{scenario}:undelete Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token} Content-Type: application/json { "name": "scenarios/{scenario}" }
Response
{ "name": "scenarios/{scenario}", /* Restored scenario details */ }
Using Scenarios
Step 1: Select an Appropriate Scenario
Identify the scenario that matches your RFI requirements by listing available scenarios and reviewing their display_name
and rfi_input_json_schema
.
Step 2: Create an RFI (or a Draft)
- Directly Create an RFI: Use the scenario to create an RFI in one step.
- Optionally Create a Draft: Start with a draft if you need to compose and refine the RFI before publishing.
Creating an RFI
POST /request/v1alpha/scenarios/{scenario}/rfis Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token} Content-Type: application/json { "input": { /* Data adhering to the scenario's input schema */ }, "creator_team": "teams/{creator_team_id}", "broker_team": "teams/{broker_team_id}", "assignee_team": "teams/{assignee_team_id}" }
Creating a Draft
POST /request/v1alpha/scenarios/{scenario}/drafts Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token} Content-Type: application/json { "input": { /* Data adhering to the scenario's input schema */ }, "creator_team": "teams/{creator_team_id}", "broker_team": "teams/{broker_team_id}", "assignee_team": "teams/{assignee_team_id}" }
Step 3: Proceed with the RFI Workflow
- Respond to the RFI: Assignee team provides the required information.
- Submit for Review: Responses are submitted for broker team's review.
- Review and Complete: Broker team approves or rejects responses, completing the RFI lifecycle.
Benefits of Using Scenarios
- Standardization: Ensures all RFIs follow a consistent structure and process.
- Compliance: Aligns RFIs with regulatory standards and internal policies.
- Efficiency: Reduces the time and effort required to create and manage RFIs.
- Reusability: Scenarios can be reused across different RFIs, promoting best practices.
Customizing Scenarios
While scenarios are predefined, they can often be customized to fit specific organizational needs:
- Annotations: Add custom metadata to scenarios for internal tracking.
- Extensions: Depending on your environment, you may be able to define new scenarios or modify existing ones (contact support for more information).
Scenario Lifecycle
- Active: Scenario is available for use in creating RFIs or drafts.
- Deleted: Scenario is soft-deleted and can be restored using the undelete operation.
- Archived: Scenarios may be archived to prevent future use while retaining historical data (implementation dependent).
Best Practices
- Regularly Review Scenarios: Ensure that scenarios remain up-to-date with regulatory changes and organizational policies.
- Document Custom Scenarios: If you create custom scenarios, document their purpose and structure for team members.
- Use Meaningful Display Names: Assign clear and descriptive
display_name
values to scenarios for easy identification.
Example: Listing and Selecting a Scenario
List Scenarios
GET /request/v1alpha/scenarios Host: api.{customer}.app.identitii.com Authorization: Bearer {access_token}
Response
{ "scenarios": [ { "name": "scenarios/counterparty-assurance", "display_name": "Counterparty Assurance", /* Other details */ }, { "name": "scenarios/customer-onboarding", "display_name": "Customer Onboarding", /* Other details */ }, { "name": "scenarios/sanctions-list-match-resolution", "display_name": "Sanctions List Match Resolution", /* Other details */ } ] }
Select a Scenario
- Choose the scenario that matches your RFI needs.
- For example, to handle a sanctions list match, select
scenarios/sanctions-list-match-resolution
.
Additional Considerations
Error Handling
- Invalid Input: If the data provided does not match the scenario's input schema, the API will return a validation error.
- Permissions: Ensure your API credentials have the necessary permissions to access and manage scenarios.
ETags and Concurrency
- ETags: Use the
etag
field for optimistic concurrency control when updating or deleting scenarios. - Concurrency: Handle concurrent modifications by checking ETags and retrying operations as needed.
Conclusion
Scenarios are a powerful feature that enable organizations to standardize and streamline the creation and management of RFIs. By understanding and effectively utilizing scenarios, you can enhance compliance, improve efficiency, and ensure consistency across your RFI processes.
Next Steps
- Integrate Scenarios: Incorporate scenario selection and management into your RFI workflows.
- Explore Scenarios: Review the available scenarios to identify those that best fit your needs.
- Customize: Contact us to create custom scenarios tailored to your needs.
Note: Replace placeholders like {customer}
, {access_token}
, {scenario}
, {creator_team_id}
, {broker_team_id}
, and {assignee_team_id}
with your actual values when making API calls.