For the complete documentation index, see llms.txt. This page is also available as Markdown.

Lead Capture API Docs

Documentation for Rechat's Lead Capture API.

Capture leads using a known lead channel ID (webhook).

post

Integrate Rechat's lead capture functionality into your website using your lead_channel id (which you can get through Rechat's Lead Routing interface).

Path parameters
lead_channelstring · uuidRequired

Your lead channel ID. This serves as both the endpoint identifier and authentication key.

Example: 55f50bdd-fc93-4737-84e4-6fa5ad97745f
Body

JSON payload for Rechat's lead capture API. All fields are optional.

first_namestringOptional

Contact's first name

Example: John
last_namestringOptional

Contact's last name

Example: Doe
emailstring · emailOptional

Contact's email address

Example: john.doe@example.com
phone_numberstringOptional

Contact's phone number

Example: (555) 123-4567
tagstring[]Optional

Array of tags for categorization

Example: ["Lead","Website Inquiry"]
lead_sourcestringOptional

Source of the lead

Example: Lead Capture Demo
notestringOptional

Additional notes or messages

Example: Interested in downtown properties
referer_urlstring · uriOptional

Referring URL

Example: https://example.com/property/123
Responses
200

OK

application/json
codestringOptionalExample: OK
post/leads/channels/{lead_channel}/webhook
POST /leads/channels/{lead_channel}/webhook HTTP/1.1
Host: api.rechat.com
Content-Type: application/json
Accept: */*
Content-Length: 858

{
  "first_name": "John",
  "last_name": "Doe",
  "email": "john.doe@example.com",
  "phone_number": "(555) 123-4567",
  "tag": [
    "Lead",
    "Website Inquiry"
  ],
  "lead_source": "Lead Capture Demo",
  "note": "Interested in downtown properties",
  "listing": {
    "price": 750000,
    "mls_number": "5039447",
    "cover_image_url": "https://example.com/images/property.jpg",
    "property": {
      "address": {
        "street_number": "123",
        "street_dir_prefix": "N",
        "street_name": "Main",
        "street_suffix": "St",
        "street_dir_suffix": "NE",
        "unit_number": "#5",
        "city": "San Francisco",
        "state_code": "CA",
        "postal_code": "94102",
        "country": "United States",
        "direction": "North",
        "street_address": "123 N Main St NE",
        "full_address": "123 N Main St NE"
      }
    }
  },
  "referer_url": "https://example.com/property/123",
  "assignees": [
    {
      "email": "agent@example.com",
      "phone_number": "(555) 987-6543",
      "first_name": "Jane",
      "last_name": "Smith",
      "mls": "NTREIS",
      "mls_id": "12345678"
    }
  ]
}
{
  "code": "OK",
  "data": {
    "id": "0e17f1d9-b9cb-4732-9185-fd80f990f693",
    "contact": "2ba538ee-3f2c-4ecb-b87e-a706b5c3e73f",
    "lead_channel": "55f50bdd-fc93-4737-84e4-6fa5ad97745f",
    "raw_payload": {},
    "parsed_payload": {},
    "created_at": 1752247298.819
  }
}

Post activity to a lead's timeline

post

Track contact activities such as viewing listings, creating searches, signing up, and other interactions. This endpoint allows you to post various activity types to a contact's timeline for better engagement tracking.

Path parameters
lead_idstring · uuidRequired

The UUID of the lead/contact

Example: 0e17f1d9-b9cb-4732-9185-fd80f990f693
Body

Payload for posting activities to a contact's timeline. Different activity types require different fields.

actionstring · enumRequired

The type of activity being reported

Example: ContactViewedListingPossible values:
notesstringOptional

Optional notes about the activity

Example: User showed strong interest in this property
Responses
200

Activity posted successfully

application/json
successbooleanOptionalExample: true
post/leads/{lead_id}/timeline
POST /leads/{lead_id}/timeline HTTP/1.1
Host: api.rechat.com
Content-Type: application/json
Accept: */*
Content-Length: 586

{
  "action": "ContactViewedListing",
  "listing": {
    "url": "https://example.com/listing/123",
    "mls_number": "5039447",
    "mls": "nneren",
    "cover_image_url": "https://example.com/images/property.jpg",
    "price": 4750000,
    "property": {
      "address": {
        "street_address": "25 Oakledge Drive"
      }
    }
  },
  "search": {
    "url": "https://example.com/search/123",
    "title": "Downtown 3BR Condos",
    "minimum_bedrooms": 3,
    "maximum_bedrooms": 4,
    "minimum_bathrooms": 2,
    "maximum_bathrooms": 3,
    "minimum_price": 500000,
    "maximum_price": 1000000,
    "property_types": [
      "Condominium",
      "Townhouse"
    ],
    "pool": true
  },
  "notes": "User showed strong interest in this property"
}
{
  "success": true
}

Reassign a lead to different agents or team members

put

Reassign an existing lead to different agents or team members. This endpoint updates the assignees for a lead, replacing the current assignees with the new ones provided in the request body.

Path parameters
lead_idstring · uuidRequired

The UUID of the lead/contact to reassign

Example: 0e17f1d9-b9cb-4732-9185-fd80f990f693
Bodyobject · Assignee[]

Agent or team member assigned to the lead

emailstring · emailOptional

Assignee's email address

Example: agent@example.com
phone_numberstringOptional

Assignee's phone number

Example: (555) 987-6543
first_namestringOptional

Assignee's first name

Example: Jane
last_namestringOptional

Assignee's last name

Example: Smith
mlsstringOptional

MLS board name

Example: NTREIS
mls_idstringOptional

Assignee's MLS ID

Example: 12345678
Responses
200

Lead reassigned successfully

application/json
successbooleanOptionalExample: true
messagestringOptionalExample: Lead reassigned successfully
put/leads/{lead_id}/assignees
PUT /leads/{lead_id}/assignees HTTP/1.1
Host: api.rechat.com
Content-Type: application/json
Accept: */*
Content-Length: 138

[
  {
    "email": "agent@example.com",
    "phone_number": "(555) 987-6543",
    "first_name": "Jane",
    "last_name": "Smith",
    "mls": "NTREIS",
    "mls_id": "12345678"
  }
]
{
  "success": true,
  "message": "Lead reassigned successfully"
}

Last updated

Was this helpful?