LeadSail
Campaigns

Delivery Endpoints

Configure HTTP endpoints with nested payloads and authentication.

Delivery Endpoints

A delivery endpoint defines where and how qualified leads are sent to clients. Each endpoint configures the HTTP request format, authentication, payload structure, and response parsing.

Endpoint Setup

Navigate to the Delivery tab on a campaign and select or create a delivery endpoint.

Connection Settings

  • URL — The client's API endpoint
  • Method — POST, GET, PUT, or PATCH
  • Body Format — JSON, XML, form-encoded, or multipart form-data
  • Headers — Custom headers for authentication or content type
  • Description — Internal notes about this endpoint

Authentication

Auth TypeDescription
StaticHeaders are sent as-is (e.g., Authorization: Bearer <token>)
OAuth 2.0Automatic token management with refresh. Supports Salesforce and custom providers.

For OAuth 2.0, configure:

  • Provider — Salesforce or custom
  • Token Endpoint — URL to fetch tokens
  • Grant Typerefresh_token or client_credentials
  • Client ID / Secret — OAuth credentials (encrypted at rest)
  • Refresh Token — For token renewal

Payload Builder

The payload builder lets you define the exact structure of the HTTP request body using a visual tree editor.

Node Types

  • Field — Maps a lead data field to a client-expected key
  • Object — Creates a nested object in the payload
  • Array — Creates an array (items can be fields or objects)

Field Configuration

Each field node specifies:

  • Client Key — The key name the client expects (e.g., first_name)
  • Source Key — The internal field from the lead (e.g., firstName) or a hardcoded value
  • Data Type — String, number, boolean, date, or file
  • Required — If enabled, a missing value disqualifies the lead
  • Hardcoded — If enabled, sends a literal value instead of pulling from lead data
  • Accepted Values — Values the client accepts; the AI maps lead data to the closest match
  • Value Set — Reference a shared set for large accepted value lists
  • Formatting Instructions — Instructions for the AI on how to format the value

File Fields

File fields support three encoding modes:

  • URL — Sends the file URL as a string
  • Base64 — Downloads the file and encodes it as base64
  • Multipart — Sends as a multipart form upload

Dynamic Keys

Dynamic keys let you conditionally modify the payload based on lead data. They can change the URL, HTTP method, headers, or inject additional payload fields.

Each dynamic key has:

  • Type — What to modify: url, method, bodyFormat, header, payload, or file
  • Conditions — When to apply (same conditional rules builder)
  • Value — The value to apply
  • Target Path — For payload modifications, the JSONPath location (e.g., parties, parties[0], intakes.AttachmentFiles)
  • Array Merge Modemerge-all (apply to every item) or add-new (add as a new item)
  • Priority — Higher priority keys are applied last and win on conflicts

Response Mapping

After delivery, the client's response can be parsed to extract useful data:

  • Client Lead ID — Dot-path to the client's lead ID in the response (e.g., data.client_record_id)
  • Field Mappings — Additional fields to extract and store (response path to target field name)

Shared Endpoints

A single delivery endpoint can be used by multiple campaigns. Changes to the endpoint affect all campaigns that reference it.

On this page