Delete one person text row

View as Markdown

Soft delete (default) sets isCurrent=false and isPrimary=false; hard delete removes the row. Returns the deleted text row as confirmation.

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

personIdstringRequiredformat: "uuid"
Person UUID owning the text row
textIdlongRequired
Text row id

Query parameters

deleteModeenumOptional

Delete mode; defaults to soft

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
idinteger

Type-safe identifier for text records

ownerobject

Owning record, nested ids only: owner.entityId or owner.personId — exactly one is set, and no name fields. Writes are scoped by the owning entity/person route; owner is never a write field.

textstring
textTypestring
Value object for text type classification
complianceobject or nullOptional

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

createdAtdatetime or nullOptional
isCurrentboolean or nullOptional
isPrimaryboolean or nullOptional
languagestring or nullOptional
sourcestring or nullOptional
textNamestring 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