Download OpenAPI specification:Download
Welcome to the Lucinity API!
Lucinity is an API-first SaaS solution for AML: our platform ingests your data to make integration and data publishing simple and seamless. Our modular approach separates the functionality of the user interface centered around customer use cases, but the backend APIs are unified so the system can scale with your needs.
This endpoint allows you to submit 1000 entities or 32MB, whichever is reached first, of data in bulk to be ingested into the system asynchronously. It is designed to handle high-throughput data processing, ensuring that large datasets are efficiently processed and stored.
Initial Schema Validation:
Upon submission, the system performs an initial validation of the payload’s schema to ensure that the data is correctly formatted and adheres to the expected structure. If the payload fails this schema validation, the system will respond immediately with an error message detailing the issues found, and the request will be rejected.
Downstream Data Validation:
If the payload passes the initial schema validation, the system responds with a 202 Accepted status code, indicating the request has been accepted for asynchronous processing. The data then enters the processing pipeline for in-depth validation, which includes verifying required relationships and ensuring consistency with existing data in the system.
Errors that occur during this downstream processing—such as data relation validation errors—are not reflected in the initial API response. The status of the downstream processing will either be exposed via an API or a webhook, this implementation is yet to be determined.
Scalability and Data Integrity:
The endpoint is designed to be scalable and optimized for handling high-load scenarios while ensuring data integrity throughout the ingestion pipeline.
Note: This endpoint is still a work in progress and is subject to change.
| x-request-id required | string Correlation id echoed back as request_id in the response. |
Array of objects (AccountActor) <= 1_000 items List of account actors relationships to ingest. | |
Array of objects (Balance) <= 1_000 items List of account balances. | |
Array of objects (Account) <= 1_000 items List of accounts to ingest. | |
Array of Individual (object) or LegalEntity (object) (Actor) <= 1_000 items List of actors to ingest. | |
Array of objects (ActorSegmentationGroup) <= 1_000 items List of actor to segmentation group assignments. | |
Array of AnalysisCase (object) or FilingCase (object) (Case) <= 1_000 items List of cases to ingest. | |
Array of objects (Communication) <= 1_000 items List of communications to ingest. | |
Array of AmlV2Observation (object) or FraudObservation (object) or SanctionsObservation (object) or RuleObservation (object) or GenericObservation (object) (Observation) <= 1_000 items List of observations to ingest. | |
Array of objects (Transaction) <= 1_000 items List of transactions to ingest. |
{- "account_actors": [ ],
- "account_balances": [ ],
- "accounts": [ ],
- "actors": [ ],
- "actor_segmentation_groups": [ ],
- "cases": [ ],
- "communications": [ ],
- "observations": [ ],
- "transactions": [ ]
}{- "request_id": "string"
}Returns the latest ingestion status for a case. This endpoint is designed for use with the asynchronous ingestion via the Bulk API. Due to its asynchronous nature, not all entities may be processed when a case is being processed.
A case will only be fully processed after all referenced entities have been successfully ingested.
The status field, along with the missing_relations field, can be used to determine whether the case has been successfully processed.
If there are missing relations, additional ingestion may be required before the case is fully processed.
Lucinity guarantees that this data will be retained for 30 days, after which it will be subject to removal.
| id required | string The ID of the case to fetch the ingestion status for. |
{- "status": "COMPLETED",
- "missing_relations": {
- "actors": [
- "string"
], - "analysis_case": "string",
- "communications": [
- "string"
], - "observations": [
- "string"
], - "workflow": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "processed_at": "2019-08-24T14:15:22Z",
- "deferred_until": "2019-08-24T14:15:22Z",
- "attempts": 0
}Returns a list of cases that failed to be properly ingested through the bulk ingestion.
| offset | number Example: offset=35 Sets the offset on the index into the list of items in the result set |
| limit | number Example: limit=5 Sets the max number of items returned in the result set for this query |
| filter | string Filtering enables narrowing down API responses based on specific criteria. Range Filter:
Examples:
Single-Value Filter:
Examples:
|
| sorting | string Sorting allows API responses to be ordered by one or more fields in a specified direction.
|
[- {
- "id": "9e214a2f-0147-4e44-ab0e-eeaef9699edb",
- "case_id": "CLC2025010100000001",
- "created_at": "2019-12-24T18:02:16Z",
- "processed_at": "2019-12-24T18:02:16Z",
- "case": "{ ... }"
}
]Retrieves a list of cases.
| limit | number Example: limit=10 Sets the max number of items returned in the result set for this query. Defaults to 200. |
| offset | number Example: offset=30 Sets the offset on the index into the list of items in the result set. Defaults to 0. |
| sort.by | string Sorts the results based on specified fields and directions. Example:
|
| filter.workflow.id.in[] | string Filters the results based on the workflow id. Examples:
|
| filter.workflow.step_id.in[] | string Filters the results based on the workflow step_id. Examples:
|
| filter.workflow.status.in[] | string Filters the results based on the workflow status. Examples:
|
| filter.workflow.state.in[] | string Filters the results based on the workflow state. Examples:
|
| filter.type.in[] | string Filters the results based on the case type. Examples:
|
| filter.assigned | boolean Filters the results based on the case assignment status. Examples:
|
| filter.tags.id.in[] | string Filters the results based on cases with any of the given flags. Examples:
|
| filter.tags.id.all[] | string Filters the results based on cases with all of the given flags. Examples:
|
| filter.created_at.from | string <date-time> Filters the results based on the creation date of the case. Examples:
|
| filter.created_at.to | string <date-time> Filters the results based on the creation date of the case. Examples:
|
| filter.updated_at.from | string <date-time> Filters the results based on the update date of the case. Examples:
|
| filter.updated_at.to | string <date-time> Filters the results based on the update date of the case. Examples:
|
[- {
- "id": "5fa9e93b-3a93-4e6a-82cd-6d9dad7b0d74",
- "workflow": {
- "id": "1",
- "step_id": "NEW",
- "status": "OPEN",
- "state": "NEW"
}, - "created_at": "2025-01-06T13:39:659123Z",
- "updated_at": "2025-01-07T14:44:359729Z",
- "type": "ANALYSIS",
- "tags": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "label": "Suspicious"
}
]
}
]Retrieves a single case by identifier.
| id required | string The Case ID. |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_at": "2025-01-06T13:39:659123Z",
- "updated_at": "2025-01-07T14:44:359729Z",
- "workflow": {
- "id": "1",
- "name": "CASE_REVIEW",
- "status": "OPEN",
- "state": "NEW",
- "type": "CASE_REVIEW",
- "step_id": "NEW",
- "version": 1
}, - "actors": [ ],
- "observations": [ ],
- "tags": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "label": "Suspicious"
}
], - "metadata": {
- "some_property": "some_value"
}, - "resolution": "string",
- "source": "string",
- "jurisdiction": "AUS",
- "type": "ANALYSIS",
- "narrative": "The case involves a potentially suspicious financial transaction in Australia,\nexhibiting characteristics commonly associated with rapid movement of funds.",
- "property1": "string",
- "property2": "string"
}Updates the fields in the case that has the provided ID. Notes:
| id required | string The Case ID. |
Resolution (string) or Resolution (number) or Resolution (integer) or Resolution (boolean) or Resolution (object) or Array of Resolution (arrays) (Resolution) Describes the reason behind a case closure. The content and structure of this field are flexible and can vary depending on the context. It is defined through the Custom Properties, which allows for dynamic extension and customization based on specific business needs. | |
additional property | string or number or integer or boolean or object or Array of arrays Custom properties whose keys must start with the prefix |
{- "resolution": "Not Suspicious",
- "c__custom_string_property": "custom_value",
- "c__custom_number_property": 12345,
- "c__custom_object_property": {
- "key": "value"
}
}OK
Creates a new actor entity and assigns it to the specified case.
| id required | string The ID of the case to add the actor to. |
| lucinity-rfd-id | string <uuid> The rfd_id used to retrieve information about the request. Include it to complete an rfd item. |
required | Individual (object) or LegalEntity (object) (Actor) |
| type | string (CaseActorType) Enum: "CONNECTION" "FOCAL" The role that the actor has in the case. Defaults to |
object (CustomData) The custom data property can be used to add data in a key, value format to the object. This can e.g. be used for display purposes. Maximum length of this property is 10000 characters. |
{- "type": "CONNECTION",
- "custom_data": {
- "someProperty": "some value",
- "otherProperty": "other value"
}, - "actor": {
- "id": "ACT0001",
- "type": "INDIVIDUAL",
- "addresses": [ ],
- "as_of_date": "2019-08-24",
- "custom_data": {
- "someProperty": "some value",
- "otherProperty": "other value"
}, - "customer_since": "2019-08-24",
- "data_source": "EXTERNAL_DATA_SOURCE",
- "date_of_birth": "2019-08-24",
- "domicile": "USA",
- "emails": [ ],
- "gender": "FEMALE",
- "government_ids": [ ],
- "metadata": {
- "some_property": "some_value"
}, - "name": "string",
- "nationality": "USA",
- "phones": [ ],
- "references": [ ],
- "related_links": [ ],
- "status": "ACTIVE",
- "subtypes": [
- "CLIENT"
]
}
}Updates multple case actor relationships in a case. Maximum 1000 actors in each request.
| id required | string The ID of the case the actors belong to. |
| actor_id | string The ID of the actor. |
object |
[- {
- "actor_id": "actor_id_123",
- "properties": {
- "c__custom_string_property": "custom_value",
- "c__custom_number_property": 12345,
- "c__custom_object_property": {
- "key": "value"
}
}
}
]Updates the fields in the case actor that has the provided ID.
| case_id required | string The ID of the case |
| actor_id required | string The ID of the actor |
additional property | string or number or integer or boolean or object or Array of arrays or null (CustomProperties) Custom properties whose keys must start with the prefix |
One of string Custom properties whose keys must start with the prefix | |
{- "c__custom_string_property": "custom_value",
- "c__custom_number_property": 12345,
- "c__custom_object_property": {
- "key": "value"
}
}Creates a new communication entity and assigns it to the case.
| id required | string The case_id. |
| lucinity-rfd-id | string <uuid> The rfd_id used to retrieve information about the request. Include it to complete the rfd item. |
| id required | string <uuid> The unique identifier for the communication. |
| type required | string The type of communication (e.g., email, SMS). |
| receiver_id required | string Identifies the receiver uniquely in the system where the communications originates. For example if this is an email it could be the email address, if it is from a messaging system it could be the user handle in that system. Alternatively can be provided as Actor/Entity id, as provided in the Actor endpoint, If so then metadata should be used. metadata.receiver_identifiable_as_actor=true. |
| sender_id required | string Identifies the sender uniquely in the system where the communications originates. For example if this is an email it could be the email address. If it is from a messaging system it could be the user handle in that system. Alternatively can be provided as Actor/Entity id, as provided in the Actor endpoint. If so then metadata should be used. metadata.sender_identifiable_as_actor=true. |
| subject required | string The subject title of the message in the communication. |
| content | string The content of the communication. |
object (CustomData) The custom data property can be used to add data in a key, value format to the object. This can e.g. be used for display purposes. Maximum length of this property is 10000 characters. | |
object (Metadata) Metadata describing the communication. This field is not intended to add additional information to the communication, rather add information about the communication's attributes. |
{- "id": "6f83db65-50e0-4f7c-b42a-61115110a928",
- "type": "email",
- "content": "Please update your account information.",
- "custom_data": {
- "someProperty": "some value",
- "otherProperty": "other value"
}, - "metadata": {
- "some_property": "some_value"
}, - "subject": "Urgent: Update Required"
}Uploads a file related to a specific case.
File size may not exceed 50MB.
Valid file formats are:
| id required | string The case_id |
| lucinity-rfd-id | string <uuid> The rfd_id used to retrieve information about the request. Include it to complete the rfd item. |
| file | string <binary> |
Retrieves a list of workflows.
| limit | number Example: limit=10 Sets the max number of items returned in the result set for this query. Defaults to 200. |
| offset | number Example: offset=10 Sets the offset on the index into the list of items in the result set. Defaults to 0. |
| sort.by | string Sorts the results based on specified fields and directions. Example:
|
[- {
- "id": "1",
- "version": 1,
- "hidden": false,
- "name": "AML Investigation",
- "steps": [
- {
- "id": "NEW",
- "label": "New Alert",
- "status": "New Alert",
- "state": "OPEN"
}
]
}
]{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
], - "id": "5fa9e93b-3a93-4e6a-82cd-6d9dad7b0d74",
- "status": "ACTIVE",
- "secret": "%D^u~k:pc<y9Hv",
- "created": 1692294086682,
- "tenant": "lucinity"
}| name required | string The name of the Webhook given by the Webhook creator |
| url required | string <uri> The target URL for the Webhooks. Typically an endpoint in the customer API that can accept the Lucinity events |
| events required | Array of strings List of events to subscribe to. If '*' all events will be delivered. If empty, the Webhook will be disabled. |
{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
]
}{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
], - "id": "5fa9e93b-3a93-4e6a-82cd-6d9dad7b0d74",
- "status": "ACTIVE",
- "secret": "%D^u~k:pc<y9Hv",
- "created": 1692294086682,
- "tenant": "lucinity"
}| id required | string Unique Webhook Id |
{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
], - "id": "5fa9e93b-3a93-4e6a-82cd-6d9dad7b0d74",
- "status": "ACTIVE",
- "created": 1692294086682,
- "tenant": "lucinity"
}| id required | string <uuid> Unique Webhook Id |
{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
], - "id": "5fa9e93b-3a93-4e6a-82cd-6d9dad7b0d74",
- "status": "ACTIVE",
- "created": 1692294086682,
- "tenant": "lucinity"
}| id required | string <uuid> Unique Webhook Id |
The status update object. If omitted it will attempt to toggle the status.
| name | string The name of the Webhook given by the Webhook creator |
| url | string <uri> The target URL for the Webhooks. Typically an endpoint in the customer API that can accept the Lucinity events |
| events | Array of strings List of events to subscribe to. If '*' all events will be delivered. If empty, the Webhook will be disabled. |
| status | string (WebhookStatus) Enum: "ACTIVE" "INACTIVE" |
{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
], - "status": "ACTIVE"
}{- "name": "My Webhook for handling claimed cases",
- "events": [
- "case.assigned"
], - "id": "5fa9e93b-3a93-4e6a-82cd-6d9dad7b0d74",
- "status": "ACTIVE",
- "secret": "%D^u~k:pc<y9Hv",
- "created": 1692294086682,
- "tenant": "lucinity"
}Information about an event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.assigned" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for case claimed |
{- "id": "1",
- "name": "case.assigned",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "assignedToUserId": "846d5c88-5296-4972-92bf-cf43730a4184",
- "metadata": {
- "exampleProperty": "example value"
}
}
}Information about an event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.closed" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for case case closed |
{- "id": "1",
- "name": "case.closed",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "resolution": "Suspicious",
- "dispositionNarrative": "Summary of the Investigation",
- "comment": "This is a comment",
- "closeReason": "Manual",
- "metadata": {
- "exampleProperty": "example value"
}
}
}Information about an event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.created" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for case case created. |
{- "id": "1",
- "name": "case.created",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "processId": "2df50b47-20cc-4b19-b9b5-68eb4bd68620",
- "metadata": {
- "exampleProperty": "example value"
}
}
}Information about an event in the systems.
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.updated" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Event data for case update. |
{- "id": "1",
- "name": "case.updated",
- "createdAt": 1711360775327,
- "data": {
- "id": "534d4df8-d46f-490c-a40b-ed4154e5f794"
}
}Information about an event in the systems.
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.creation_failed" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Event data for case creation failure. |
{- "id": "1",
- "name": "case.creation_failed",
- "createdAt": 1711360775327,
- "data": {
- "id": "534d4df8-d46f-490c-a40b-ed4154e5f794"
}
}Information about an event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.workflow.actioned" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detailed event data for when an action on a workflow is performed in a case. |
{- "id": "1",
- "name": "case.workflow.actioned",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "actionName": "SET_ON_HOLD",
- "comment": "Setting this case on hold, waiting for external data.",
- "metadata": {
- "exampleProperty": "example value"
}
}
}Information about a workflow transition of case in the system
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.workflow.transitioned" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for when a workflow transition occurs in a case |
{- "id": "1",
- "name": "case.workflow.transitioned",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "workflowId": "10",
- "fromStepId": "INITIAL",
- "toStepId": "IN_PROGRESS",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "actionName": "CLAIM"
}
}Information about a comment event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.commented" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detailed event data for when a comment is added to a case |
{- "id": "1",
- "name": "case.commented",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "comment": "This is a comment",
- "metadata": {
- "exampleProperty": "example value"
}
}
}Information about an event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.transaction.decision.updated" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for transaction decision update |
{- "id": "1",
- "name": "case.transaction.decision.updated",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "transactionId": "75906707-8c31-479c-b354-aa805c4cefbc",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "decision": "BLOCK"
}
}Information about an event in the system
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.observations.feedback.updated" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for observation added |
{- "id": "1",
- "name": "case.observations.feedback.updated",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "observationId": "cc00jCLAC00001",
- "feedback": "string"
}
}Information that a event has been actioned, typically a case observation. This event is triggered when an observation is actioned. Currently only supports "WHITELIST" action.
| id | string The id for the event created by Lucinity. |
| name | string Value: "case.observations.actioned" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object Detail event data for observation actioned. |
{- "id": "1",
- "name": "case.observations.actioned",
- "createdAt": 1711360775327,
- "data": {
- "id": "CLC2020010100000001",
- "observationId": "OBS2020010100000001",
- "actionName": "WHITELIST",
- "userId": "95dc44d7-a615-41f3-9bf2-2b8093696dc9",
- "comment": "Test comment",
- "caseMetadata": {
- "exampleProperty": "example value"
}, - "observationMetadata": {
- "exampleProperty": "example value"
}, - "observationCustomData": {
- "exampleProperty": "example value"
}
}
}Information about an event in the systems
| id | string The id for the event created by Lucinity. |
| name | string Value: "request_for_data.created" The type of the event |
| createdAt | integer <int64> The Unix timestamp (in milliseconds) indicating when this event was created. |
object |
{- "id": "1",
- "name": "request_for_data.created",
- "createdAt": 1711360775327,
- "data": {
- "rfd_id": "34d448fb-0683-4407-8a75-3178378ab4bb",
- "type": "string",
- "case_id": "string"
}
}Get audit logs within certain criteria.
| startDate required | string <date-time> Example: startDate=2023-11-21T00:00:00 Is in ISO 8601 datetime format and must proceed endDate. |
| endDate required | string <date-time> Example: endDate=2023-11-21T23:59:59 Is in ISO 8601 datetime format and must be after startDate. |
| logType | string (AuditLogType) Enum: "ALL" "READ" "UPDATE" The audit log type. If not provided the default is |
| offset | number Number of rows to skip before returning results. Must be a positive number.
If not provided the default is |
| limit | number Maximum number of retrived entries. Must be a positive number not greater than 1000.
If not provided the default is |
| caseId | string Get audit logs for a single case |
{- "offset": 0,
- "limit": 200,
- "number_of_values": 10,
- "values": [
- {
- "json_": {
- "id": "3c16ebce-7e7b-49ef-b815-3d4cf310aad7",
- "notes": "Level: 1 to 2",
- "action": "VIEW_CASE",
- "caseId": "CLC2023112100000000",
- "domain": "CaseManager",
- "params": [
- null
], - "userIP": "127.0.0.1",
- "userId": "1b08d5b4-defc-4385-afc3-87602adabf0c",
- "logType": "ALL",
- "newValue": null,
- "objectId": "string",
- "oldValue": null,
- "envFields": {
- "localIP": "127.0.0.1",
- "podAuditName": "podName"
}, - "timestamp": "2023-11-21T00:00:00",
- "objectType": "string",
- "systemName": "string",
- "userAction": "ESCALATE",
- "objectField": "string",
- "actionResult": "ALLOWED"
}, - "timestamp": "2023-11-21T00:00:00"
}
]
}This endpoint will fetch the custom properties that have been defined. The custom properties are used to store additional information about the entity.
Currently supported entities are:
casecase.actor| limit | number Example: limit=5 Sets the max number of items returned in the result set for this query |
| offset | number Example: offset=35 Sets the offset on the index into the list of items in the result set |
| filter.entity | string Example: filter.entity=case The entity containing the custom property. |
| filter.name | string Example: filter.name=c__actor_decision The custom property name. |
[- {
- "entity": "case",
- "name": "c__actor_decision",
- "schema": {
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "value": {
- "type": "string"
}, - "id": {
- "type": "string"
}
}
}
}
]The Request for Data (RFD) feature enables analysts to request additional information from internal systems to support case investigations. This capability streamlines the process of gathering supplementary data, ensuring analysts have what they need to carry out effective reviews and meet regulatory compliance requirements.
RFD flows are highly flexible and can be customized to match your organization’s internal workflows.
Example RFD Flow
request_for_data.created).lucinity-rfd-id header
with the request that completeded the RFD./request_for_data/{id}/reject and provide a reason for the rejection.Additional Notes
Retrieves an RFD object using its unique Id.
| id required | string <uuid> The unique identifier for the RFD. |
{- "type": "string",
- "case_id": "c74269e5-1f97-4e20-9164-ffbe3494d8d6",
- "status": "COMPLETED",
- "request": {
- "actor_id": "ACT0001"
}, - "created_at": "2019-08-24T14:15:22Z"
}Cancels the RFD flow and marks the RFD request as rejected. After calling this endpoint, the SLA will be disabled and the case will eventually revert to its previous state before the RFD process was initiated. Note that if you try to reject a RFD that has already been comlpleted you will get a 400 error.
| id required | string <uuid> The unique identifier of the RFD. |
| reason | string Reason for rejection. |
{- "reason": "Actor not found."
}Defines or updates the schema used for RFD validation.
Since RFDs have a dynamic schema, this endpoint allows submitting a JSON Schema-compliant format. The schema is used by the RFD endpoints to validate incoming payloads as they pass through the system.
To update an existing schema, the entire payload must be resubmitted, including both unchanged values and any modifications.
| type required | string <^[a-zA-Z0-9_-]+$> A predefined identifier specifying the type of schema to be used in different flows in the RFD service.
This type should match the type in the |
required | object The schema settings used to validate the request payloads in the RFD service. Must be in JSON schema format. |
| created_at | string <date-time> The time and date when the schema was created in ISO 8601. |
{- "type": "ACTOR",
- "schema": {
- "type": "object",
- "properties": {
- "actor_id": {
- "type": "string"
}, - "required": [
- "actor_id"
]
}
}, - "created_at": "2019-08-24T14:15:22Z"
}Fetches a list of all RFD schemas.
| limit | number Example: limit=5 Sets the max number of items returned in the result set for this query |
| offset | number Example: offset=35 Sets the offset on the index into the list of items in the result set |
[- {
- "type": "ACTOR",
- "schema": {
- "type": "object",
- "properties": {
- "actor_id": {
- "type": "string"
}, - "required": [
- "actor_id"
]
}
}, - "created_at": "2019-08-24T14:15:22Z"
}
]Fetches a specific request for data schema by type.
| type required | string |
{- "type": "ACTOR",
- "schema": {
- "type": "object",
- "properties": {
- "actor_id": {
- "type": "string"
}, - "required": [
- "actor_id"
]
}
}, - "created_at": "2019-08-24T14:15:22Z"
}Get multiple users.
| offset | number Number of rows to skip before returning results. Must be a positive number.
If not provided the default is |
| limit | number Maximum number of retrived entries. Must be a positive number.
If not provided the default is |
[- {
- "user_id": "33ff36c2-91ea-4dd7-b239-31bb97875cce",
- "username": "user",
- "first_name": "User",
- "last_name": "Platform",
- "enabled": true,
- "created_at": 1754046259851,
- "groups": [ ]
}
]Get a single platform user by their unique identifier.
| id required | string <uuid> The user's unique identifier. |
{- "user_id": "33ff36c2-91ea-4dd7-b239-31bb97875cce",
- "username": "user",
- "first_name": "User",
- "last_name": "Platform",
- "enabled": true,
- "created_at": 1754046259851,
- "groups": [ ]
}