---
title: "RateChatCell appends a row to cell_rating for every click; thumbs-down also upserts a user_thumbs_down thread_warning."
method: POST
path: "/textql.rpc.public.chat.ChatService/RateChatCell"
tags: ["ChatService"]
---

# RateChatCell appends a row to cell_rating for every click; thumbs-down also upserts a user_thumbs_down thread_warning.

`POST /textql.rpc.public.chat.ChatService/RateChatCell`

RateChatCell appends a row to cell_rating for every click; thumbs-down also upserts a user_thumbs_down thread_warning.

## Headers

- `Connect-Protocol-Version` 1, required — Define the version of the Connect protocol
- `Connect-Timeout-Ms` number — Define the timeout, in ms

## Request body

- TextqlRpcPublicChatRateChatCellRequest
  - `chatId` string
  - `cellId` string
  - `rating` 'CELL_RATING_UNSPECIFIED' | 'CELL_RATING_NONE' | 'CELL_RATING_UP' | 'CELL_RATING_DOWN'
  - `reason` string, nullable — free-text "why" captured from the rating modal

## Response `200`

Success

- GoogleProtobufEmpty — A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }

## Other responses

- `default` — Error

---

[API](https://skmtc.net/textql/apis/textql-rpc-platform.md) · [All operations](https://skmtc.net/textql/apis/textql-rpc-platform/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/textql/textql-rpc-platform/versions/31ce2b0c4427/schema)
