Clearance's data model

Clearance is a platform you can use to manage digital evidence for security or criminal investigations. All the user interface is built on top of a REST API that can be called by an authenticated user or a backend service.

Normally, when an investigation starts, the investigator will create a case in Clearance and add files, such as evidence or resources, to the case as the investigation progresses.

The case is owned by the investigator, who can grant permissions (Access Policies) to different users to manage, view, edit, and download the information contained in the Case.


Since Clearance is a multi-tenant cloud system, one customer account is called a Tenant. Every entity in Clearance is attached to a Tenant. In the REST API, every request requires a TenantId in the URL to specify which customer is executing the call.

curl -X GET --header 'Accept: application/json' '{DocumentStoreBaseAddresses}/case/{tenantID}/{CaseId}'


The Case is the common entity used to collaborate. It contains metadata (location, description, category, tags…) and a list of Evidence entities that are linked to that Case. The Access Policies on a Case contain a list of users or groups and their associated privileges (manage, edit, view and download, view only).

If an authenticated user is trying to read the content of a case and he is not part of the Access Policies, the Case Service API will simply return 403 Forbidden.


The Evidence entity represents ONE item of digital evidence, but sometimes more than one file is required. This could be because different representations of the same data are possible or meta-data is required to complete a media file.

For example, when someone uploads a video file to Clearance, the system will detect which format it is and it try to generate a browser compatible MP4 video file to simplify the visualization. The MP4 version will be appended to the Evidence as a new resource.

The Evidence Service API must be used to manipulate evidence in the system.

Cases and Evidence relation

The relationship between Evidence and Cases is many to many. An Evidence item can be linked to 0 or more Cases and a Case can be linked to 0 or more Evidence items.

Evidence item have their own Access Policies but, most of the time, they are linked to Cases, so any change in the Cases are automatically reflected in the associated Evidence items for simplicity.

Unique ID

Cases and Evidence can be referenced in the system by using their unique ID, it’s a string that is required in the API. To find a Case or an Evidence item's unique ID, the Search Service API can be used to do full text search with predefined filters to look through all the entities inside the tenant.{TenantId}/{CaseId}

What’s Next

How to authenticate your API