Payload capture is off by default. These endpoints configure capture only. MeshAI does not currently expose captured payload records through a public read or export endpoint.
Enabling capture is a tenant processing instruction, not proof of end-user consent or another lawful basis. Your organization remains responsible for establishing and documenting its lawful basis.
Get Configuration
Requires payload:read. An unconfigured tenant receives the default-off response:
Update Configuration
Requires payload:write. retention_days must be from 1 through 30 and cannot exceed the tenant plan’s telemetry retention. processing_purpose must contain 10 through 500 characters. You can provide up to 25 redaction rules with unique IDs.
A rule field_path is a dot-separated sequence of field names, such as messages.content. Array selectors such as messages[*].content are not accepted. pattern, when supplied, must be a valid regular expression no longer than 500 characters.
Each update increments config_version and creates a payload_capture.configured audit event. To disable future capture, send the same required fields with enabled: false; retention_days and processing_purpose remain required. The disabled configuration stops requests that read it from starting capture, but work already in flight or queued can still finish. Disabling does not delete existing sanitized records.
Each record receives an expires_at value from the retention setting in effect when it was written, so a later retention change applies only to new records. Expiry makes the record eligible for scheduled deletion; it is not a guarantee of deletion at that exact instant. There is currently no public payload read, export, delete, or self-service data-subject-request endpoint.
See Sanitized Input Capture for supported inputs, redaction, and failure semantics.