Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.morf.health/docs/llms.txt

Use this file to discover all available pages before exploring further.

images/morf.svg The Morf HTTP Track API lets you record data from any website or application. Requests hit Morf servers, and Morf routes your data to any destination you want.

Making a Track Call

Create a Track event-triggered workflow in Morf. Click the trigger node > Connect > Webhook URL — this is your track endpoint. You can then make requests to this endpoint from your application.
If you do not have a value for a property, omit it from the payload entirely rather than sending an empty string.

Testing

  1. Send test events to your staging and/or production webhook URLs.
  2. In the Morf dashboard, navigate to Monitoring > Workflow Executions to view events coming through.
    • Click an execution in the timeline to view the profile that was created or updated and inspect its stored properties.
    • Click on the {} in the top toolbar to display the event payload.

Events

Triggering Webhook Types

Any event_name is supported as an event type. For example, join-button-clicked is a valid event name. There are no limitations on the character set or length of the event name, however we recommend using a short, descriptive name which is easy to understand and identify.

Requests

Submit a POST request to the Morf Track API endpoint. The POST request should include a JSON body with the data defined in the schema below. See the example and a description of the payload on the right hand side for details. We recommend setting the Content-Type: application/json header if you wish. If a field is marked (Optional), you can either send that field in the payload or not. Eliding the key is tolerated as is submitting null as the value. These are treated equivalently.

Special Object Fields

Profile Properties (profile_properties)

Profile properties are used to store data on a Morf Profile. Any field matching an existing Morf Profile Property type will be updated on the Morf Profile. For example, if the payload’s profile properties object contains a date_of_birth field, the Morf Profile’s date_of_birth property will be updated. New field values inside this object will be added to the Morf Profile as new properties. For example, if you sent a new field like favorite_color with a value of blue, the new Property type will be created and updated on the Morf Profile.

Event Data (event_data)

Event data is used to store data associated with the event. This data is not automatically stored on the Morf Profile but is available to be accessed within a Morf Workflow.

Profile Ids (profile_ids)

This object is used to store IDs from third party systems. The customer field is used to store a unique identifier in your organization. The other fields are used to store IDs from other third party systems.
Use the profile ID from the event payload as the lookup field in the Profile Lookup node. Click expression and enter CEL to reference the value from the event payload. For example, to reference the Intercom Id in the event payload, enter profile_ids.?intercom.