Skip to content

Last updated at: 2025-12-01

User Overview

A user refers to the end-user who initiates a conversation with an Agent or Workflow. Altabots allows developers to assign a unique identifier (user_id) to each user. This identifier enables user identity association across different channels, cross-channel identity merging, business queries via Tools, and management of user attributes and chat history.

User CDP information is stored under each Agent/Workflow. Data belonging to the same user is isolated across different Agents or Workflows.

User System

The anonymous_id is automatically generated by the Altabots system based on the user’s source platform. Assigning a user_id is optional, and developers may set it based on business scenarios to enable cross-channel identity association and shared user attributes.

Definitions

User

An end-user who interacts and holds conversations with an Agent.

User ID (user_id)

A unique identifier assigned by enterprise developers to an end-user. The API allows developers to bind a user_id to an existing anonymous_id. For usage scenarios and advanced practices, refer to Setting User ID.

  • user_id has higher priority than anonymous_id
  • multiple anonymous_ids may belong to the same user_id

Anonymous ID (anonymous_id)

When users interact with an Agent through third-party platforms such as Telegram, Instagram or LINE, Altabots uses the platform’s native unique identifier as the anonymous_id. For generation rules, refer to Anonymous ID Value Logic.

Third-party Platforms

Altabots currently supports integration with many platforms, such as Line, Instagram, Telegram, and more.

Conversation ID (conversation_id)

A unique identifier generated based on the Agent, conversation type, and user_id (or anonymous_id). A conversation_id is the smallest isolated unit in different business scenarios (usually containing multiple message_ids).

Auto-expiration: 24 hr

  • API-created conversation_ids do not expire
  • 3rd-party channels or widget-created conversation_ids regenerate after expiration

Message ID (message_id)

  • A unique identifier for a single message exchanged between the Agent and the user.
  • Generated by Altabots (cannot be customized).
  • A conversation_id contains multiple message_ids.

Conversation Type

Identifies the scenario through which a user initiates a conversation—for example: Workspace-Workflow, LINE, API, Workspace-Search, etc.

How conversation_id is generated

When a user initiates a conversation with an Agent through a third-party platform, Altabots generates an anonymous_id based on the platform. The system then automatically creates a conversation_id to hold one full conversation session.

For API usage, developers must manually create a conversation_id before interacting with an Agent/Workflow.

For all non-API channels, Altabots automatically generates the conversation_id.

Anonymous ID Value Logic

Source Platform Value Logic Description
Telegram anonymous_id = tg_user_id Telegram user unique identifier
Telegram Group anonymous_id = tg_chat_id + tg_user_id Group ID + User ID
LINE anonymous_id = line_user_id Unique LINE user identifier
Slack anonymous_id = slack_user_id Slack user ID
Slack Public Channel anonymous_id = slack_team_id + slack_channel_id + slack_user_id Unique composite ID in public channels
Discord anonymous_id = discord_user_id Discord user numeric identifier
Instagram anonymous_id = instagram_user_id Instagram sender ID
Facebook anonymous_id = facebook_user_id Facebook sender ID

Altabots Built-in Channel Anonymous ID Logic

Integration Channel Anonymous ID Logic Description
API None Only user_id generates conversation_id
Workspace anonymous_id = browser fingerprint New ID possible after clearing cache/incognito
Share Same as above -
Iframe Same as above -
AI Search Same as above -
AI Search (iframe) Same as above -
Widget Same as above -

When a user logs into Altabots, the system automatically assigns their Altabots account ID as user_id and binds it to the anonymous_id (browser fingerprint).

Conversation Type & Source ID

conversation_type identifies the channel through which a user initiates a conversation (e.g., Workspace, API, Iframe, LINE). source_id identifies sub-channel types such as different LINE Channels or Telegram Bot IDs.

Conversation Type Table

Type conversation_type Notes
All ALL All integrated channels
Workspace-Search C Workspace-Agent
Workspace-Agent CHAT Workspace-Search
Workspace-Workflow C_WORKFLOW Workflow conversations
API API API conversations
Iframe EMBED Iframe conversations
Widget WIDGET Widget conversations
AI Search AI_SEARCH Search feature
Share SHARE Shared link conversations
Discord DISCORD -
Slack SLACK -
Telegram TELEGRAM -
LINE LINE Multiple channels supported
Instagram INSTAGRAM -
Facebook FACEBOOK -

⚠️ Note: These values can be used as filters when fetching conversation lists via API. Platforms like LINE and Telegram support multiple sub-channels; therefore, “Agent Logs” supports two-level filtering.