Queues a consolidation report over the knowledge base's documents.
Finds clusters of near-duplicate documents (Draft and Published; archived documents are never members) by embedding similarity and records them without changing any document. Apply selected clusters only through `POST .../consolidations/{id}:apply`, which reuses the exact report the operator reviewed. The legacy `reportOnly=false` shape is rejected. The pass runs out of band on the maintenance worker: this returns 202 with the queued run; poll `GET .../consolidations/{id}` for the report. One run per knowledge base at a time — a second request while one is queued or running is a 409.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The knowledge base id.
uuidThe tenant identifier
Pass options; every member is optional.
Legacy compatibility flag. Omit it or send true. false is rejected: an operator
must review the report and apply named clusters through the report's :apply endpoint.
Cosine similarity at or above which two documents are candidates for one article.
doubleAt most this many documents in one cluster (one agent decision).
int32Documents modified within this many minutes are left alone — a merger may be mid-write.
int32Response Body
curl -X POST "https://api.fruxon.com/v1/tenants/string/knowledgeBases/497f6eca-6276-4993-bfeb-53cbbbba6f08:consolidate" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "00000000-0000-0000-0000-000000000000",
"knowledgeBaseId": "00000000-0000-0000-0000-000000000000",
"status": "QUEUED",
"trigger": "MANUAL",
"consolidationPolicyVersion": 0,
"consolidationCadence": "MANUAL",
"consolidationMode": "REPORT_ONLY",
"requestedBy": "string",
"reportOnly": false,
"reportOnlyReason": "string",
"similarityThreshold": 0,
"maxClusterSize": 0,
"recentWriteWindowMinutes": 0,
"startedAt": 0,
"completedAt": 0,
"error": "string",
"report": {
"version": 0,
"knowledgeBaseId": "00000000-0000-0000-0000-000000000000",
"reportOnly": false,
"consolidatorAgentId": "string",
"similarityThreshold": 0,
"maxClusterSize": 0,
"recentWriteWindowMinutes": 0,
"documentsConsidered": 0,
"documentsSkippedAsRecentlyModified": 0,
"embeddingsComputed": 0,
"embeddingsReused": 0,
"embeddingTokens": 0,
"embeddingModel": "string",
"clusters": [
{
"clusterId": "00000000-0000-0000-0000-000000000000",
"index": 0,
"members": [],
"maxSimilarity": 0,
"minSimilarity": 0,
"outcome": "UNSPECIFIED",
"classification": "UNSPECIFIED",
"survivorId": null,
"archivedIds": [],
"note": "string",
"executionRecordId": null
}
],
"clustersFound": 1,
"clustersMerged": 0,
"clustersKeptSeparate": 0,
"clustersFailed": 0,
"clustersRelated": 0,
"documentsArchived": 0
},
"createdAt": 0,
"modifiedAt": 0
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}