Skip to main content
Question

filter on can_receive_email_marketing

  • July 23, 2026
  • 2 replies
  • 17 views

Forum|alt.badge.img

I’m trying to retrieve all profile that don’t have email suppression. However, every time I try to use can_receive_email_marketing in my filter, I get this error message:

esponse Body: {"errors":[{"id":"7c8b94ee-c860-4512-ae43-3325718ef6f6","status":400,"code":"invalid","title":"Invalid input.","detail":"'can_receive_email_marketing' is not a filterable field for this resource.  The filterable fields on this resource are: _kx, anonymous_id, created, email, external_id, id, phone_number, subscriptions.email.marketing.list_suppressions.list_id, subscriptions.email.marketing.list_suppressions.reason, subscriptions.email.marketing.list_suppressions.timestamp, subscriptions.email.marketing.suppression.reason, subscriptions.email.marketing.suppression.timestamp, updated, whatsapp_bsuid.","source":{"parameter":"filter"},"links":{},"meta":{}}]}
 

I was able to get a list of profiles that have email suppression with this:

https://a.klaviyo.com/api/profiles/?fields[profile]=email&additional-fields[profile]=subscriptions&filter=greater-or-equal(subscriptions.email.marketing.suppression.timestamp,2019-01-01T00:00:00Z)&page[size]=100

How do I get the rest of the profiles?

2 replies

Forum|alt.badge.img+7
  • Klaviyo Employee
  • July 23, 2026

Your best bet is to first create a segment of all active profiles:
 


Then call Get Profiles for Segment (https://developers.klaviyo.com/en/reference/get_profiles_for_segment) to get all the profiles in this segment.


KeviSunshine
Expert Problem Solver III
Forum|alt.badge.img+9
  • Expert Problem Solver III
  • July 23, 2026

Hey ​@bpgraves,

I’m testing the same call (using the latest revision–2026-07-15) and seeing the same result as you: 

"detail": "'can_receive_email_marketing' is not a filterable field for this resource.  The filterable fields on this resource are: _kx, anonymous_id, created, email, external_id, id, phone_number, subscriptions.email.marketing.list_suppressions.list_id, subscriptions.email.marketing.list_suppressions.reason, subscriptions.email.marketing.list_suppressions.timestamp, subscriptions.email.marketing.suppression.reason, subscriptions.email.marketing.suppression.timestamp, updated, whatsapp_bsuid.",

So first question– to the Klaviyo team, is it possible to add `can_receive_email_marketing` as a filterable property on a GET Profiles call? That seems like a common field to query for (and not an onerous query).

 

Second, in the meantime, I can think of some alternative ways of achieving this…

  • Create a segment for all profiles that can receive email marketing– that’s the only parameter on the segment. Then use the segments API to query for all profiles within that segment.
  • Concurrently pull all profiles and all suppressed profiles and de-dupe them on your side– the profiles that aren’t suppressed are the profiles you can email (much more onerous, requires pulling every single profile).

 

Hope that helps,

Kevin.