Integrations

Lead Sources And Intake

How forms, ads, and inbound conversations enter CRAIM and become operational records.

CRAIM already has a lead-intake layer, which is important because not every inbound item starts as a human conversation.

Supported intake patterns

The current backend supports public and authenticated intake flows for:

  • website forms
  • landing forms
  • Meta lead ads
  • VK lead forms
  • Telegram inbound conversations
  • Instagram direct message intake

Why intake is a first-class concept

Lead intake should normalize inbound events before they become leads, conversations, qualification triggers, or tasks.

That keeps the system from mixing:

  • transport-level webhook data
  • CRM record creation
  • qualification logic
  • conversation handling

Lead sources versus channels

Lead sources represent where new opportunities originate.

Channels represent where conversations happen.

This separation is correct and should stay.

Lead source integrations

The codebase already has a dedicated lead-sources module with a production-oriented design for Meta and a placeholder path for VK.

  1. 1Normalize inbound event.
  2. 2Resolve company configuration.
  3. 3Create or update the lead record.
  4. 4Apply default assignment and status rules.
  5. 5Trigger qualification or follow-up logic only when appropriate.

Practical advice

Do not document lead intake as a side note under generic integrations. It deserves its own documentation because it defines how raw external events become CRM truth.