Skip to Content
APIEndpointsAttribute sentiment

Brand Alignment: attribute sentiment

POST /v1/brands/:brand_id/alignment/answers/:answer_id/attribute-sentiment

Access is limited to the brands permitted by your credential. Requires write:alignment. Workspace API keys and signed-in MCP sessions are supported.

Writes require an active workspace entitlement and an Idempotency-Key header. Support memberships cannot write.

Corrects the sentiment Asky read in passages of one answer about an attribute (a quality such as Easy to use or Expensive), when Asky’s reading is wrong. Each passage is one mention of the attribute, counted in its own sentiment, so a correction moves that mention everywhere: the sentiment by attribute, the radar, the trend, reports and exports. A passage marked not about the attribute stops counting, and an answer with no passage left no longer counts for it. An answer’s overall reading of an attribute follows from its passages: mixed when they both praise and criticize, otherwise positive, negative or neutral. Asky’s own reading is kept, and a sentiment of null returns the passage to it. A correction follows the answer into every scan that reads that passage.

Only attributes Asky tied to your brand in the answer can be corrected.

Request body

Only the fields below are accepted. Brand and answer identifiers in the URL cannot be overridden in the body.

FieldRequiredDescription
correctionsYesThe passages to correct, 1 to 30, all in this answer. Each is { "attribute", "sentiment" }, with start and end where the attribute has several passages in the answer, and each passage may appear once.
corrections[].attributeYesThe attribute’s label, as the perception endpoint lists it for the answer.
corrections[].start, corrections[].endNoThe passage’s span, as the perception endpoint lists each passage’s. Omit both for the attribute’s only passage in the answer.
corrections[].sentimentYespositive (praise), negative (criticism), mixed (both), neutral (neither), or not_about_attribute (the passage does not tie the attribute to your brand). null returns the passage to Asky’s reading.
scan_idNoThe scan the answer is in. Defaults to the latest finished scan.
noteNoWhy your team corrected them, kept with each correction (up to 500 characters).

Response

The standard API envelope places each corrected attribute’s sentiment for the answer as it now counts (sentiment; counted, true while the answer still counts for the attribute and false once every passage is marked not about it; mention_count: the mentions the answer now counts for it, with automatic_sentiment and corrected where your team changed it), the passages changed (attribute, start, end, from, to, asky) and a url to the attribute’s answers on the Brand Alignment page in data, with request_id beside it at the top level.

A request that changes nothing, because every passage already reads that way, is refused.

Last updated on