Skip to main content
Solved

Unable to view Date custom property in Trigger Filter dropdown for a Metric in the Flow builder UI


garyravago
Contributor I
Forum|alt.badge.img+2

Hello,

 

I’m fairly new to the Klaviyo platform and I ran into the same issue that several users have reported in the past regarding custom date properties not appearing the Flow Builder Trigger filter dropdown.

After hours of debugging and trying to format and post the Event JSON payload with various valid datetime strings, I was able to resolve this issue in an accidental unexpected manner by posting an event where the custom date property is null. I suspect this a software bug or maybe I overlooked something in the documentation.

 

Can your team confirm this bug? Below are all the steps I did to describe the issue, reproduce it, and provide a workaround.

 

-------------------------------------------------------------------------------------------------------------

 

Issue

  • Unable to view Date custom property in Trigger Filter dropdown for a Metric in the Flow builder UI

Expected Result

  •  When posting an Event containing a custom property that is a properly formatted Date string, the associated Metric should display in the Trigger Filter dropdown when building a flow based on an event 

Steps to Reproduce

  • Generate an Event payload with a MetricName that does not already exist and in the properties section add a custom date property with a valid formatted datetime string

    {
        "data": {
            "attributes": {
                "metric": {
                    "data": {
                        "attributes": {
                            "name": "Order Shipped"
                        },
                        "type": "metric"
                    }
                },
                "profile": {
                    "data": {
                        "attributes": {
                            "email": "384258@bayphoto-dev-test.com",
                            "external_id": "384258",
                            "first_name": "Test Customer"
                        },
                        "type": "profile"
                    }
                },
                "properties": {
                    "CustomerID": "384258",
                    "OnlineOrderID": "TESTORDER",
                    "ShipmentDate": "2024-01-18T18:01:30Z",
                    "TrackingNumber": "123456789"
                },
                "time": "2024-01-18T18:01:30Z",
                "unique_id": "TESTORDER-ORDER_SHIPPED-2024-01-18"
            },
            "type": "event"
        }
    }
  • POST the Event payload to the CreateEvents API endpoint

  • Inspect and verify the newly posted Event in the associated Metric Activity Log. Confirm the custom date property is recognized

  • Navigate to Flows

  • Click ‘Create flow’ button → Click ‘Create From Scratch’ →  Name and create the flow 

  • Click ‘Your metrics’ →  Click API → Click your newly generated Metric

  • Click ‘Add’ Trigger filter button → Click ‘Add trigger filter’ button

  • Click the first dropdown and confirm the custom date property is missing

Workaround

  • Take an existing Event JSON payload and set the CustomDate property to null. Also give the event a different unique_id value so that it does not get ignored when posting
    {
        "data": {
            "attributes": {
                "metric": {
                    "data": {
                        "attributes": {
                            "name": "Order Shipped"
                        },
                        "type": "metric"
                    }
                },
                "profile": {
                    "data": {
                        "attributes": {
                            "email": "384258@bayphoto-dev-test.com",
                            "external_id": "384258",
                            "first_name": "Test Customer"
                        },
                        "type": "profile"
                    }
                },
                "properties": {
                    "CustomerID": "384258",
                    "OnlineOrderID": "TESTORDER",
                    "ShipmentDate": null,
                    "TrackingNumber": "123456789"
                },
                "time": "2024-01-19T18:01:30Z",
                "unique_id": "TESTORDER-ORDER_SHIPPED-2024-01-19"
            },
            "type": "event"
        }
    }
  • Navigate back to/ Reload the Flow builder Trigger filter section
  • Confirm the custom date property now exists

     

Best answer by Brian Turcotte

Hi @garyravago!

At this time, date properties are not filterable in segments and flows. The reason it works when you set the property to null is because Klaviyo recognizes null as a string data type.

 

That said, this is a widely requested feature, so I’ll update the thread in the future if anything changes.

 

Best,

Brian

View original
Did this topic or the replies in the thread help you find an answer to your question?

3 replies

Brian Turcotte
Forum|alt.badge.img+37

Hi @garyravago!

I’m going to check on this with Engineering and I’ll update the thread ASAP!

Best,

Brian


garyravago
Contributor I
Forum|alt.badge.img+2
  • Author
  • Contributor I
  • 1 reply
  • January 22, 2024

Thanks Brian. I also submitted a support ticket for additional visiblity.

 

Gary


Brian Turcotte
Forum|alt.badge.img+37
  • Klaviyo Alum
  • 1393 replies
  • Answer
  • January 23, 2024

Hi @garyravago!

At this time, date properties are not filterable in segments and flows. The reason it works when you set the property to null is because Klaviyo recognizes null as a string data type.

 

That said, this is a widely requested feature, so I’ll update the thread in the future if anything changes.

 

Best,

Brian