# Changelog

All notable changes to the Wolfeo API & Webhooks are documented here.


# 2026-04-29

# Added — Merge Fields API support

Pages built with the Wolfeo builder now support dynamic merge fields ({{FIELD}} tokens) in Text and Title elements. When a contact is identified via the wolfeo_c cookie (set at opt-in), or via query parameters (?firstname=&lastname=&email=), the following fields resolve automatically on public pages:

Contact fields

  • {{FIRST_NAME}} — contact's first name
  • {{LAST_NAME}} — last name
  • {{EMAIL}} — email address
  • {{PHONE}} — mobile phone number
  • {{COMPANY}} — company name
  • {{CITY}} — city
  • {{COUNTRY}} — country
  • {{SIGNUP_DATE}} — date the contact joined (formatted, locale-aware)
  • {{DAYS_SINCE_SIGNUP}} — number of days since signup

Runtime fields (no contact required)

  • {{TODAY_DATE}}, {{TOMORROW_DATE}}, {{DAY_NAME}}, {{MONTH_NAME}}, {{YEAR}}, {{TIME}}

Visitor fields (IP geolocation via ipstack)

  • {{VISITOR_CITY}}, {{VISITOR_COUNTRY}}

Fallback syntax — append :default value to any token:

{{FIRST_NAME:dear visitor}}

If the field cannot be resolved, the fallback is rendered instead. If neither is available, the token is removed cleanly (no residual whitespace or <br>).

XSS — all resolved values are escaped with htmlspecialchars before injection into the page HTML.