--- title: "Two-Way Conversation Report" slug: "two-way-conversation-report" updated: 2026-02-17T14:34:14Z published: 2026-02-17T14:34:14Z canonical: "docs.relaynetwork.com/two-way-conversation-report" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.relaynetwork.com/llms.txt > Use this file to discover all available pages before exploring further. # Two-Way Conversation Report ### **Two-way Conversation Report** **Purpose** A flat file option for ingesting two-way activity over a specified time. This report is available only in the Production Environment. **Included Events** - twoway.agent_ping - twoway.agent_invite - twoway.channel_closed - twoway_webhook.customer_message_sent - twoway_webhook.agent_message_sent - twoway_webhook.system_message_sent - twoway_webhook.member_added - twoway_webhook.member_removed - twoway_webhook.channel_added **Expected Frequency:** The default frequency is daily. Clients may update the frequency to weekly or monthly on the Report Configuration screen within CX Builder. See [Configuring & Updating the Reports](/v1/docs/configuring-updating-the-reports#enablingediting-reports) Monthly reports are generated on the first weekend of each month or the following weekend. ### **Standard Report File Properties: Two Way Activity and Conversation Events** | Property | Data Type | Length | Primary Key | Description | | --- | --- | --- | --- | --- | | agent_email | string | 100 | No | E-mail address of the CX Portal user who is acting like an agent. | | agent_first_name | string | 100 | No | CX Portal User’s (Agent's) First Name. | | agent_last_name | string | 100 | No | CX Portal User's (Agent's) Last Name. | | agent_roles | string | 1024 | No | CX Portal User’s (Agent's) Role. The two roles (if available) in CX builder for both Two way messaging and CX Portal Access. | | agent_control_group | string | 100 | No | CX Portal User’s (Agent's) Assigned Control Group. | | ccid | string | 255 | Yes | The unique identifier of the Customer. | | customer_first_name | string | 100 | No | The first name of the Customer or Patient. | | customer_last_name | string | 100 | No | The last name of the Customer or Patient. | | product_group_id | string | 255 | No | The current product group identifier of the Customer. An account is associated to one and only one product group at a time. | | event_type | string | 100 | No | Identifies the main event type category. | | event_subtype | string | 100 | No | Identifies the subtype of the event. | | event_time | string | | Yes | Contains the date and time of when the event occurred. The data is in ISO 8601 format. | | control_tag | string | 100 | No | Control tag is an attribute of the two way channel, and is used to control CX Portal Users view of messages. | | twoway_channel_sid | string | 100 | No | Unique Identifier of the Two-way Channel. | | twoway_body | string | 5000 | No | Conversational text between CX Portal User and Customer, may be empty depending on the Communication Type. | | english_version | string | 5000 | No | | | translation_language_code | string | 3 | No | The language code corresponding to the translation. If translations were not used, this field will be null. If the message was translated into Spanish, ES will be present. | | conversation_id | string | 256 | No | A unique identifier for the conversation based on when a channel is opened or closed. | | closed_reason | string | 256 | No | A preconfigured category for a conversation to be closed. | | closed_additional_information | string | 1024 | No | A free-text field for agents to add more information about why a conversation was closed. | | after_hours_flag | boolean | | No | A flag indicating whether the event occurred after-hours based on client-configured after-hours settings. | | sender_type | string | 50 | No | Text indicating the type of sender for this event. Possible values are "agent", "customer", "system". | | conversation_status | string | 50 | No | The state of the conversation at the time of this event. | | message_index | integer | 100 | No | Represents the order of the message within a conversation. Can be used to match `message_updated` events to the event being updated. Does not always increment by 1 and may start at numbers higher than 0, but always ascends. | | english_translation | string | 5000 | No | The English version of both agent and customer messages when translations are used in the conversation. | | translation_language_code | string | 3 | No | The language code corresponding to the translation. If translations were not used, this field will be null. If the message was translated into Spanish, ES will be present. |