Skip to content
Core API
Esc
navigateopen⌘Jpreview
On this page

Leads

Create and update leads with complete curl request examples.

Collection path: events/{event_id}/leads

Input Type POST PATCH Notes
sponsor_id Scalar ID Required unless exactly one sponsor is injected by a row restriction Optional POST creates ownership for one sponsor. PATCH replaces all ownerships for an unrestricted scope, or only the visible restricted ownership set for a restricted scope.
registrant_id Scalar ID Required for a successful create Optional Target registrant; must belong to the event.
created_by_registrant_id Scalar ID Optional Optional for unrestricted scopes Creator/scanner registrant. Sponsor-restricted scopes cannot change it on PATCH.
notes Scalar string or null Optional Optional Lead notes.
custom_fields_attributes Raw array Ignored Optional Lead-scan answers are processed only on PATCH.

The wrapper enforces event boundaries for the target registrant, optional creator, sponsor, and lead-scan answers. The scope’s sponsor row restriction also limits which existing leads can be patched.

POST a lead

curl --request POST \
  --url "${BRELLA_API_BASE_URL}/api/core/organizations/${BRELLA_ORGANIZATION_ID}/events/${BRELLA_EVENT_ID}/leads" \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
    "sponsor_id": 103705,
    "registrant_id": 1201,
    "created_by_registrant_id": 1301,
    "notes": "Requested pricing information"
  }'

On a scope restricted to exactly one sponsor, sponsor_id may be omitted and that sponsor is injected. A scope restricted to one or more sponsors cannot create a lead for a sponsor outside the restricted set.

The response type is lead. Useful write-response fields include event_id, sponsor_ids, registrant_id, created_by_registrant_id, notes, and updated_at.

PATCH a lead

This example updates notes and saves lead-scan answers. Each answer identifies the sponsor and question definition that own the answer.

curl --request PATCH \
  --url "${BRELLA_API_BASE_URL}/api/core/organizations/${BRELLA_ORGANIZATION_ID}/events/${BRELLA_EVENT_ID}/leads/3898" \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
    "notes": "Requested pricing and a Q4 follow-up",
    "custom_fields_attributes": [
      {
        "sponsor_id": 103705,
        "question_id": 901,
        "values": ["Q4"]
      }
    ]
  }'

An unrestricted scope may reassign created_by_registrant_id; a sponsor-restricted scope receives 404 for that reattribution attempt. A lead created without a creator can legitimately return created-by-registrant-id: null.

Last updated on August 25, 2026