Search API
The Search API is a flexible endpoint for finding records across one or more entity types using structured filters, free-text search, sorting, and field selection.
POST /api-public/1.0/search/{type}
The endpoint above uses {type} as a placeholder for the entities to search. Enter the system name for the entity instead:
| Entity Type | System Name |
|---|---|
| Case | sys_case |
| File (attachment) | sys_attachment |
| Party | sys_party |
| Profile | sys_person |
| Note | sys_note |
| To-Do | sys_todo |
| User | sys_user |
To search multiple entity types, use a comma to separate the system names, e.g. POST /api-public/1.0/search/sys_case,sys_todo
Operation:
- The authenticated client sends a POST request with filters, text search, sorting, pagination, and field selection.
- The server returns an object containing records, count, and total, where:
- records: records returned in the response.
- count: number of records returned in the response.
- total: total matching records across all pages (use offset to paginate).
The request body accepts the following optional parameters:
- filters: a FOV DSL object for structured filtering (field/operator/value with and/or/not nesting).
- anyWords, allWords, or exactWords: free-text search across indexed fields.
- sort: an object specifying the field and direction by which to records.
- entitiesSelectedFields: an object specifying which fields to include per entity type.
- limit: maximum number of records to return.
- offset: number of records to skip for pagination.
Typical Response (200 Search results returned successfully):
{
"records": [
{
"id": "uuid string",
"type": "string",
"data": {...},
"score": integer,
"highlight": {}
}
...
],
"count": integer,
"total": integer
}Purpose:
- View existing information across multiple entity types.
- Find and query all records meeting certain criteria.