Nach Benutzerattributen filtern

Antworten nach den Attributen der Teilnehmenden filtern und Attribute mit ausgeben.

Beim Abruf der Antworten kannst du nach den Benutzerattributen filtern, die du über identify() an PollHero übermittelt hast, und diese Attribute mit ausgeben lassen.

Attribute ausgeben

Mit attributes[] legst du fest, welche Attribute in respondent.attributes zurückkommen, höchstens 50:

curl -G "https://app.poll-hero.com/api/v1/surveys/{survey_id}/responses" \
  -H "Authorization: Bearer ph_xxxxxxxx" \
  --data-urlencode "attributes[]=email" \
  --data-urlencode "attributes[]=customer_type"
"respondent": {
  "id": "b1f4c2d0-7a35-4c1e-8f7b-2f6f0e1f9a44",
  "attributes": [
    { "name": "email", "value": "customer@example.com" },
    { "name": "customer_type", "value": "new" }
  ]
}
  • Werte sind immer Strings, zum Beispiel "true" oder "1249.99".
  • Leere Attribute werden weggelassen.
  • Attribute, nach denen du filterst, werden automatisch mit ausgegeben.

Filter

Ein Filter hat die Form filter[<Attribut>][<Operator>]=<Wert>:

BeispielBedeutung
filter[customer_type]=newKurzform für [eq]
filter[total_purchases][gte]=3mindestens 3 Käufe
filter[has_subscription][eq]=trueCustom Attribute
filter[country][in]=DE,AT,CHeiner der Werte
filter[email][exists]=falseohne E-Mail-Adresse
filter[plan->name]=proverschachteltes Custom Attribute
  • Mehrere Filter werden mit UND verknüpft. Pro Anfrage sind höchstens 10 Bedingungen möglich. filter[x][gte]=1&filter[x][lte]=5 zählt als zwei.
  • Verneinte Operatoren (ne, not_contains, exists=false) treffen auch auf Teilnehmende zu, die nie identifiziert wurden.
  • filter[country] filtert nach dem Attribut country aus identify(), nicht nach dem Land in der Antwort.

Attributnamen

ArtNamen
Feste Attributeemail, customer_id, customer_type, total_revenue, total_purchases, total_aov, country, language
Custom AttributesSchlüssel der Daten, die du an identify() übergibst. Verschachtelte Schlüssel trennst du mit ->, z. B. plan->name.

Operatoren

OperatorBedeutung
eqgleich (Standard ohne Operator)
neungleich
containsenthält den Text
not_containsenthält den Text nicht
ineiner der Werte, durch Komma getrennt
gt, gtegrößer als, größer oder gleich
lt, ltekleiner als, kleiner oder gleich
existstrue: Attribut ist gesetzt. false: Attribut fehlt.

Bei Custom Attributes werden true und false als Wahrheitswerte und Zahlen als Zahlen verglichen. Feste Textattribute wie email oder country werden als Text verglichen.

Seiten mit Filtern

Mit Attributfiltern prüft die API pro Anfrage nur eine begrenzte Zahl von Antworten. Eine Seite kann deshalb weniger Einträge enthalten als angefragt, oder gar keine, obwohl es weitere Treffer gibt. Entscheidend ist nur links.next: Blättere weiter, solange es nicht null ist.

Auf dieser Seite