Skip to main content
POST https://api.humalike.com/v1/turn-taking/actions/record_event
Report activity that isn’t a message: a user started or stopped typing, or edited a message. These events feed behavioural signals, which sharpen the speak/stay-silent decision and surface turn_taking.signal events (for example, detecting that a user has been typing without sending). You only need this when the thread enables behavioural signals. A sent message is reported through submit_messages, not here. This call is not billable.

Authorization

Authorization
string
required
Your bearer token: Bearer <token>. See Authentication.

Request body

thread_id
string
required
The thread the event happened in.
type
string
required
The kind of event: typing_start, typing_stop, or message_edited.
sender
string
required
Who produced the event — the person’s id, 1–255 characters.
client_ts
string
Optional client-measured time of the event (ISO 8601). Improves the timing of behavioural signals; falls back to server receipt time when omitted.
Request
{
  "thread_id": "b9c1e4f0-2a77-4f6e-9d2a-1f0c8e5b3a44",
  "type": "typing_start",
  "sender": "casey"
}

Response

tags
string[]
Any behavioural tags the event produced. Empty for typing and edit events today.
200 OK
{
  "tags": []
}

Errors

StatusCodeWhen
401UNAUTHORIZEDThe bearer token is missing, invalid, or expired.
403forbiddenThe token is valid but not allowed here.
422VALIDATION_ERRORThe body is malformed, or type is not one of typing_start, typing_stop, message_edited.
See Errors for the envelope shape.

Example

curl https://api.humalike.com/v1/turn-taking/actions/record_event \
  -H "Authorization: Bearer $HUMALIKE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "thread_id": "b9c1e4f0-2a77-4f6e-9d2a-1f0c8e5b3a44",
    "type": "typing_start",
    "sender": "casey"
  }'