List the conversion goals of a campaign or journey
GET/v1/conversion-goals
Requires an API key with the conversion-goals:read scope. About keys and scopes
Works with integration, agent and partner keys.
Pass exactly one of campaignId or journeyId. Cursor-paginated: pass meta.pagination.nextCursor back as cursor until it is null.
Query parameters
limitintegeroptionalHow many items a page holds: 1 to 100, 20 by default.
min > 0 · max 100 · default
20cursorstringoptionalWhere the page starts: the previous page's
meta.pagination.nextCursor. Omit it for the first page, and send the same filters with it.1–2,048 characters
campaignIdstringoptionalThe campaign's goals.
uuid
journeyIdstringoptionalThe journey's goals.
uuid
Header parameters
Kirora-WorkspacestringoptionalPartner keys only: the child workspace to act in, by the external id the partner gave it. Without it, a partner key acts in its own workspace. Any other key that sends it is refused with 403, and an unknown workspace is 404.
pattern
^[A-Za-z0-9._:-]{1,128}$
Returns
Returns 200 OK with a list of ConversionGoal objects in data, and the next page's cursor in meta (see pagination). Otherwise returns an error; Errors lists every code and which to retry.
idstringrequireduuid
campaignIdstring | nullrequiredThe campaign it measures.
uuid
journeyIdstring | nullrequiredThe journey it measures.
uuid
eventNamestringrequiredThe event that counts as a conversion.
whereobject[] | nullrequiredProperty conditions the event must meet;
nullcounts every one.at least 1 item · at most 5 items
3 child attributes
propertystringrequiredThe event property key.
1–64 characters
operatorstringrequirednotEqualsalso matches an event without the property.equalsandnotEqualscompare the property as text, ignoring case and accents.one of
equals,notEquals,gt,gte,lt,ltevaluestringrequiredWhat to compare with, as text (
"pro","true"); a number ("50") forgt,gte,ltandlte.up to 255 characters
occurrencestring | nullrequiredfirst: only the contact's first event of this name;repeat: any after it;null: every one.one of
first,repeatattributionWindowDurationrequiredHow long after a message the event still counts, in days.
2 child attributes
valueintegerrequiredmin > 0
unitstringrequiredone of
seconds,minutes,hours,days
windowChangedAtstring | nullrequiredWhen the attribution window was last changed;
nullif never. A change applies to events processed after it: conversions counted before keep the window they were counted under.date-time
valuePropertystring | nullrequiredThe event property summed as revenue;
nullcounts no value.currencystring | nullrequiredThe revenue's currency, if named.
countedFromstringrequiredThe earliest events the goal can count: when it was created, the start of the event history then retained. Events from then on are matched to the sends before them, those tracked before the goal existed included; older ones are gone.
date-time
createdAtstringrequireddate-time