sdk.fetch(context_mode="conversation-summary", include_profile=True); reach for get_profile when you want the profile on its own: dashboardless debugging, your own tooling, or a quick lookup.
Profiles are on by default. See the User Profile guide for defining your attribute schema (or opting out per instance). For a user whose profile has not been built yet, there is nothing to return and the call raises
ContextNotFoundError.Parameters
str
required
Caller identity (e.g. an E.164 phone number).
str
Required on B2B (strict-isolation) instances so the profile resolves to the right tenant; omit on B2C.
Returns
AUserProfileModel.
Dict[str, ProfileAttributeModel]
Critical attributes keyed by name. Each
ProfileAttributeModel carries value, confidence, updated_at, source_conversation_id (and .raw).Optional[str]
A short free-text summary of the caller.
Dict[str, Any]
Stable facts worth keeping that match no configured attribute.
Dict[str, Any]
Document metadata (
_meta): schema, version, updated_at, etc..raw exposes the full untyped profile document.
Example
Raises
ContextNotFoundError: no profile exists for this user (HTTP 404).AuthenticationError: when the API key is missing or invalid.
See also
- context.fetch (conversation-summary mode)
- conversation.ingest_transcript and memories.create: any ingestion that creates memories for a user refreshes their profile; an end-of-call transcript push is one example.