Persona SDK Overview

Understand what Persona returns, how the flow works, and how consent controls the response.

Updated 19 March 2026
personamind-readingpersonalizationapi

Persona SDK Overview

Persona gives your app user-approved personality and preference signals without asking you to build your own data collection pipeline.

What Persona helps you do

Show one button, let the user connect their data, ask for consent, and receive structured outputs that your product can use for personalization.

What Persona returns

TypeWhat you receive
Traitspositive_traits, traits_to_improve, user_summary, top_traits_explanation, archetype, and nudges
Inference scores0-1 scores that estimate how likely the user is to like specific items you send
Connected platformsThe data sources that contributed to the response
MetadataRoute-specific metadata such as coverage, connected sources, and training/inference details
Optional LLM summariesRecent LLM interaction summaries when the user approved that access

How the flow works

  1. You initialize the SDK with your developer API key.
  2. The user opens the Onairos flow and signs in.
  3. The user connects data sources such as YouTube, Reddit, Gmail, or LLM apps.
  4. The user approves your request for traits, inference, or both.
  5. Your app receives a token, an API URL, and optionally the fetched API response.

How traits and scores are produced

  • Trait generation samples user activity across connected platforms and outputs a structured profile with summaries, archetype, nudges, and supporting metadata.
  • MIND1 model inference combines title, topic, and image embeddings to produce 0-1 affinity scores for the items you send for prediction. This is the per-user preference model trained on the user's positive and negative interaction data.

That means your app can request traits only, inference only, or a combined response. It is normal for different products in the same company to use different Persona routes depending on what they are building.

Connector customization

  • Web: Use allowedPlatforms to filter the default connector list, or rawMemoriesOnly to show only LLM connectors.
  • React Native: Use allowedPlatforms to control which connectors appear and in what order, and recommendedPlatforms to add the Highly Recommended badge.
  • Flutter: The current wrapper uses its built-in connector set. Do not rely on preferredPlatform to reorder the current onboarding UI.
  • Swift: Use OnairosConfig.platforms to set visible connectors and order, and recommendedPlatforms to add badges.
Migration note

Use webpageName, onComplete, and autoFetch on web; use AppName, PortalHost, and onComplete on React Native; use Onairos with onResolved on Flutter; and use OnairosConfig plus createConnectButton on Swift. Do not rely on legacy auto, priorityPlatform, or preferredPlatform to drive connector ordering in current integrations.

Why the response shape can change

Onairos chooses the downstream response flow based on what the user approved. For example:

  • If the user approves traits only, you get a traits response.
  • If the user approves inference only, you get InferenceResult.output.
  • If the user approves both, you get a combined response with traits and inference data.

Use the returned result.apiUrl for the next request. Persona is one SDK entry point, but it can return different downstream API URLs depending on the consent state and requested outputs.

Get Started