AISARAISAR
All webhooks

Conversations

Conversation assigned

conversation.assigned

Fires when a conversation is assigned to a user or a team. The participant object describes who was assigned.

HTTP request

AISAR sends a signed POST request to your webhook_url:

http
POST {webhook_url}
Content-Type: application/json
X-AISAR-Signature: sha256=...

{
  "event": "conversation.assigned",
  "event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
  "timestamp": "2026-03-26T12:00:00.000000Z",
  "company_id": 1,
  "data": {
    "conversation": {
      "id": 45,
      "status": "active",
      "contact_id": 10,
      "deal_id": null,
      "subject": null,
      "is_archived": false,
      "created_at": "2026-03-26T10:00:00.000000Z",
      "closed_at": null
    },
    "contact": {
      "id": 10,
      "display_name": "John Doe",
      "first_name": "John",
      "last_name": "Doe",
      "phone": "+77001234567",
      "email": "john@example.com",
      "status": "lead"
    },
    "participant": {
      "id": 7,
      "member_type": "user",
      "member_id": 5,
      "role": "assignee"
    }
  }
}

The X-AISAR-Signature header carries an HMAC-SHA256 signature of the request body — use it to verify the request came from AISAR.

Example payload

json
{
  "event": "conversation.assigned",
  "event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
  "timestamp": "2026-03-26T12:00:00.000000Z",
  "company_id": 1,
  "data": {
    "conversation": {
      "id": 45,
      "status": "active",
      "contact_id": 10,
      "deal_id": null,
      "subject": null,
      "is_archived": false,
      "created_at": "2026-03-26T10:00:00.000000Z",
      "closed_at": null
    },
    "contact": {
      "id": 10,
      "display_name": "John Doe",
      "first_name": "John",
      "last_name": "Doe",
      "phone": "+77001234567",
      "email": "john@example.com",
      "status": "lead"
    },
    "participant": {
      "id": 7,
      "member_type": "user",
      "member_id": 5,
      "role": "assignee"
    }
  }
}

Payload fields

FieldTypeDescription
conversation.idintegerConversation ID
participant.idintegerParticipant record ID
participant.member_typestringuser or team
participant.member_idintegerID of the assigned user or team
participant.rolestringParticipant role (e.g. assignee)
contactobject|nullContact associated with the conversation