Evidence

Register a multimodal evidence asset (metadata-only)

Registers one multimodal evidence asset header (image / audio / video / document / sensor) plus optional citation-target fragments — WITHOUT transferring bytes. The surface is metadata-only by design (the MM-6 quarantine boundary): originUri (a caller-owned location the brain never fetches) is required, storageRef is rejected (400), and no upload is accepted, so a fresh registration is always availability external. byteHash (sha256 of the original bytes) is REQUIRED — the UNIQUE asset identity (migration 0109): same-user re-registration dedupes to the existing asset (deduped: true, requested fragments still appended); a different principal hitting a known hash gets a bare 409 without the stored row’s metadata. Fragment locators are validated against the kind→modality matrix BEFORE any row is written — one bad locator fails the whole request. A fragment excerpt lands as a caller-asserted derived_representation of kind text (producerVersion ingest-excerpt-v1). Answers a bare 404 until EVIDENCE_INGEST_ENABLED=1; answers 503 while EVIDENCE_SUBSTRATE_ENABLED is off. Source: src/evidence/evidence-ingest.controller.ts.

Required scope: brain:write.

post/v1/ingest/evidence-asset

Request

  • Base URL: https://brain.inite.ai
  • URL: https://brain.inite.ai/v1/ingest/evidence-asset
  • Auth: HTTP bearer

Request body

byteHashstring required
byteLengthinteger required
durationMsinteger
heightinteger
mediaTypestring required
metaobject
modality'image' | 'audio' | 'video' | 'document' | 'sensor' required
occurredAtstring required
originUristring required
pageCountinteger
piiClassesstring[]
recorderstring
retainUntilstring
scopestring[]
userIdstring
verticalstring required
widthinteger

Response

Registered (or same-user deduped) asset + created fragments.

assetIdstring required
availability'hot' | 'cold' | 'external' | 'gone' required
dedupedboolean required

Changes

No recorded changes to this operation across all 1 revision of this API.