Skip to content

ProfileΒΆ

The Profile Object is a JSON object that serves as the long-term AI Agent memory. The Profile object stores persistent information about the user.

Each user who connects to Cognigy.AI has a unique Contact Profile. The Contact Profile uses the Profile object to store user data in Cognigy.AI. When the user disconnects from Cognigy.AI, the Contact Profile retains the data and retrieves it upon reconnection with the same user ID. This approach allows multichannel conversations to take place by accessing the stored Contact Profile when the user connects through a different channel.

With Nodes, such as the Say or Question Nodes, you can access the Profile object and retrieve information.

LimitationsΒΆ

  • You can store up to 1.5 MB in the Profile object. For dedicated SaaS and on-premises installations, you can configure the limit using the MAX_MEMORY_OBJECT_SIZE variable in the values.yaml file. Increasing the object size could lead to performance issues.

Working with the Profile ObjectΒΆ

You can view the Profile object by navigating to Info > Profile in the Interaction Panel. You can copy the exact JSON path of a Profile object value by right-clicking it and selecting Copy JSON Path.

You can edit a Contact Profile and the respective data with the Cognigy.AI API to change the data available in the Profile object.

Managing Information in the Profile ObjectΒΆ

The data in the Profile object corresponds to the Contact Profile data, which you can manage in Settings > Contact Profiles.

Accessing the Profile objectΒΆ

Nodes can dynamically access Profile properties with CognigyScript, for example, {{profile.property}}, or Tokens. The CognigyScript expression used to access the Profile object follows the dot notation property.child.child.

You can also use Analytics Nodes, such as the Add Memory Node, to store data in the Contact Profile.

Example Profile ObjectΒΆ

Consider the following Profile object:

{
  "firstname": "Bastian",
  "lastname": "Bux",
  "email": "b.bux@neverendingstory.com",
  "age": 30
}
  • {{profile.firstname}} returns Bastian.
  • {{profile.lastname}} returns Bux.