getEntities()
getEntities(
options?:GetEntitiesOptions):Promise<Entity[]>
Defined in: packages/core/src/document-search/index.ts:599
Get extracted entities from indexed documents
Retrieves named entities (persons, organizations, locations, etc.) extracted from documents. Supports filtering by sources and files.
Note: Returns max 50 entities for memory optimization. For full entity exploration, use search results with entity filtering.
Parameters
| Parameter | Type | Description |
|---|---|---|
options? | GetEntitiesOptions | Optional filtering parameters |
Returns
Promise<Entity[]>
Promise resolving to array of Entity objects:
id- Unique entity identifiername- Entity name/valuetype- Entity type (PERSON, ORG, LOCATION, etc.)count- Number of occurrences across documents
Throws
401 - Not authenticated
Throws
422 - Validation error
Example
import { getEntities } from "@cpod/sdk";
// Get all entities
const entities = await getEntities();
console.log(`Found ${entities.length} entities`);
// Filter by source
const contractEntities = await getEntities({
sources: ["contracts"],
limit: 50,
});
// Get entities for a specific file
const fileEntities = await getEntities({
fileHashes: ["95d47a820fcc0a667004a6da403b3d29"],
});
for (const entity of entities) {
console.log(`${entity.name} (${entity.type}): ${entity.count} occurrences`);
}
// Group entities by type
const byType = entities.reduce((acc, e) => {
acc[e.type] = acc[e.type] || [];
acc[e.type].push(e);
return acc;
}, {} as Record<string, typeof entities>);
console.log("People:", byType.PERSON?.map(e => e.name));