Conversations

Host-guest messaging threads linked to reservations.

List conversations

GET/v1/conversations

Request

curl https://api.repull.dev/v1/conversations \
  -H "Authorization: Bearer sk_test_YOUR_KEY" \
  -H "X-Workspace-Id: YOUR_WORKSPACE_ID"

Response

{
  "data": [
    { "id": "100", "reservationId": "456", "propertyId": "123", "type": "reservation", "createdAt": "..." }
  ],
  "pagination": { "total": 12, "limit": 50, "offset": 0, "hasMore": false }
}

Query Parameters

limitintegerDefault: 50

Max results

offsetintegerDefault: 0

Pagination offset

reservation_idstring

Filter by reservation

Get messages in a conversation

GET/v1/conversations/:id/messages

Request

curl https://api.repull.dev/v1/conversations/123/messages \
  -H "Authorization: Bearer sk_test_YOUR_KEY" \
  -H "X-Workspace-Id: YOUR_WORKSPACE_ID"

Response

{
  "data": {
    "id": "100",
    "reservationId": "456",
    "messages": [
      { "id": "1", "senderType": "GUEST", "message": "Hi! What are the check-in instructions?", "createdAt": "..." },
      { "id": "2", "senderType": "HOST", "message": "Welcome! Check-in is at 3 PM...", "createdAt": "..." }
    ]
  }
}

Send a message in a conversation

POST/v1/conversations/:id/messages

Request

curl -X POST https://api.repull.dev/v1/conversations/123/messages \
  -H "Authorization: Bearer sk_test_YOUR_KEY" \
  -H "X-Workspace-Id: YOUR_WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "message": "Welcome to your stay!"
}'

Response

{ "data": { "id": "3", "conversationId": "100", "senderType": "HOST", "message": "Welcome!", "createdAt": "..." } }

Body Parameters

messagestringRequired

Message text

AI