Use Brevo with AI Agents

Brevo, formerly Sendinblue, is a SaaS solution for relationship marketing.
๐Ÿ”— Connect and Use Brevo
1. ๐Ÿ”‘ Connect your Brevo account
2. โœ… Select an action
3. ๐Ÿš€ Go live with the agent
What do you want to do?
Actions
Email Campaigns
Transactional emails
Contacts
SMS Campaigns
Transactional SMS
WhatsApp Campaigns
Senders
Domains
Webhooks
Reseller
Account
User
Process
Inbound Parsing
Master account
Companies
Deals
Tasks
Notes
Files
Conversations
Ecommerce
Event
Coupons
Transactional WhatsApp
External Feeds

API actions for Brevo for AI assitants/agents

Language
JS
PYTHON

Contacts

Delete A Folder And All Its Lists

This endpoint deletes a contact folder and its lists using a folderId. Success results in a 204 status, while errors return 400 or 404 with details.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_A_FOLDER_AND_ALL_ITS_LISTS])

Get Lists In A Folder

This OpenAPI endpoint fetches lists from a contact folder with options for limit, offset, and sort. It details list ID, name, subscriber count, supports sorting, pagination, and flags errors l
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_LISTS_IN_A_FOLDER])

Get All The Lists

The endpoint fetches all contact lists, supporting pagination (via `limit` and `offset`), sorting (by creation time), and filtering. It returns details like IDs, names, subscriber counts, and
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_ALL_THE_LISTS])

Create A List

The '/contacts/lists' POST endpoint creates a contact list in a folder by its ID and list name, returning the new list's ID on success or error codes and messages on failure.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATE_A_LIST])

Get A List S Details

This GET endpoint fetches details about a contact list using its listId, including ID, name, subscribers, blacklisted contacts, and email campaign stats with optional date range. It returns li
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_A_LIST_S_DETAILS])

Update A List

Update contact lists by ID. Accepts renaming the list or moving it to a different folder. Requires `listId` in the path and JSON body with `name` or `folderId`. Returns `204` on success or spe
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_UPDATE_A_LIST])

Delete A List

Deletes a contact list by its ID. Returns a 204 response if successful, or errors such as 400 (bad request) and 404 (List ID not found) with detailed codes and messages for failure reasons.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_A_LIST])

Get All The Segments

The GET endpoint '/contacts/segments' retrieves segments, allowing filtering, pagination via 'limit' and 'offset', and sorting with 'sort'. It returns listings including ID, name, category, an
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_ALL_THE_SEGMENTS])

Get Contacts In A List

This endpoint fetches contacts from a specific list with filter, pagination, and sorting options. It supports detailed queries, including attributes and status, and handles errors like bad req
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_CONTACTS_IN_A_LIST])

Add Existing Contacts To A List

This endpoint allows adding existing contacts to a specific list by its ID. Users can add contacts through their email addresses or IDs, with a max limit of 150 per request. Successful additio
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_ADD_EXISTING_CONTACTS_TO_A_LIST])

Delete A Contact From A List

This endpoint enables users to delete specific, a batch, or all contacts from a list using `listId`. Contacts can be specified by emails, IDs, or selecting `all`. The response details successe
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_A_CONTACT_FROM_A_LIST])

Export Contacts

It returns the background process ID which on completion calls the notify URL that you have set in the input. File will be available in csv.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_EXPORT_CONTACTS])

Import Contacts

It returns the background process ID which on completion calls the notify URL that you have set in the input. **Note**: - Any contact attribute that doesn't exist in your account will be ignor
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_IMPORT_CONTACTS])

SMS Campaigns

Returns The Information For All Your Created Sms Campaigns

This endpoint delivers detailed SMS campaign data, including the ability to filter by status, date, and sort. It supports queries for various parameters, offering insights into content, schedu
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_RETURNS_THE_INFORMATION_FOR_ALL_YOUR_CREATED_SMS_CAMPAIGNS])

Creates An Sms Campaign

To create an SMS campaign, define details like name, sender, message, recipients, and schedule. Messages must comply with length limits and have opt-out info. Success or error codes indicate c
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATES_AN_SMS_CAMPAIGN])

Get An Sms Campaign

This endpoint provides detailed data on an SMS campaign, including content, status, schedule, sender, dates, recipient data, and delivery statistics, with error handling for invalid requests.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_AN_SMS_CAMPAIGN])

Update An Sms Campaign

This endpoint updates an SMS campaign by ID, allowing modifications to its name, sender, content, recipient lists, schedule, and more. Success returns a 204 status; errors yield 400 or 404 wit
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_UPDATE_AN_SMS_CAMPAIGN])

Delete An Sms Campaign

This endpoint allows for the deletion of an SMS campaign by campaignId. It responds with a 204 code on successful deletion, and error codes (400 or 404) for failures like invalid request or ca
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_AN_SMS_CAMPAIGN])

Send Your Sms Campaign Immediately

This endpoint enables sending an SMS campaign instantly via POST to '/smsCampaigns/{campaignId}/sendNow', needing a campaignId. It returns 204 for success, and errors 400, 402, or 404 for vari
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_SEND_YOUR_SMS_CAMPAIGN_IMMEDIATELY])

Update A Campaign S Status

Endpoint updates SMS campaign status via PUT; include campaign ID, desired status in body. Supports various statuses; successful updates return 204, errors may return 400 or 404.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_UPDATE_A_CAMPAIGN_S_STATUS])

Send A Test Sms Campaign

Endpoint allows sending a test SMS for a specific campaign by ID. Requires the recipient's mobile number in JSON format. Responds with success or error detailing issues like invalid parameters
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_SEND_A_TEST_SMS_CAMPAIGN])

Export An Sms Campaign S Recipients

It returns the background process ID which on completion calls the notify URL that you have set in the input.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_EXPORT_AN_SMS_CAMPAIGN_S_RECIPIENTS])

Send An Sms Campaign S Report

Send report of Sent and Archived campaign, to the specified email addresses, with respective data and a pdf attachment in detail.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_SEND_AN_SMS_CAMPAIGN_S_REPORT])

Transactional SMS

Send Sms Message To A Mobile Number

The '/transactionalSMS/smd' POST endpoint sends SMS (transactional/marketing), requiring sender, recipient, content, and options. Success leads to a 201 status, messageId, credits used; failur
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_SEND_SMS_MESSAGE_TO_A_MOBILE_NUMBER])

Get Your Sms Activity Aggregated Over A Period Of Time

Fetch aggregated SMS activity reports over a specified period using start/end dates or a number of past days. Includes metrics like delivered, bounced, and replied SMS. Filters available for s
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_YOUR_SMS_ACTIVITY_AGGREGATED_OVER_A_PERIOD_OF_TIME])

Get Your Sms Activity Aggregated Per Day

Get daily aggregated SMS reports covering requests, deliveries, and more, customizable by date, days past, and tags, with detailed stats and sorting options.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_YOUR_SMS_ACTIVITY_AGGREGATED_PER_DAY])

Get All Your Sms Activity Unaggregated Events

This endpoint retrieves detailed SMS event stats, allowing for pagination, date range, and phone number/event type/tag filtering. It includes specifics like message ID and bounce reasons, with
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_ALL_YOUR_SMS_ACTIVITY_UNAGGREGATED_EVENTS])

WhatsApp Campaigns

Get A Whats App Campaign

This endpoint fetches details of a WhatsApp campaign by ID, including its name, status, sender, recipients, template, and dates, plus error messages for invalid or absent campaigns.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_A_WHATS_APP_CAMPAIGN])

Delete A Whats App Campaign

Deletes a specified WhatsApp campaign by campaignId. On success, returns a 204 status with no content. Errors lead to a 400 or 404 response, detailing the issue with error codes and messages.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_A_WHATS_APP_CAMPAIGN])

Update A Whats App Campaign

Update WhatsApp campaign details like name, status, schedule, and recipients using the campaign ID. Supports campaign edits, rescheduling, and recipient list updates. Responses detail update s
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_UPDATE_A_WHATS_APP_CAMPAIGN])

Return All Your Created Whats App Templates

This endpoint fetches created WhatsApp template messages, offering filters like dates, pagination, and sorting. Parameters: startDate, endDate, limit, offset, sort, source. It returns details
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_RETURN_ALL_YOUR_CREATED_WHATS_APP_TEMPLATES])

Create And Send A Whats App Campaign

Create and manage WhatsApp campaigns by specifying details like name, template ID, schedule, and recipients. Essential fields include template ID and recipient info. It generates success confi
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATE_AND_SEND_A_WHATS_APP_CAMPAIGN])

Return All Your Created Whats App Campaigns

This endpoint fetches WhatsApp campaigns, allowing filters by date, pagination, and sort by modification. It provides campaign name, status, template ID, and message stats.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_RETURN_ALL_YOUR_CREATED_WHATS_APP_CAMPAIGNS])

Create A Whats App Template

This endpoint enables WhatsApp campaign template creation, requiring `name`, `language`, `category`, and `bodyText`. `mediaUrl` and `headerText` are optional. Success returns a 201 status and
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATE_A_WHATS_APP_TEMPLATE])

Send Your Whats App Template For Approval

This endpoint sends WhatsApp campaign templates for approval, requiring a template ID. A successful submission returns a 200 status; errors return specific codes and messages for issues like b
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_SEND_YOUR_WHATS_APP_TEMPLATE_FOR_APPROVAL])

Get Your Whats App Api Account Information

Access WhatsApp API account details including business ID, sending limits, and phone number quality. View account, phone number, and business verification statuses. Handle errors with specific
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_YOUR_WHATS_APP_API_ACCOUNT_INFORMATION])

Senders

Get The List Of All Your Senders

The "/senders" [GET] endpoint fetches a list of account senders, allowing IP/domain filtering. It reveals sender ID, name, email, status, and IPs, supports dedicated IP filters, and reports su
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_THE_LIST_OF_ALL_YOUR_SENDERS])

Create A New Sender

The POST `/senders` endpoint creates new senders with name, email (requires verification), and optional dedicated IPs (with domain and weight). Returns sender ID, SPF, DKIM statuses, or error
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATE_A_NEW_SENDER])

Update A Sender

Update a sender's details by senderID, including name, email, and dedicated IPs. Supports replacing all existing IPs with new ones if specified. Errors for bad requests or missing sender ID ar
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_UPDATE_A_SENDER])

Delete A Sender

This API endpoint deletes a sender by ID, requiring an integer ID. Successful deletions return a 204 code, while errors return 400 with details and 404 if the ID is not found.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_A_SENDER])

Validate Sender Using Otp

Validates a sender with a provided OTP via PUT request on '/senders/{senderId}/validate'. Requires senderId in the path and an OTP in the JSON body. Responses include 204 (verified), 400 (bad
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_VALIDATE_SENDER_USING_OTP])

Get All The Dedicated Ips For A Sender

This endpoint fetches a list of dedicated IPs for a sender using their senderId, detailing each IP's address, domain, and weight. It handles success, bad requests, and unfound sender IDs.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_ALL_THE_DEDICATED_IPS_FOR_A_SENDER])

Get All The Dedicated Ips For Your Account

Retrieve a list of dedicated IP addresses for your account, including IP details such as ID, IP address, status (active/inactive), and associated domain.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_ALL_THE_DEDICATED_IPS_FOR_YOUR_ACCOUNT])

Domains

Get The List Of All Your Domains

The `/senders/domains` endpoint provides a complete list of domains linked to your account, detailing each domain's ID, name, auth status, verification status, and any dedicated IPs, along wit
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_THE_LIST_OF_ALL_YOUR_DOMAINS])

Create A New Domain

This API endpoint (`POST /senders/domains`) adds a new domain, requiring a domain name in JSON format in the body. It returns the domain ID, name, a success message, and DNS verification recor
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATE_A_NEW_DOMAIN])

Delete A Domain

Deletes a specified domain from the system. Requires the domain name in the path. Responses include success (200 OK, domain deleted), bad request (400, with various error codes), and not found
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_DELETE_A_DOMAIN])

Validate Domain Configuration

This API endpoint checks a domain's verification, authentication, and DNS records by requiring a `domainName`. It returns the domain's statuses and records on success, or error messages on fai
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_VALIDATE_DOMAIN_CONFIGURATION])

Authenticate A Domain

The PUT endpoint '/senders/domains/{domainName}/authenticate' authenticates domain names, returning success with details or errors for bad requests or non-existent domains.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_AUTHENTICATE_A_DOMAIN])

Webhooks

Get All Webhooks

Retrieve all webhooks via a GET request to the `/webhooks` endpoint, with filter and sort options by type and date. The response includes description, URL, ID, events, creation/modification da
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_GET_ALL_WEBHOOKS])

Create A Webhook

The "/webhooks" endpoint enables webhook creation via a JSON payload specifying the events, URL, and optional settings (description, batch mode, auth, headers, type). It returns the webhook's
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.BREVO_CREATE_A_WEBHOOK])

Frequently asked questions

What is Composio.dev?

Composio.dev is a platform for building AI applications, designed to make the process of developing AI solutions super easy and fun! It provides a comprehensive set of tools and libraries that simplify the process of developing AI solutions, allowing you to focus on the creative aspects of your project without getting bogged down by the technical details.

How does Composio.dev support Brevo?

Composio.dev seamlessly integrates with Brevo, allowing you to leverage its capabilities within the Composio.dev platform. You can utilize Brevo to call functions across various platforms, including Google, GitHub, and others, making it a breeze to incorporate different services into your AI applications. Additionally, it supports user authentication via OAuth2 and can work in conjunction with other popular frameworks like LangChain and CrewAI, giving you the flexibility to build truly innovative AI solutions.

What models can I use with Brevo?

With Brevo, you have access to a wide range of state-of-the-art language models, including GPT-4o (OpenAI), GPT-3.5 (OpenAI), GPT-4 (OpenAI), Claude (Anthropic), PaLM (Google), LLaMA and LLaMA 2 (Meta), Gemini, and many others. This flexibility allows you to choose the model that best suits your specific use case, whether you're building a chatbot, a content creation tool, or any other AI-powered application. You can experiment with different models and find the one that delivers the best performance for your project.

How can I integrate Brevo into my project?

Composio.dev provides a seamless integration for Brevo, making it super easy to incorporate this powerful framework into your projects. You can leverage the Composio.dev API to call functions from Brevo, allowing you to tap into its capabilities with just a few lines of code. The SDK is available in Python, JavaScript, and TypeScript, so you can work with your preferred programming language and integrate Brevo into your projects seamlessly.

What is the pricing for Brevo?

Brevo is completely free to use, with a generous free tier that allows up to 1000 requests per month. This makes it accessible for developers and organizations of all sizes to explore and experiment with this powerful tool without any upfront costs. Whether you're a student working on a personal project or a startup building the next big thing, you can get started with Brevo without worrying about breaking the bank.

What kind of authentication is supported for Brevo?

Brevo supports OAuth2 authentication, ensuring secure and authorized access to its functionalities. You can leverage the Composio.dev API to handle authentication and call functions from Brevo seamlessly. The SDK is available in Python, JavaScript, and TypeScript for your convenience, making it easy to integrate authentication into your projects and keep your users' data safe and secure.

Can I add Brevo to my project?

Absolutely! You can easily incorporate Brevo into your project by utilizing the Composio.dev API. This API allows you to call functions from Brevo, enabling you to leverage its capabilities within your application. The SDK is available in Python, JavaScript, and TypeScript to facilitate integration, so you can work with the language you're most comfortable with and add Brevo to your project with ease.

What is the accuracy of Brevo?

Brevo is designed to provide highly accurate and reliable results, ensuring that your AI applications perform at their best. The integration with Composio.dev ensures precise function calls, enabling you to build robust and powerful AI applications with confidence. Brevo's comprehensive framework and the ability to leverage state-of-the-art models ensure reliable and accurate outcomes for your AI development needs, whether you're working on a chatbot, a content creation tool, or any other AI-powered project.

What are some common use cases for Brevo?

Brevo can be used for a wide range of AI applications, making it a versatile tool for developers and creators alike. Some common use cases include natural language processing, text generation, question answering, sentiment analysis, and more. It's particularly useful for building chatbots, virtual assistants, content creation tools, and other AI-powered applications that can help you automate tasks, engage with users, and create compelling content. Whether you're working on a personal project or building a product for your startup, Brevo can help you bring your ideas to life.

How does Brevo handle data privacy and security?

Data privacy and security are crucial considerations when working with AI systems, and Brevo takes these issues seriously. It follows industry best practices and adheres to strict data protection regulations, ensuring that your data is kept safe and secure. Brevo provides robust security measures, such as encryption and access controls, to ensure the confidentiality and integrity of your data. You can rest assured that your sensitive information is protected when using Brevo for your AI development needs.
+ Integrate seamlessly with your agentic frameworks
Composio Works with All Shapes and SizesComposio Works with All Shapes and SizesComposio Works with All Shapes and SizesComposio Works with All Shapes and SizesComposio Works with All Shapes and Sizes
Building for AI across continents๐Ÿงช