20-minute walkthrough with 2–3 personalized examples on your real pages.
Email, chat, or 24/7 phone support included on every paid plan.
One visitor profile behind all of it. Anything you build in one place is available in the others.
One authenticated API covering profiles, lists, catalogs, campaigns, decisions and reporting — plus server-side SDKs for Node, PHP and Python, and native SDKs for Android and iOS.
REST API · PERSONYZE
Server-rendered frameworks, native apps, kiosk screens, and anything behind a login all need the decision before the markup exists. The same audiences and the same campaigns are reachable from your own code, in one call, without waiting for a tag to load.
Visitor profiles and custom columns, user lists and membership, ranked interests, product and content catalogs, campaigns, actions, placeholders, goals, events, forms and aggregated results.
Node, PHP and Python ports of one endpoint, with a shared written contract so all three behave identically — sessions, decisions, events and purchases in a single call.
Android and iOS handle the session lifecycle, report navigation and interactions, and render returned content into a view you position.
The whole decision, retries included, is bounded at 1000 ms. It does not get to hold your page open.
1000 ms
A timeout, a connection error, a 5xx or simply no matching campaign all resolve to an empty decision set. Your page renders either way.
A 400 or 401 raises, even from the decision call — because a bad key is a bug, not weather.
400
401
api
The API key is in your account settings on every plan, including the free one.