Delete research snippet

View as Markdown
Deletes one research snippet. deleteMode=soft (default) retires the row from current/primary (isCurrent=false, isPrimary=false) so it drops out of default reads but stays as time-series history readable with includePrivate; deleteMode=hard removes the row entirely (use to clean up a non-compliant legacy row after a compliant replacement lands). Returns the affected record. Requires provenance for audit.

Authentication

AuthorizationBearer

User bearer token: Supabase or Clerk session JWT, Clerk OAuth access token, or Clerk personal API key

OR
X-API-Keystring

Admin API key for system-to-system write operations

Path parameters

entityIdstringRequiredformat: "uuid"
Canonical entity UUID.
snippetIdintegerRequired
Research snippet id.

Query parameters

deleteModeenumOptional

soft (default) retires the row from current/primary but keeps it as history; hard removes it (use to clean up a non-compliant legacy row after a compliant replacement lands).

Allowed values:
sourceTypeenumRequired
Write provenance source type.
sourceDetailstringRequired
Source detail or reviewer reference for the write.
sourceProviderstringOptional

Provider name for provider-native IDs or slugs.

sourceProviderIdstringOptional

Provider-native source ID.

sourceProviderSlugstringOptional

Provider-native source slug.

actorTypeenumOptional

Actor type; inferred as agent when agentChassis and agentModel are supplied, or as employee from an authenticated user JWT session.

Allowed values:
agentChassisstringOptional

Agent chassis token for agent-authored writes.

agentModelstringOptional

Agent model id for agent-authored writes.

Response

OK
entityIdstringformat: "uuid"
Canonical entity UUID
idinteger
isCurrentboolean

Current row. The live snippet for its type; demoted historical rows read only with includePrivate.

isPrimaryboolean
Primary row among the current snippets of its type.
textstring
textTypestring
visibleboolean

Whether the snippet appears in default reads. Admin/private reads (includePrivate) also return hidden rows.

complianceobject or nullOptional

Derived character/word counts and governed-contract compliance for this snippet row; null when not evaluated.

createdAtdatetime or nullOptional
updatedAtdatetime or nullOptional

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
406
Not Acceptable Error
409
Conflict Error
429
Too Many Requests Error
500
Internal Server Error
503
Service Unavailable Error