Mga tao at cohort
Galing sa mga tao ang mga event, at mula sa ipinapadala nila itinatayo ang directory: nagiging tao ang anonymous id sa sandaling pangalanan ito ng identify call, ganoon din dumarating ang mga grupo, at ang cohort ay naka-save na hanay ng mga tao na tinukoy ng ugali o kalagayan.
At a glance
- Identity
identifynames an anonymous id; write-once- Traits
$-prefixed traits are reserved; the rest are yours- Groups
group(type, key)rides the same pipeline- Cohorts
- Behavioural clauses are swept; state clauses are live; a pasted or kept list is static, never re-evaluated
- Auth
- Project key to send, access token to read
- May $ prefix ang mga nakareserbang trait; nananatiling custom ang custom property na pinangalanang email.
- Isang beses lang isinusulat ang pagkakakilanlan: hindi kailanman gumagalaw ang sandaling unang napangalanan ang isang tao.
- Sinasadya ang pagsasama: dalawang id ang nagiging isang tao kapag hiniling lamang, hindi kailanman sa hula.
- Pangwakas ang pagbura: isang hiling ang bumubura sa isang tao kasama ang kanyang profile, mga event, recording, usapan at bawat alias, at walang itinatagong tala ang natapos na trabaho kung sino ang binura.
Paano ito gumagana
Every event carries a distinct id, and the directory folds them into people: first seen, last seen, event and session counts, and the properties their identifying events carried. Identification is an event like any other, which is why an identify accepted with a 202 is accepted for processing rather than instantly visible. A cohort then names a set of these people: behavioural clauses count events over a window and are re-evaluated by a sweep that stamps when it ran; state clauses compare current attributes and are answered live. The same cohort scopes a workbench question, targets a campaign and gates a workflow trigger.
Saan ito maaabot
| Surface | Operation |
|---|---|
| REST | POST /v1/identify · POST /v1/group (project key, accepted for processing) · POST /v1/projects/{projectId}/erasures · GET /v1/projects/{projectId}/erasures/{erasureId} (access token) |
| GraphQL | people, person, peopleGroups, cohorts, cohort, cohortMembers, cohortMemberCount, endUserErasure queries · mergePeople, erasePerson, createCohort, updateCohort, setCohortActive, deleteCohort, createStaticCohort, createCohortFromResult, addCohortMembers, removeCohortMembers mutations |
| Realtime | None of its own: the directory updates as events are processed |
| MCP | prodantix.people.erase · prodantix.people.erasure |
Halimbawa
curl "https://eu.api.prodantix.com/v1/identify" \
-H "Authorization: Bearer $PRODANTIX_KEY" \
-H "Content-Type: application/json" \
-d '{ "distinct_id": "u_8f3a", "properties": { "$email": "ada@example.com", "plan": "pro" } }'prodantix.identify('u_8f3a', {
traits: { email: 'ada@example.com' },
set: { plan: 'pro' },
});
prodantix.group('team', 'acme', { tier: 'scale' });prodantix.identify('u_8f3a',
traits: PersonTraits(email: 'ada@example.com'),
set: {'plan': 'pro'});prodantix.identify(
"u_8f3a",
traits=PersonTraits(email="ada@example.com"),
set_props={"plan": "pro"},
)The directory is browsed on the People screen and cohorts are authored on Cohorts.