Skip to main content

Documentation Index

Fetch the complete documentation index at: https://chatbotx.io/docs/llms.txt

Use this file to discover all available pages before exploring further.

The Email feature allows you to turn any email address into a ChatbotX inbox. Incoming emails will be displayed as conversations, and your team can reply directly from ChatbotX using an SMTP connection to send notifications, order confirmations, documents, or automated email sequences.
Important note on Email Deliverability:
To ensure your emails are not marked as Spam and achieve the highest delivery rate, make sure you have configured domain authentication (SPF, DKIM, and DMARC) in your sending domain’s DNS manager before using it in a production environment.
If you do not have a dedicated SMTP provider yet, see the Emails configuration guide for recommended providers and connection string examples.
Below is a guide from basic to advanced for setting up and using the Email sending feature in ChatbotX.

Step 1: Get SMTP credentials from your provider

Depending on the Email service provider you are using, you will need the following basic information to connect with ChatbotX:
  • SMTP Host/Server
  • SMTP Port (Usually 465 for SSL or 587 for TLS)
  • SMTP Username (Usually your email address)
  • SMTP Password (App Password or API Key, not your main account login password)
Overview of popular SMTP Email service providers
Please expand (click) on your corresponding Email provider below to see how to get an App Password or SMTP Key.
1

Enable 2-Step Verification

Log in to your Google account, go to the Security section, and make sure you have turned on 2-Step Verification.
2

Create an App Password

Still in the Security section, find the App passwords section.
3

Get the password

Enter an app name (e.g., ChatbotX SMTP) and click Create. Google will provide you with a 16-letter string. This is your SMTP Password.
4

Connection parameters

  • Host: smtp.gmail.com
  • Port: 465 (SSL) or 587 (TLS)
  • Username: Your Gmail address.
See the official documentation for more details: Sign in with App Passwords - Google Account Help
1

Access security settings

Log in to your Microsoft account, go to Security > Advanced Security Options.
2

Create an App Password

Ensure Two-step verification is turned on. Then scroll down to the App passwords section and click Create a new app password.
3

Get the password

Save the newly created password. This is your SMTP Password.
4

Connection parameters

  • Host: smtp-mail.outlook.com (or smtp.office365.com for business accounts)
  • Port: 587 (TLS)
  • Username: Your Outlook/Office 365 email address.
See the official documentation for more details: Manage app passwords - Microsoft Support
1

Create an API Key

Log in to SendGrid, go to Settings > API Keys, and click Create API Key.
2

Assign permissions

Select Restricted Access, grant Mail Send > Full Access, and proceed to create.
3

Get the information

Copy the API Key string starting with SG.. This will be your SMTP Password.
4

Connection parameters

  • Host: smtp.sendgrid.net
  • Port: 465 (SSL) or 587 (TLS)
  • Username: apikey (Write exactly “apikey”, not your email).
See the official documentation for more details: Sending Email with SMTP - Twilio SendGrid Docs
1

Access SMTP Settings

In the AWS console, open the Amazon SES service, and navigate to SMTP Settings.
2

Create SMTP credentials

Click Create My SMTP Credentials. The system will create a new IAM user with permissions to send emails.
3

Get Username and Password

Download or immediately copy the provided SMTP Username and SMTP Password on the final screen.
4

Connection parameters

  • Host: (Depends on your Region, e.g., email-smtp.us-east-1.amazonaws.com)
  • Port: 465 or 587
  • Username: The newly created SMTP Username string.
  • Password: The newly created SMTP Password string.
See the official documentation for more details: Obtaining SMTP credentials - Amazon SES Developer Guide
1

Access SMTP & API

Log in to Brevo, click on your account name in the top right corner > SMTP & API.
2

Generate a new SMTP key

Switch to the SMTP tab, and click Generate a new SMTP key.
3

Get the password

Name the key and copy the newly generated key string.
4

Connection parameters

  • Host: smtp-relay.brevo.com
  • Port: 587
  • Username: Your Brevo login email.
  • Password: The newly created SMTP key string.
See the official documentation for more details: Set up Brevo SMTP - Brevo Help Center

Step 2: Create an Email Channel

1

Add a new Email channel

In ChatbotX, go to Settings → Channels → click Add SMTP.
Add a new email channel
2

Choose a Provider

Find and select your Email service provider from the dropdown list (e.g., Google (Gmail), Outlook, SendGrid, Amazon SES,…).
Choose SMTP provider
3

Enter SMTP connection details

Fill in the SMTP credentials obtained in Step 1. The fields include:
Enter SMTP connection details
FieldDescription
HostThe provider’s SMTP server (e.g., smtp.gmail.com)
PortThe SMTP connection port (usually 587 or 465)
UsernameSMTP login name (usually the email address)
PasswordApp Password or SMTP Key (not the main login password)
From AddressThe email address that will appear as the sender when customers receive the email (e.g., noreply@yourdomain.com)
4

Connect

Click Connect to finish the SMTP configuration setup.

Step 3: Request permission (Opt-In) and Collect Customer Email

Before you can send Emails to customers via ChatbotX Flow, you must have two elements: Storing their Email address and the Customer has agreed to receive emails (Email Opt-In).
1

Collect Email using Get User Data

Use the Get User Data block in the flow to ask for the customer’s email address. In the Reply Format section, select the Email format and save the result to an Output Custom Field (e.g., email field).
Get User Data block
2

Mark Email Opt-in

After the customer provides their email, you need to create an Action block.
  • Click the + sign and select Perform Action.
  • Click the newly created Action block, select Email Actions.
  • Select Opt In Email. This status is mandatory for the system to allow sending emails later.
Email Opt-in

Step 4: Set up automated Email sending in Flow

Once customers have agreed to receive emails, you can automatically send emails anywhere in the Flow.
1

Add Send Email Block

  • In the Flow workspace, click the + button (Add Block).
  • Select the Send Email block directly from the menu.
Send email block
2

Compose Email content

In the Send Email configuration window:
  • To: By default, the system will send to the current user’s email (if provided). You can also set it to send internal notification emails to your team.
  • Subject: The subject of the email. You can use variables (e.g., {{first_name}}) to personalize the subject.
  • Body: Enter the email content. The editor supports basic formatting, inserting images, links, and using data variables (Custom Fields).
3

Test and Publish

Click your Flow’s Publish button. Try interacting with the bot to verify whether the system has successfully sent the email to your inbox.

Troubleshooting

If the system cannot send the email successfully, please check some of the following common cases:
  • Cause: Incorrect SMTP Username or Password.
  • Solution: Do not use your main login password. Ensure you have created and used a separate App Password or API Key/SMTP Key as instructed in Step 1.
  • Cause: Incorrect SMTP Port or blocked by a firewall.
  • Solution: Make sure the Port matches the correct encryption standard. For example, Port 465 must use SSL, Port 587 must use TLS. If using Google Workspace, ensure IMAP/SMTP access is not disabled by the administrator.
  • Cause: The customer has not been granted permission (Email Opt-in) in the system.
  • Solution: Check the Audience data to see if the user has an Email and the Opted-in status. Ensure your Flow has a step passing through the Set Email Opt-In Action before reaching Send Email.
  • Solution: As recommended at the beginning, configure DNS records (SPF, DKIM) for the domain displayed on the sending email (From Email). Avoid sending emails that contain too many images without text, or using “spammy” words.