Acquisitions API

The Acquisitions API allows you to create, retrieve, update, and delete acquisition records. Acquisitions represent forensic data collections tied to cases, evidence items, and other related entities.


Endpoints

Method
Path
Description

GET

/acquisitions

List all acquisitions

GET

/acquisitions/:uuid

Get a single acquisition

POST

/acquisitions

Create a new acquisition

PATCH

/acquisitions/:uuid

Update an existing acquisition

DELETE

/acquisitions/:uuid

Delete an acquisition


Data Model

Each acquisition object contains the following fields:

Field
Type
Description

acq_id

number

Internal acquisition ID

uuid

string

Unique identifier

name

string

Acquisition name

format

string

Acquisition format (e.g., E01, DD, AD1)

type

string

Acquisition type

status

string

"Active" or "Deleted"

size

number

Numeric size value

size_unit

string

Unit of size: "B", "KB", "MB", "GB", "TB"

size_bytes

number

Calculated size in bytes

size_gb

number

Calculated size in gigabytes

description

string

Notes or description

created_on

string

Timestamp when the record was created

updated_on

string

Timestamp when the record was last updated

acquire_date

string

Date the acquisition was performed (ISO 8601)

duration

number

Acquisition duration in seconds

hashes

array

Array of { type, hash } objects

storage

object

Linked storage location

evidence

object

Linked evidence item

case

object

Linked case

linked_contact

object

Linked contact / custodian

acquired_by

object

User who performed the acquisition

location

object

Physical storage location

custom_fields

array

Custom field values


GET /acquisitions

Retrieve a paginated list of acquisitions. Supports filtering by case, evidence, status, and date ranges.

Query Parameters

Parameter
Type
Required
Description

uuid

string

No

Filter by acquisition UUID

acq_id

number

No

Filter by acquisition ID

evidence_uuid

string

No

Filter by evidence UUID

evidence_id

number

No

Filter by evidence ID

case_id

number

No

Filter by case ID

case_uuid

string

No

Filter by case UUID

status

string

No

"Active" or "Deleted"

created_after

string

No

Records created on or after this date

created_before

string

No

Records created on or before this date

acquired_after

string

No

Acquisitions performed on or after this date

acquired_before

string

No

Acquisitions performed on or before this date

updated_after

string

No

Records updated on or after this date

updated_before

string

No

Records updated on or before this date

page

number

No

Page number (minimum: 1, default: 1)

page_size

number

No

Results per page (1–1000, default: 1000)

Response

The next_page field is null when there are no more pages.

Example: List All Acquisitions

Example: Filter by Case UUID with Pagination

Example: Filter by Date Range


GET /acquisitions/:uuid

Retrieve a single acquisition by UUID.

Example


POST /acquisitions

Create a new acquisition.

Request Body

Field
Type
Required
Description

name

string

Yes

Acquisition name

case_uuid

string

Yes

UUID of the parent case

uuid

string

No

Custom UUID (auto-generated if omitted)

format

string

No

Acquisition format (e.g., E01, DD)

type

string

No

Acquisition type

status

string

No

"Active" or "Deleted"

size

number

No

Numeric size value

size_unit

string

No

"B", "KB", "MB", "GB", or "TB"

tool

string

No

Tool used for acquisition

tool_version

string

No

Version of the acquisition tool

description

string

No

Notes or description

acquire_date

string

No

Date of acquisition (ISO 8601)

duration

number

No

Duration in seconds

hash_1

string

No

Primary hash value

hash_1_type

string

No

Primary hash algorithm (e.g., MD5, SHA1)

hash_2

string

No

Secondary hash value

hash_2_type

string

No

Secondary hash algorithm

storage_uuid

string

No

UUID of the storage location

evidence_uuid

string

No

UUID of the parent evidence item

linked_contact_uuid

string

No

UUID of the linked contact / custodian

acquired_by_id

number

No

User ID of the person who performed acquisition

location_uuid

string

No

UUID of the physical location

custom_fields

array

No

Array of { field_id, value } objects

Response

Example: Create a Basic Acquisition

Example: Create with Full Details


PATCH /acquisitions/:uuid

Update an existing acquisition. Only include the fields you want to change.

Request Body

All fields from the create endpoint are accepted (except case_uuid is optional). Only provided fields will be updated.

Response

Example: Update Name and Description

Example: Update Hash Values

Example: Update Custom Fields


DELETE /acquisitions/:uuid

Permanently delete an acquisition by UUID.

Response

Example


Error Handling

The API returns standard HTTP status codes:

Code
Meaning

200

Success

400

Validation error (invalid parameters/body)

401

Unauthorized (missing or invalid API key)

500

Internal server error

Error responses include a message field. Validation errors also include an errors array with details.

Example: Error Handling in Python


Pagination

List responses are paginated. Use page and page_size to control pagination.

Example: Iterate Through All Pages

Last updated