Skip to content

Set UTM on a self-scheduling attempt

Request

Attach UTM attribution to a self-scheduling attempt (a separate action from creating the attempt). Provide the attempt id plus at least one UTM value; values are normalized and auto-created as account-scoped options. An attempt's UTM is captured once.

Security
PartnerApiKey and PartnerOAuth
Bodyapplication/jsonrequired
adGroupstring, [ 0 .. 255 ] characters

utm_adgroup value

Example:"ad_group_1"
campaignstring, [ 0 .. 255 ] characters

utm_campaign value

Example:"spring_promo"
contentstring, [ 0 .. 255 ] characters

utm_content value

Example:"banner_v2"
mediumstring, [ 0 .. 255 ] characters

utm_medium value

Example:"cpc"
selfSchedulingAttemptIdinteger, (int64)required

The self-scheduling attempt to attribute

Example:678
sourcestring, [ 0 .. 255 ] characters

utm_source value

Example:"google"
termstring, [ 0 .. 255 ] characters

utm_term value

Example:"dental implants"
curl -i -X POST \
  'https://api-docs.lobbie.com/_mock/openapi/partner/v2/account/{accountId}/utm' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -d '{
    "adGroup": "ad_group_1",
    "campaign": "spring_promo",
    "content": "banner_v2",
    "medium": "cpc",
    "selfSchedulingAttemptId": 678,
    "source": "google",
    "term": "dental implants"
  }'

Responses

UTM attached to the attempt

Bodyapplication/json
adGroupstring

utm_adgroup value

Example:"ad_group_1"
appointmentIdinteger, (int64)

Appointment this UTM is attributed to; null if the attempt has not converted

Example:12345
campaignstring

utm_campaign value

Example:"spring_promo"
capturedAtstring, (date-time)

UTM capture timestamp (UTC) — the value the startDate/endDate filters range over

Example:"2025-01-15T14:00:00Z"
contentstring

utm_content value

Example:"banner_v2"
mediumstring

utm_medium value

Example:"cpc"
selfSchedulingAttemptIdinteger, (int64)

Self-scheduling attempt this UTM was captured on; null if not captured via self-scheduling (e.g. GoHighLevel/staff)

Example:678
sourcestring

utm_source value

Example:"google"
stagestring

Funnel stage: CONVERTED once attributed to an appointment, otherwise LANDED

Enum:"CONVERTED""LANDED"
Example:"CONVERTED"
termstring

utm_term value

Example:"dental implants"
Response
{ "adGroup": "ad_group_1", "appointmentId": 12345, "campaign": "spring_promo", "capturedAt": "2025-01-15T14:00:00Z", "content": "banner_v2", "medium": "cpc", "selfSchedulingAttemptId": 678, "source": "google", "stage": "CONVERTED", "term": "dental implants" }