logo
Desarrollo
Buscar
User Overview

User Overview

A user refers to an end user who interacts with an Agent. GPTBots enables developers to assign unique identity IDs to different users. Using this user ID (UserId), user identities can be linked across various channels, supporting cross-channel identity unification, business queries via Tools, and management of user attributes and chat histories.

Definitions

User

A user is an end user who interacts with an Agent.

User ID (user_id)

A unique identifier assigned to end users by enterprise developers. Through the API, developers can set a UserId for an anonymous_id. For usage scenarios and advanced applications of UserId, see Set User ID.

  • The user_id takes precedence over the anonymous_id.
  • Multiple anonymous_id values can be associated with a single user_id simultaneously.

Anonymous ID (anonymous_id)

When users interact with an Agent via third-party platforms (such as Telegram, WhatsApp, LINE, etc.), GPTBots uses the unique identifier from that platform as the anonymous_id. For details on how anonymous IDs are generated, see [Anonymous ID Generation Logic](## Anonymous ID Generation Logic).

Third-party Platforms

GPTBots currently supports Agent integration with various third-party platforms, including Intercom, Webchat, LiveChat, Telegram, WhatsApp, and more.

Conversation ID (conversation_id)

The conversation ID (conversation_id) is a unique identifier generated based on the Agent, conversation type, and user_id (or anonymous_id). A conversationID serves as the smallest unit for isolating different business scenarios and typically contains multiple message IDs.

  • conversationID automatically expires after 60 minutes, except for those generated via the API channel, which do not expire.
  • When a conversationID expires on third-party platforms and widget channels, a new conversationID is generated to start a new conversation.

Message ID (message_id)

The message ID, or messageID, identifies a single message exchange between an Agent and a user, representing the smallest unit of conversation.

  • messageID is generated by the GPTBots platform and cannot be customized by developers.
  • messageID belongs to a conversationID, with one conversationID typically containing multiple messageIDs.

Conversation Type

Conversation Type (conversation_type) is used to identify the scenario in which a user initiates a conversation, such as Workspace-Workflow, WhatsApp, API, Workspace-Search, etc.

Conversation ID Generation Logic

When users initiate conversations with an Agent through third-party platforms, the system generates an anonymous_id based on the user's platform and automatically creates a conversationID from this anonymous_id to contain one round of dialogue between the user and Agent.

  • When using the API, developers must first generate a conversationID and pass it as a parameter before starting a conversation with an Agent.
  • For non-API channels, GPTBots automatically generates the conversationID. The specific business process is illustrated below:
    alt text

Anonymous ID Value Logic

Source Platform Anonymous ID Logic Corresponding Platform Field Description
Telegram Telegram User ID tg_user_id Unique numeric identifier for a Telegram user.
Telegram Group Chat Telegram chatID + Telegram User ID tg_chat_id + tg_user_id Combination of group chat session ID and user ID, uniquely identifying user interactions within a group.
LINE LINE User ID line_user_id Unique identifier for a LINE user.
LiveChat LiveChat threadId lc_thread_id Unique identifier for a LiveChat conversation thread.
Slack Slack User ID slack_user_id Unique identifier for a Slack user.
Slack Public Channel Slack (teamId + channelId + userId) slack_team_id + slack_channel_id + slack_user_id Combination of Slack team ID, public channel ID, and user ID, uniquely identifying users in public channels.
Intercom Intercom User ID intercom_user_id Unique identifier for an Intercom user.
DingTalk DingTalk senderId dd_user_id Unique identifier for a DingTalk user.
DingTalk Group Chat DingTalk (senderId + group chat ID) dd_chat_id + dd_senderId Combination of sender's unique ID and group chat ID, used to distinguish users in group chats.
WhatsApp by Meta WhatsApp User ID wa_user_id Unique identifier for a WhatsApp user, usually based on the user's phone number (e.g., international format with @c.us suffix).
WhatsApp by EngageLab WhatsApp User ID wa_user_id Unique identifier for a WhatsApp user, usually based on the user's phone number (e.g., international format with @c.us suffix).
Discord Discord User ID discord_user_id Unique numeric identifier for a Discord user.
Instagram Instagram senderId instagram_user_id Unique identifier assigned to the sender (Instagram user) by Instagram.
Facebook senderId facebook_user_id Unique identifier assigned to the sender (Facebook user) by Facebook.
Sobot Sobot memberId sobot_memberId Unique Sobot user ID.
Sobot Group Chat @User Sobot (guildId + channelId + memberId) guildId + channelId + memberId Combination of guild ID, channel ID, and member ID, uniquely identifying user interactions in Sobot group chats.
Intercom senderId intercom_senderId Intercom user ID.
Zoho Sales IQ Zoho conversationId zoho_sales_iq_conversationId Unique conversation identifier in Zoho Sales IQ.
WeChat Customer Service WeChat Customer Service User ID wechat_customer_service_user_id Unique user ID for WeChat Customer Service.

Anonymous ID Logic for Built-in GPTBots Channels

Integration Channel Anonymous ID Logic Description
API No anonymous ID Users can only generate conversation IDs using user_id.
Workspace anonymous_id = Browser Fingerprint ID Random ID generated based on browser fingerprint. A new ID may be generated when clearing cache or using incognito mode.
Share anonymous_id = Browser Fingerprint ID Random ID generated based on browser fingerprint. A new ID may be generated when clearing cache or using incognito mode.
Iframe anonymous_id = Browser Fingerprint ID Random ID generated based on browser fingerprint. A new ID may be generated when clearing cache or using incognito mode.
AI Search anonymous_id = Browser Fingerprint ID Random ID generated based on browser fingerprint. A new ID may be generated when clearing cache or using incognito mode.
AI Search (iframe) anonymous_id = Browser Fingerprint ID Random ID generated based on browser fingerprint. A new ID may be generated when clearing cache or using incognito mode.
Widget anonymous_id = Browser Fingerprint ID Random ID generated based on browser fingerprint. A new ID may be generated when clearing cache or using incognito mode.

When a user is logged in to the GPTBots platform, the system automatically sets their GPTBots Account ID as the user_id and associates it with the anonymous_id (browser fingerprint ID).

Conversation Types

Conversation Type (conversation_type) is used to identify the scenario in which a user initiates a conversation. You can use the conversation_type field value to filter log data by scenario.

Conversation Type Field Value Description
All ALL All conversation types
Workspace-Search C Conversations generated by Workspace Agent
Workspace-Agent CHAT Conversations generated by Workspace Search
Workspace-Workflow C_WORKFLOW Conversations generated by Workspace Workflow
Workspace-Apps C_APPS Conversations generated by various AI apps in Workspace Market
API API Conversations generated via API calls
Iframe EMBED Conversations generated via Iframe
Widget WIDGET Conversations generated via Widget
AI Search AI_SEARCH Conversations generated via AI Search
Share SHARE Conversations generated via Share
WhatsApp by Meta WHATSAPP_META Conversations generated via WhatsApp by Meta
WhatsApp by EngageLab WHATSAPP_ENGAGELAB Conversations generated via WhatsApp by EngageLab
DingTalk Bot DINGTALK Conversations generated via DingTalk Bot
Discord DISCORD Conversations generated via Discord
Slack SLACK Conversations generated via Slack
Zapier ZAPIER Conversations generated via Zapier
WeChat Customer Service WXKF Conversations generated via WeChat Customer Service
Telegram TELEGRAM Conversations generated via Telegram
LiveChat LIVECHAT Conversations generated via LiveChat
LINE LINE Conversations generated via LINE. If there are multiple LINE channels, there will be multiple channel options.
Instagram INSTAGRAM Conversations generated via Instagram
Facebook FACEBOOK Conversations generated via Facebook
Sobot SO_BOT Conversations generated via Sobot
Zoho Sales IQ ZOHO_SALES_IQ Conversations generated via Zoho Sales IQ
Intercom INTERCOM Conversations generated via Intercom

⚠️ Note: The field values in the table can be used as filter conditions when using the Get Conversation List API.
For third-party platforms like LINE and Telegram that support multiple channels, the "Agent-Log" allows filtering by secondary conversation types.
The field values in the table can also be used as the value for the anonymous_id_source field in the Update User ID API.