Feedback Records

Update a feedback record

Changed on

Updates specific fields of a feedback record data point.

Changing value_text clears the server-generated enrichment fields computed from it (sentiment, sentiment_score, emotions, value_text_translated, translation_lang_key) and queues re-enrichment; changing language clears and re-queues the translation pair only. The response reflects the cleared state — the fields are absent until the asynchronous re-enrichment completes.

patch/v1/feedback-records/{id}

Request

  • Base URL
    http://localhost:8080
  • URL
    http://localhost:8080/v1/feedback-records/{id}
  • Auth
    HTTP bearer

Path parameters

idstring uuid required

Feedback Record ID (UUID)

Request body

languagestring

Update language. NULL bytes not allowed.

metadataobject nullable

Replaces the stored metadata object wholesale — it is not merged, so send every key you want to keep or the omitted ones are lost. See the create operation for the value rules and key conventions, including the same 400 rejections (invalid UTF-8, NULL bytes, unpaired surrogates, out-of-range numbers).

user_idstring

User ID (e.g., anonymous ID or email hash)

value_booleanboolean

Update boolean response

value_datestring date-time

Update date response. Must be between 1970-01-01 and 2080-12-31.

value_numbernumber double

Update numeric response. Must be between -1e15 and +1e15.

value_textstring

Update text response. NULL bytes not allowed.

value_idstring

Update the stable id of the selected option in the source system (e.g. a survey choice id), stored alongside value_text for durable option identity. Opaque to Hub. NULL bytes not allowed.

Response

OK

collected_atstring date-time required

When the feedback was collected

created_atstring date-time required

When this record was created

field_idstring required

Identifier for the question/field

field_labelstring

The actual question text

field_group_idstring

Stable identifier grouping related fields (for ranking, matrix, grid questions)

field_group_labelstring

Human-readable question text for the group

field_type'text' | 'categorical' | 'nps' | 'csat' | 'ces' | 'rating' | 'number' | 'boolean' | 'date' required

The type of a feedback field, which determines which value_* member carries the answer. Mirrors the field_type_enum database type; keep the three in sync.

idstring uuid required

UUIDv7 primary key

languagestring

ISO language code. NULL bytes not allowed.

sentiment'very_negative' | 'negative' | 'neutral' | 'positive' | 'very_positive' | 'mixed'

Sentiment polarity label inferred from value_text by the sentiment enrichment: the five ordinal levels plus a distinct "mixed". Server-generated and read-only.

sentiment_scorenumber double

Signed sentiment polarity from -1.0 (very negative) to 1.0 (very positive) (sentiment enrichment). Read-only; absent until the record is enriched.

emotionsEmotionValue[]

Emotions inferred from value_text (emotion enrichment); multi-label from a fixed set. Read-only; absent until the record is enriched, and never an empty array.

source_idstring

Reference to survey/form/ticket ID

source_namestring

Human-readable name

source_typestring required

Type of feedback source

submission_idstring required

Identifier for the logical submission this record belongs to (required).

tenant_idstring required

Tenant/organization identifier. NULL bytes not allowed.

translation_lang_keystring

BCP-47 target locale that value_text_translated was produced in (language enrichment). Read-only; absent until the record is enriched.

updated_atstring date-time required

When this record was last updated

user_idstring

User ID (e.g., anonymous ID or email hash)

value_booleanboolean

Boolean response

value_datestring date-time

Date response

value_numbernumber double

Numeric response

value_textstring

Text response. NULL bytes not allowed.

value_idstring

Stable id of the selected option in the source system (e.g. a survey choice id), stored alongside value_text for durable option identity. Opaque to Hub. Absent for free-text/non-choice answers. NULL bytes not allowed.

value_text_translatedstring

value_text translated into the tenant's configured target language (language enrichment). Read-only; absent until the record is enriched.

Changes