Use Klaviyo with Llamaindex Python

A marketing platform for email, SMS, and more.
🔗 Connect and Use Klaviyo
1. 🔑 Connect your Klaviyo account
2. ✅ Select an action
3. 🚀 Go live with the agent
What do you want to do?
Actions
Accounts
- Get accounts
Campaigns
Catalogs
Coupons
Data Privacy
Events
Flows
Forms
Images
Lists
Metrics
Profiles
Reporting
Segments
Tags
Templates
Webhooks
Client

API actions for Klaviyo for AI assitants/agents

Language
JS
PYTHON
Framework

Tags

Get Tag Relationships Lists

Returns the IDs of all lists associated with the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `lists:read` `tags:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TAG_RELATIONSHIPS_LISTS])

Create Tag Relationships Lists

Summary: A tag can be added to one or more lists, with a max of 100 tags per list. Use the request body to link tag and list IDs. Tag: #APIUsageLimits Scopes: lists:write, tags:write
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_TAG_RELATIONSHIPS_LISTS])

Delete Tag Relationships Lists

Remove a tag's association with one or more lists. Use the request body to pass in the ID(s) of the list(s) whose association with the tag will be removed.<br><br>*Rate limits*:<br>Burst: `3/
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_DELETE_TAG_RELATIONSHIPS_LISTS])

Get Tag Relationships Segments

Returns the IDs of all segments associated with the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `segments:read` `tags:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TAG_RELATIONSHIPS_SEGMENTS])

Create Tag Relationships Segments

Summary: Set tag associations with segments using the request body, limited to one tag per segment and up to 100 tags per segment. Rate limits are three requests per second and sixty per minut
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_TAG_RELATIONSHIPS_SEGMENTS])

Delete Tag Relationships Segments

Use the request body to de-associate a tag from specified segment IDs. Rate limits are 3 requests/sec and 60 requests/min. Required scopes are 'segments:write' and 'tags:write'.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_DELETE_TAG_RELATIONSHIPS_SEGMENTS])

Get Tag Relationships Tag Group

Returns the id of the tag group related to the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TAG_RELATIONSHIPS_TAG_GROUP])

Get Tag Group Relationships Tags

Returns the tag IDs of all tags inside the given tag group.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TAG_GROUP_RELATIONSHIPS_TAGS])

Get Tag Tag Group

Returns the tag group resource for a given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TAG_TAG_GROUP])

Get Tag Group Tags

Return the tags for a given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TAG_GROUP_TAGS])

Templates

Get Templates

Retrieve account templates with sorting options (`id`, `name`, `created`, `updated`). Limit of 10 results per page, rate limits at 10/s burst and 150/m steady. Requires `templates:read` scope.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TEMPLATES])

Create Template

Summary: Custom HTML templates can be created unless an account reaches 1,000 template limit. Use sparse fieldsets to request specific fields. Rate limits are 10 per second and 150 per minute.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_TEMPLATE])

Get Template

Get a template with the given template ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `templates:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_TEMPLATE])

Update Template

Update a template with the given template ID. Does not currently update drag & drop templates.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `templates:write`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_UPDATE_TEMPLATE])

Delete Template

Delete a template with the given template ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `templates:write`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_DELETE_TEMPLATE])

Create Template Render

Render an email template with specific context and sparse fieldsets, then get HTML/plain text. Rate limit: 3/s burst, 60/m steady. Scope: templates:read.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_TEMPLATE_RENDER])

Create Template Clone

Clone a template by its ID, but cloning fails if account has 1,000+ templates. API limit: 1,000 templates. Rate limits are 10 per second and 150 per minute. Requires `templates:write` scope.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_TEMPLATE_CLONE])

Webhooks

Get Webhooks

Get all webhooks in an account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_WEBHOOKS])

Create Webhook

Create a new Webhook<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:write`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_WEBHOOK])

Get Webhook

Get the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_WEBHOOK])

Update Webhook

Update the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:write`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_UPDATE_WEBHOOK])

Delete Webhook

Delete a webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:write`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_DELETE_WEBHOOK])

Get Webhook Topics

Get all webhook topics in a Klaviyo account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_WEBHOOK_TOPICS])

Get Webhook Topic

Get the webhook topic with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_GET_WEBHOOK_TOPIC])

Client

Create Client Subscription

Endpoint manages email/SMS opt-ins using consent and requires public API key for client use. Allows single-channel with details. Rate limit: 100/s burst, 700/m steady, under 'subscriptions:wri
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_CLIENT_SUBSCRIPTION])

Create Or Update Client Push Token

This endpoint for mobile SDKs (iOS & Android) creates/updates push tokens using a public API key. Push notifications must be enabled. For migrating tokens use the server-side POST endpoint. Ra
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_OR_UPDATE_CLIENT_PUSH_TOKEN])

Unregister Client Push Token

This endpoint unsubscribes a push token, for use with Klaviyo's mobile SDKs and a public API key. Push notifications must be on. Rate limits are 3/s and 60/m.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_UNREGISTER_CLIENT_PUSH_TOKEN])

Create Client Event

Create client-side events to track profiles using a public API key, not for updating identifiers (server-side only). Rate limits: 350/s, 3500/m. Use `events:write` scope.
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_CLIENT_EVENT])

Create Or Update Client Profile

Update user profiles without tracking using a public client-side API; use a private server-side API for identifier changes. Burst rate is 350 requests/sec and 3500 requests/min with 'profiles:
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_OR_UPDATE_CLIENT_PROFILE])

Bulk Create Client Events

Use the client-side endpoint with a public API key to track profile activity. It accepts up to 1000 events/request with rates of 10/s burst and 150/m steady. For server-side, use the bulk crea
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_BULK_CREATE_CLIENT_EVENTS])

Create Client Back In Stock Subscription

Use the endpoint for client-side back in stock notifications with a public API key. For server-side, use POST /api/back-in-stock-subscriptions. Limits are 350 requests per second and 3500 per
from composio_llamaindex import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.KLAVIYO_CREATE_CLIENT_BACK_IN_STOCK_SUBSCRIPTION])

Frequently asked questions

What is Composio.dev?

Composio.dev is a cutting-edge framework for building AI applications, designed to make the process of developing AI solutions super easy and fun! It's a collection of powerful tools and libraries that simplify the process of creating AI applications, allowing you to focus on the creative aspects of your project without getting bogged down by the technical details.

How does Composio.dev support Klaviyo?

Composio.dev seamlessly integrates with Klaviyo, making it a breeze to leverage its capabilities within the Composio.dev platform. You can use Klaviyo to call functions on various platforms like Google, GitHub, and others, allowing you to incorporate different services into your AI applications with ease. It also supports user login via OAuth2 and can work with other popular frameworks such as LangChain and CrewAI, giving you the flexibility to build truly innovative AI solutions.

What models can I use with Klaviyo and llamaindex_python?

When using Klaviyo and llamaindex_python, 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 Klaviyo with llamaindex_python?

Integrating Klaviyo with llamaindex_python is super easy with Composio.dev! You can use the Composio.dev API to call functions from both Klaviyo and llamaindex_python, allowing you to tap into their capabilities with just a few lines of code. The SDK is available in Python, JavaScript, and TypeScript, so you can work with the language you're most comfortable with and integrate these powerful tools into your projects seamlessly.

What is the pricing for Klaviyo and llamaindex_python?

Both Klaviyo and llamaindex_python are completely free to use, with a generous free tier that allows up to 1000 requests per month. This makes them accessible for developers and organizations of all sizes, whether you're a student working on a personal project or a startup building the next big thing. You can get started with these powerful tools without worrying about breaking the bank.

What kind of authentication is supported for Klaviyo and llamaindex_python?

Klaviyo and llamaindex_python support OAuth2 authentication, ensuring secure and authorized access to their functionalities. You can use the Composio.dev API to handle authentication and call functions from both Klaviyo and llamaindex_python 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 Klaviyo to my project?

Absolutely! You can easily incorporate Klaviyo into your project by utilizing the Composio.dev API. This API allows you to call functions from both Klaviyo and llamaindex_python, enabling you to leverage their 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 these powerful tools to your project with ease.

What is the accuracy of Klaviyo and llamaindex_python?

Klaviyo and llamaindex_python are 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. The 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 Klaviyo and llamaindex_python?

Klaviyo and llamaindex_python can be used for a wide range of AI applications, making them versatile tools for developers and creators alike. Some common use cases include natural language processing, text generation, question answering, sentiment analysis, and more. They're 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, these tools can help you bring your ideas to life.

How does Klaviyo handle data privacy and security?

Data privacy and security are crucial considerations when working with AI systems, and Klaviyo 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. Klaviyo 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 Klaviyo for your AI development needs.

Can I customize Klaviyo and llamaindex_python for my specific needs?

Absolutely! Klaviyo and llamaindex_python are highly customizable and extensible, allowing you to tailor their functionality, models, and configurations to meet your specific requirements. Whether you're building a chatbot, a content creation tool, or any other AI-powered application, you can customize these tools to fit your unique needs. Additionally, Composio.dev provides a flexible platform for integrating and orchestrating various AI tools and services, enabling you to create custom AI solutions that are tailored to your project.

What kind of support and documentation is available for Klaviyo and llamaindex_python?

Klaviyo and llamaindex_python have comprehensive documentation and a supportive community, making it easy for you to get started and find answers to your questions. Composio.dev also provides extensive resources, including tutorials, guides, and a dedicated support team to assist you throughout your AI development journey. Whether you're a beginner or an experienced developer, you'll have access to the resources you need to make the most of these powerful tools.
+ 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🧪