> ## Documentation Index
> Fetch the complete documentation index at: https://botpress.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Klaviyo

> Add a bot to Klaviyo using the official integration.

export const OpenInHub = ({integration}) => {
  const {version, id} = integration || ({});
  const basePath = 'https://studio.botpress.cloud/home?exploreHub=1&hubItemId=';
  const url = `${basePath}${id}`;
  return <>
            <a className="button rounded-xl" href={url}>
                <span>
                Open in Hub
                </span>
            </a>
            <i style={{
    margin: "0",
    fontStyle: "normal",
    color: "#666",
    fontSize: "0.85rem",
    padding: '.5rem'
  }}>
                v{version}
            </i>
        </>;
};

export const integrationVersions = {
  "accelo": {
    "version": "2.0.0",
    "id": "intver_01JFAQHPVKP4XTKMNXC2RZKZ88"
  },
  "activecampaign": {
    "version": "2.0.0",
    "id": "intver_01JFAQHVA0Z25PFC7H13EQ41FR"
  },
  "acumatica": {
    "version": "2.0.0",
    "id": "intver_01JFAQHZTNGNHPPS9CKD35Q6EY"
  },
  "airtable": {
    "version": "3.0.0",
    "id": "intver_01KQYW202230PVRW9RVA68VRYR"
  },
  "alchemer": {
    "version": "2.0.0",
    "id": "intver_01JFAQQZRS9ZQ7WBWHCF1MKGCM"
  },
  "anthropic": {
    "version": "18.0.1",
    "id": "intver_01KQYW62BM57D669VPPSAKXGHG"
  },
  "anydesk": {
    "version": "2.0.0",
    "id": "intver_01JFAQR4048H4976FCKT2YHD2X"
  },
  "apollo": {
    "version": "3.0.2",
    "id": "intver_01K6BJFKR5WZV44VNENAN6XBT1"
  },
  "asana": {
    "version": "0.3.13",
    "id": "intver_01KMZACD2E15B0RZB8RJ2XN2JX"
  },
  "attio": {
    "version": "1.0.3",
    "id": "intver_01KMZACN5Z3VJK0W280ED7G4Y0"
  },
  "avoma": {
    "version": "2.0.0",
    "id": "intver_01JFAQRC955G4CXN8QTFHXAPXZ"
  },
  "bamboohr": {
    "version": "2.1.2",
    "id": "intver_01KMZACXWM0GDNQF5PS3QBPQDN"
  },
  "beehiiv": {
    "version": "2.0.0",
    "id": "intver_01JFAQRGRRB95YC5YKWB1BFHZH"
  },
  "bigcommerce": {
    "version": "3.2.4",
    "id": "intver_01KMZAD5GM0P6BGFJHKE2QDDR8"
  },
  "bigin": {
    "version": "2.0.0",
    "id": "intver_01JFAQRS4Q0AY8CEAGYTDMPEPV"
  },
  "bolt": {
    "version": "2.0.0",
    "id": "intver_01JFAQRXGEVSFY1PYM195NAWQ6"
  },
  "box": {
    "version": "2.0.0",
    "id": "intver_01JFAQS1NBSGECDYX5MTTFN7RK"
  },
  "braze": {
    "version": "2.0.0",
    "id": "intver_01JFAQS5V6T5HF7MRJ46NMP42B"
  },
  "brevo": {
    "version": "2.0.0",
    "id": "intver_01JFAQSA1R5F1JGJZS55VTC1RP"
  },
  "britive": {
    "version": "2.0.0",
    "id": "intver_01JFAQSE7EMRGQE8EQD2CB6AZR"
  },
  "browser": {
    "version": "0.8.8",
    "id": "intver_01KPBEHKBJD4MZ0ZDWEBMHX74D"
  },
  "bynder": {
    "version": "2.0.0",
    "id": "intver_01JFAQSJT5N0Q2J2K7KGG12QQ5"
  },
  "calcom": {
    "version": "0.4.2",
    "id": "intver_01KMZADKWGWXARSDEH5VES64JY"
  },
  "calendly": {
    "version": "0.0.5",
    "id": "intver_01KMZADVPKFVFATR33S36R2NQ8"
  },
  "canny": {
    "version": "0.2.3",
    "id": "intver_01KMZAE3W37N658H69Y6ZPSREQ"
  },
  "capsule-crm": {
    "version": "2.0.0",
    "id": "intver_01JFAQSQ6CJJ6G9FK7PAACKE6X"
  },
  "cerebras": {
    "version": "9.0.0",
    "id": "intver_01KNRZZPBTBA0FAHVDVGAJNBJ1"
  },
  "charts": {
    "version": "0.2.8",
    "id": "intver_01KMZAEJVYBMNRMP01816TVEBH"
  },
  "chat": {
    "version": "1.0.0",
    "id": "intver_01KNSDHSSEHCX633DGB62V2ZB8"
  },
  "checkout": {
    "version": "2.0.0",
    "id": "intver_01JFAQSVA80GG51V7QKTARFG0E"
  },
  "clari": {
    "version": "2.0.0",
    "id": "intver_01JFAQSZVXNWXV8371M8ACEPFV"
  },
  "clay": {
    "version": "2.0.0",
    "id": "intver_01JFAQT424E25GR5K1Q8PZC4SC"
  },
  "clickup": {
    "version": "0.0.3",
    "id": "intver_01KMZAF5TCYZNN80SFM4MCASB5"
  },
  "close": {
    "version": "2.0.0",
    "id": "intver_01JFAQT8BMZG66DNJM1DBZ2EQ3"
  },
  "cognism": {
    "version": "2.0.0",
    "id": "intver_01JFAQTCC9XR5N28RA4SNZ8KYJ"
  },
  "comeet": {
    "version": "2.0.0",
    "id": "intver_01JFAQTGMDYR086FC0VEQ95VGC"
  },
  "confluence": {
    "version": "3.3.4",
    "id": "intver_01KMZAFH0Z4679X7P0SSY18DPV"
  },
  "copper": {
    "version": "2.0.0",
    "id": "intver_01JFAQTS5YQTVNMSRMTH12X4YC"
  },
  "creatio": {
    "version": "2.0.0",
    "id": "intver_01JFAQTXY9Z4S1XDWSBT4J4KJJ"
  },
  "crmone": {
    "version": "2.0.0",
    "id": "intver_01JFAQV28DCXF7SV71N9Q5BJC8"
  },
  "dalle": {
    "version": "0.3.8",
    "id": "intver_01KMZAFVDB02KE332TQ930T76J"
  },
  "databricks": {
    "version": "0.0.4",
    "id": "intver_01JBMK24H270H1ZTH2E8P34V4J"
  },
  "demandbase": {
    "version": "2.0.0",
    "id": "intver_01JFAQV9ZZ9MHH2ENEQ1ERMY2G"
  },
  "desk": {
    "version": "1.0.0",
    "id": "intver_01KGQ972H97YAN3D3KY9425JYN"
  },
  "discord": {
    "version": "1.2.1",
    "id": "intver_01KREWJHF8AZMBHH3JC5XFSFTB"
  },
  "docusign": {
    "version": "2.0.0",
    "id": "intver_01JFAQVKFW4F7BBRSDD7EEZE6Z"
  },
  "dropbox": {
    "version": "2.0.1",
    "id": "intver_01KMZAG63Y41V6CJGWD858VKQN"
  },
  "email": {
    "version": "0.1.4",
    "id": "intver_01KMZAGF70MCA75BCVVY3DGHXD"
  },
  "enchant": {
    "version": "2.0.0",
    "id": "intver_01JFAQVQQ60DZV01V3D1GA29YG"
  },
  "engagebay": {
    "version": "2.0.0",
    "id": "intver_01JFAQVVW42J4KNWCEZ6VQ3ZSJ"
  },
  "fathom": {
    "version": "2.0.0",
    "id": "intver_01JFAQW0QPEJS7M4EPVN9GJJDK"
  },
  "feature-base": {
    "version": "1.0.3",
    "id": "intver_01KMZAGPXHR49811P7S89CWN35"
  },
  "fireworks-ai": {
    "version": "11.0.0",
    "id": "intver_01KNS0091R8GPT9C088F3F3PE0"
  },
  "fivetran": {
    "version": "2.0.0",
    "id": "intver_01JFAQW55482FWTDSPCYT53DWE"
  },
  "flodesk": {
    "version": "2.0.0",
    "id": "intver_01JFAQW9APE7Z8E81T2F58VDM7"
  },
  "folk": {
    "version": "2.0.0",
    "id": "intver_01JFAQWDVG2DVFYKJRD8DMHVPZ"
  },
  "freshchat": {
    "version": "1.5.5",
    "id": "intver_01KMZAH6YY639ZNJTGDMTH25GT"
  },
  "freshsales": {
    "version": "2.0.0",
    "id": "intver_01JFAQWJ3CC3DJ5KG0W6XP33FD"
  },
  "fullstory": {
    "version": "2.0.0",
    "id": "intver_01JFAQWPM0T9EH5SAGDQ3Z14ZC"
  },
  "gainsight": {
    "version": "2.0.0",
    "id": "intver_01JFAQWTPKB13Y7619A6GEN5HQ"
  },
  "getaccept": {
    "version": "2.0.0",
    "id": "intver_01JFAQWZ0SAMDJVQNNA86RG21M"
  },
  "getresponse": {
    "version": "2.0.0",
    "id": "intver_01JFAQX34P2PBW0EM9NC6ZGFT5"
  },
  "github": {
    "version": "1.2.1",
    "id": "intver_01KMZAHF5WMDMTT9H6V3DQ8T50"
  },
  "gladly": {
    "version": "2.0.0",
    "id": "intver_01JFAQX7B29WE85VA8N5BCST16"
  },
  "gmail": {
    "version": "1.0.7",
    "id": "intver_01KMZAHQQ8YSB2DRVR1B6YXNCN"
  },
  "google-ai": {
    "version": "8.0.0",
    "id": "intver_01KNS00R1R8P4N2J4SVN6HHX4P"
  },
  "google-analytics": {
    "version": "1.0.0",
    "id": "intver_01KPRHR42CF02FMDDGSF0TG0DB"
  },
  "googlecalendar": {
    "version": "2.0.9",
    "id": "intver_01KMZAJAKBEZKGH0ZPQJBR1VAE"
  },
  "googledrive": {
    "version": "0.4.2",
    "id": "intver_01KMZAJJE94ZYG631DQM93B9RN"
  },
  "groq": {
    "version": "16.0.0",
    "id": "intver_01KNS015P14BRMA1C0CJG239M4"
  },
  "gsheets": {
    "version": "2.1.9",
    "id": "intver_01KP5Z7BRNQNGVY406742M7BBE"
  },
  "gusto": {
    "version": "2.0.0",
    "id": "intver_01JFAR75Y17N5EWS6P0PC93RHQ"
  },
  "happyfox": {
    "version": "2.0.0",
    "id": "intver_01JFAQXFNYWCXX819GTBHJ470W"
  },
  "help-scout": {
    "version": "2.0.0",
    "id": "intver_01JFAQXKX61YWJMMHYK3YDFZ0K"
  },
  "hitl": {
    "version": "2.0.2",
    "id": "intver_01K0SV5HZAT9FSVVEB7S91SH4F"
  },
  "honeybook": {
    "version": "2.0.0",
    "id": "intver_01JFAQXRQ8TADY78EBPBKSXFPC"
  },
  "hubspot": {
    "version": "6.0.9",
    "id": "intver_01KTV8S0ZX48N54R7AVG24CHJZ"
  },
  "hunter": {
    "version": "1.0.2",
    "id": "intver_01KMZAKV7RM16T6375G0JXDYHH"
  },
  "instagram": {
    "version": "4.1.9",
    "id": "intver_01KRC18D2WGRKT0G2SRZQ5VE3Z"
  },
  "instantly": {
    "version": "2.0.0",
    "id": "intver_01JFAQXWNN3ZM0DAQBE7N2BP54"
  },
  "intercom": {
    "version": "2.0.4",
    "id": "intver_01KMZAMCN5KTKK60239ADVZGCP"
  },
  "keap": {
    "version": "2.0.0",
    "id": "intver_01JFAQY1A6AQGSZRPKRJ11649R"
  },
  "kit": {
    "version": "2.0.0",
    "id": "intver_01JFAQYAZCH51RNSK7XT8ZKFZC"
  },
  "klaviyo": {
    "version": "3.0.2",
    "id": "intver_01K6BFXSKB0G4KMVGJPTR1X835"
  },
  "knack": {
    "version": "2.0.0",
    "id": "intver_01JFAQYKKW7JQJYH5GQW95AXFJ"
  },
  "kommo": {
    "version": "0.1.0",
    "id": "intver_01KN89QSX1YDM04NFRHK0WKZMG"
  },
  "kustomer": {
    "version": "2.0.0",
    "id": "intver_01JFAQYR6A4M0527JHDSNXN4TY"
  },
  "kylas": {
    "version": "2.0.0",
    "id": "intver_01JFAQYWG9PSP9076S99BE546R"
  },
  "leadsquared": {
    "version": "2.0.0",
    "id": "intver_01JFAQZ0PFZ7W5AJN0MZQJHGW7"
  },
  "leandata": {
    "version": "2.0.0",
    "id": "intver_01JFAQZ54J1MYP5D4WXZ1Z7KK7"
  },
  "less-annoying-crm": {
    "version": "2.0.0",
    "id": "intver_01JFAQZ99G8ZWD4847189A4EGS"
  },
  "line": {
    "version": "2.0.6",
    "id": "intver_01KMZAMNQDY2BZAW86RZ58VSQY"
  },
  "linear": {
    "version": "2.5.0",
    "id": "intver_01KRHWEFJX783DXZG4XZ7B6ER8"
  },
  "linkedin": {
    "version": "0.1.3",
    "id": "intver_01KN89RB1CBCP1MGAYEBHMCT5Q"
  },
  "localiq": {
    "version": "2.0.0",
    "id": "intver_01JFAQZDKZQV3J44CJF074YHXZ"
  },
  "loops": {
    "version": "0.1.5",
    "id": "intver_01KMZANASVEZEW761JG63F1RM0"
  },
  "mailchimp": {
    "version": "0.3.12",
    "id": "intver_01KMZANJGYPESPJHZJ7NPEE7C6"
  },
  "mailerlite": {
    "version": "3.0.2",
    "id": "intver_01K6BFZTMA8A1Z3KV1QXGWB61S"
  },
  "make": {
    "version": "0.3.9",
    "id": "intver_01KMZANTJE8DN94EE6K74ETJ0Z"
  },
  "mcp-client": {
    "version": "0.1.0",
    "id": "intver_01KQWWKVJFV3DD65PR233GRHMH"
  },
  "messenger": {
    "version": "5.1.8",
    "id": "intver_01KPDRM4RJN85JM6DRP43W48PX"
  },
  "mindtickle": {
    "version": "2.0.0",
    "id": "intver_01JFAQZNRAZMBAEZ943WY44EXD"
  },
  "mintlify": {
    "version": "1.0.1",
    "id": "intver_01KMZAPEVTD6HZ9BPRHVK09DC5"
  },
  "mistral-ai": {
    "version": "1.0.0",
    "id": "intver_01KNS021C2ZFXWGAXC5TFAXBA9"
  },
  "monday": {
    "version": "1.0.2",
    "id": "intver_01KMZAQ1357YEQBMVPHQ8QYSAF"
  },
  "mural": {
    "version": "2.0.0",
    "id": "intver_01JFAQZT1R0PR8C59Z1MHWMG83"
  },
  "notion": {
    "version": "3.0.5",
    "id": "intver_01KN89RW8Z2ZK98F8JM8X66RXS"
  },
  "nutshell": {
    "version": "2.0.0",
    "id": "intver_01JFAQZYAY7HCM2VTWTZK0GHZ6"
  },
  "odoo": {
    "version": "0.1.0",
    "id": "intver_01KRC19AE1XTHSSW6D0FZPJZ1H"
  },
  "okta": {
    "version": "2.0.0",
    "id": "intver_01JFAR02JMED7RK95YXCDRVNXX"
  },
  "openai": {
    "version": "20.0.0",
    "id": "intver_01KNS02E7FF0WQAYXWJDM3ZZNQ"
  },
  "outreach": {
    "version": "2.0.0",
    "id": "intver_01JFAR0717CX7YJNEX0FXRR8TN"
  },
  "pandadoc": {
    "version": "2.0.0",
    "id": "intver_01JFAR0BBGR1EGMRR2PRGHRABB"
  },
  "pdf-generator": {
    "version": "0.0.7",
    "id": "intver_01KMZAQP6WG231KVJSEY88KG2J"
  },
  "pimcore": {
    "version": "2.0.0",
    "id": "intver_01JFAR0FRDMZNK1B1EYKTHKANP"
  },
  "pipedrive": {
    "version": "5.0.1",
    "id": "intver_01K6BG0EMJ1FQ0E5DCZZEN9301"
  },
  "pipeliner": {
    "version": "2.0.0",
    "id": "intver_01JFAR0R7XHB7VYX0Q0ETV9B3F"
  },
  "plaid": {
    "version": "2.0.0",
    "id": "intver_01JFAR0WH09T4MRTTQHRAH2ESD"
  },
  "planhat": {
    "version": "2.0.0",
    "id": "intver_01JFAR10SHDPEPXTJN6RRB9H6S"
  },
  "plus/apify": {
    "version": "1.0.4",
    "id": "intver_01KH6R8P2ZYNACH8KQED02E9YC"
  },
  "plus/brevo-hitl": {
    "version": "2.0.0",
    "id": "intver_01K392AS04342HT6Z2HZZ60A2D"
  },
  "plus/chatwoot": {
    "version": "1.0.4",
    "id": "intver_01KD3BFCBTV2PNJ80V3VYFBC4M"
  },
  "plus/email-notifier": {
    "version": "1.1.1",
    "id": "intver_01KB0YDR2AQ5A8H0GBZ35J51MQ"
  },
  "plus/go-high-level": {
    "version": "1.0.4",
    "id": "intver_01K6BDMWTZ7FNKTGD4N8YDPH1H"
  },
  "plus/google-analytics": {
    "version": "0.2.4",
    "id": "intver_01HXS7S3FCANEG2EN5FKKWH722"
  },
  "plus/google-chat-spaces": {
    "version": "1.0.3",
    "id": "intver_01K6BDNG0ZNW5JXRA5RDQJQCWN"
  },
  "plus/google-sheets": {
    "version": "1.2.5",
    "id": "intver_01K6BDP63K6Y5HFVJ84R7EKP0Y"
  },
  "plus/hitl-api": {
    "version": "0.2.0",
    "id": "intver_01J804C5W78Y5FWHHNVWMR5VM3"
  },
  "plus/hubspot-help-desk-hitl": {
    "version": "3.1.1",
    "id": "intver_01KC2AWT9BDMTHV36AJRVEF4DN"
  },
  "plus/hubspot-hitl": {
    "version": "5.0.4",
    "id": "intver_01K6BF9Q6D3M6T3J3V541ZJC8Z"
  },
  "plus/huggingface": {
    "version": "0.0.1",
    "id": "intver_01J6FP62B7KEHH4NC4R7NBBTW5"
  },
  "plus/intercom-hitl": {
    "version": "2.0.5",
    "id": "intver_01KEWH6D0NF81Q1WB8W8V225A8"
  },
  "plus/jira": {
    "version": "0.2.4",
    "id": "intver_01KCVM0T96KA8YK723W3N8P494"
  },
  "plus/livechat-hitl": {
    "version": "3.0.2",
    "id": "intver_01K6BFYE44DVXKVFXBHKZED8P9"
  },
  "plus/magento2": {
    "version": "2.0.4",
    "id": "intver_01K6BKG43JX1R6ZEB4CXJ6R65D"
  },
  "plus/messaging": {
    "version": "0.2.3",
    "id": "intver_01HVM0R2R0QXWNH3BEZPYFK6ZJ"
  },
  "plus/mixpanel": {
    "version": "0.2.3",
    "id": "intver_01HXABTRSS5J9K0G1S1MPCX8J9"
  },
  "plus/persat": {
    "version": "1.0.0",
    "id": "intver_01K75D7C0JTQ5FY058T1187G32"
  },
  "plus/salesforce": {
    "version": "1.0.2",
    "id": "intver_01JRTXEF3N4CG8D668ANNW40DS"
  },
  "plus/segment": {
    "version": "0.2.4",
    "id": "intver_01HX7R8GHK3BKX2RHER1KYV0VT"
  },
  "plus/sharepoint": {
    "version": "4.1.0",
    "id": "intver_01K8XWKTBHY5AX8JTBV4T0D4V6"
  },
  "plus/sharepoint-excel": {
    "version": "2.2.1",
    "id": "intver_01K6BKHB4TQ5RFVA6W1VKAREFB"
  },
  "plus/shopify-products-sync": {
    "version": "3.0.2",
    "id": "intver_01K8VDHZ8FM3ZDMTYA8Y7EDXTT"
  },
  "plus/twiliovoice": {
    "version": "0.2.3",
    "id": "intver_01K6BKKDTZ1X8ECNS52N96M8AM"
  },
  "plus/zoho": {
    "version": "3.0.0",
    "id": "intver_01JNRREVZ0BA8VKEKMPMRF0DW5"
  },
  "plus/zohosalesiq": {
    "version": "2.0.0",
    "id": "intver_01JP37YJSERZGZQQW369F7W27C"
  },
  "plus/zoho-sales-iq-hitl": {
    "version": "3.0.0",
    "id": "intver_01K397TXPTA9982A829WV7XNX5"
  },
  "plus/zoom": {
    "version": "3.1.1",
    "id": "intver_01KAEBBGJ327TGZ0AZW31H6S19"
  },
  "posthog": {
    "version": "2.0.0",
    "id": "intver_01JFAR153DTQEGNZXMA4PAAV7D"
  },
  "postman": {
    "version": "2.0.0",
    "id": "intver_01JFAR19F7PZWCD9CBKAB30540"
  },
  "postmark": {
    "version": "0.1.0",
    "id": "intver_01KQ01G3YEPEXVNP2SFH49079G"
  },
  "quickbooks": {
    "version": "2.0.0",
    "id": "intver_01JFAR1E05TRXX8ZHQ52QMG2KJ"
  },
  "reachdesk": {
    "version": "2.0.0",
    "id": "intver_01JFAR1JD70W5VTGDEDGFQXKEB"
  },
  "resend": {
    "version": "0.1.10",
    "id": "intver_01KMZAQXVC4KP20TFCJNGY8PKV"
  },
  "revenuehero": {
    "version": "2.0.0",
    "id": "intver_01JFAR1PDG5ZQHDAT4PX3J67N5"
  },
  "rippling": {
    "version": "0.0.4",
    "id": "intver_01JBMK2M3NWMH63ZTQBSQSEXHB"
  },
  "sage": {
    "version": "2.0.0",
    "id": "intver_01JFAR8RTCW2P6C8VWSMN7FQFS"
  },
  "salesflare": {
    "version": "2.0.0",
    "id": "intver_01JFAR2316BGX6S5NS812P3K1Z"
  },
  "salesforce": {
    "version": "1.0.0",
    "id": "intver_01KN5FRKT6KRAB6RM9T34J70M2"
  },
  "salesloft": {
    "version": "2.0.0",
    "id": "intver_01JFAR27CFAGF2479ER2FSSDF7"
  },
  "sap": {
    "version": "2.0.0",
    "id": "intver_01JFAR2BP4TDJTAGWN841KBC1S"
  },
  "seismic": {
    "version": "2.0.0",
    "id": "intver_01JFAR2G7J0GAC6J69K8TN3429"
  },
  "sendgrid": {
    "version": "0.1.10",
    "id": "intver_01KMZAR5KN275G2NPSSFZ9WTSE"
  },
  "showpad": {
    "version": "2.0.0",
    "id": "intver_01JFAR2MD45546TPY7V2CPBAMD"
  },
  "sisense": {
    "version": "2.0.0",
    "id": "intver_01JFAR2RSBXRYQ5YX9JNTP4A9C"
  },
  "slack": {
    "version": "5.0.2",
    "id": "intver_01KQF3XKNH2W5EPAXK6G4CMW96"
  },
  "smartsheet": {
    "version": "2.0.0",
    "id": "intver_01JFAR2WXTE6FV2C2HP7V0WBTE"
  },
  "splunk": {
    "version": "0.0.4",
    "id": "intver_01JBMK2Y874WV5BGHXYN07HKHE"
  },
  "square": {
    "version": "2.0.0",
    "id": "intver_01JFARACGK6NT3YTKC5KVXVKX6"
  },
  "stripe": {
    "version": "0.5.6",
    "id": "intver_01KMZARNC46Y0CJTQNR5AA8AKD"
  },
  "sunco": {
    "version": "2.0.1",
    "id": "intver_01KMZARX5E90SJEDCQ6GKZ4ZBV"
  },
  "surveymonkey": {
    "version": "2.0.0",
    "id": "intver_01JFAR3A2K8BEMP4XHQ7F5R47R"
  },
  "tableau": {
    "version": "2.0.0",
    "id": "intver_01JFAR3E9K4XXVYFE7SSGT1C9E"
  },
  "tally": {
    "version": "0.1.2",
    "id": "intver_01KMZAS4KR8F34JNE9VP1HJXT9"
  },
  "teamleader": {
    "version": "2.0.0",
    "id": "intver_01JFAR3JKE5HAGV6TBCW7SV4QM"
  },
  "teams": {
    "version": "2.0.4",
    "id": "intver_01KMZASBVV28FFKB2227618RRM"
  },
  "teamviewer": {
    "version": "2.0.0",
    "id": "intver_01JFAR3PY3EBMYYBKQTZAHESXP"
  },
  "telegram": {
    "version": "1.0.7",
    "id": "intver_01KQYYDZKSAHXH5DRK1ES6CKNS"
  },
  "thryv": {
    "version": "2.0.0",
    "id": "intver_01JFAR3VQXXNJTR85472MM0RDY"
  },
  "todoist": {
    "version": "1.0.5",
    "id": "intver_01KMZASWGQHERWV5WESYJR1W1R"
  },
  "trello": {
    "version": "2.1.3",
    "id": "intver_01KMZAT7K4J1JWT5VCV838TFRN"
  },
  "twilio": {
    "version": "1.3.2",
    "id": "intver_01KMZATFC2J1KF4J3T93HPFKGF"
  },
  "vcita": {
    "version": "2.0.0",
    "id": "intver_01JFAR3ZXVBWKYYJ53W7C4E4VB"
  },
  "vercel": {
    "version": "2.0.0",
    "id": "intver_01JFAR44YN7JA1Z86S8CACVG5C"
  },
  "viber": {
    "version": "1.0.5",
    "id": "intver_01KMZATNKPMTPMYBQNZN6744N4"
  },
  "vonage": {
    "version": "1.0.4",
    "id": "intver_01KMZATWVPMNCXAF3XB72FNHKS"
  },
  "webchat": {
    "version": "0.3.0",
    "id": "intver_01JBVV0VQW8XN3Z5V9K8DB1M3B"
  },
  "webflow": {
    "version": "3.1.4",
    "id": "intver_01KMZAV5CCPAJKR8S1M36266M8"
  },
  "webhook": {
    "version": "1.1.5",
    "id": "intver_01KMZAVBMNBFJBA9SM7ATDS5R8"
  },
  "wechat": {
    "version": "0.1.1",
    "id": "intver_01KMZAVJTKWA8CQ8A7KFRDYR5X"
  },
  "whatsapp": {
    "version": "4.15.0",
    "id": "intver_01KRC1AEDCE4P5HTZP5G41495H"
  },
  "workable": {
    "version": "0.1.2",
    "id": "intver_01KMZAWAMH776SVXW1R98ABBHP"
  },
  "workday": {
    "version": "2.0.0",
    "id": "intver_01JFARBCCKWG9BS7DT2RBW9D7B"
  },
  "wrike": {
    "version": "2.0.0",
    "id": "intver_01JFAR4H5WXG78YBE7MEG967MW"
  },
  "zapier": {
    "version": "0.3.10",
    "id": "intver_01KMZAWN77ZX053EB5VJH7C9B9"
  },
  "zendesk": {
    "version": "3.0.6",
    "id": "intver_01KFGPZM7JH7PMSEBRSSM5C4H8"
  },
  "zendesk-messaging-hitl": {
    "version": "1.1.0",
    "id": "intver_01KPRHTAYTB64Z5QEDC1XZCSYH"
  },
  "zendesk-sell": {
    "version": "2.0.0",
    "id": "intver_01JFAR4NP3JGG1BPV4MFJ2HBC3"
  },
  "zoho": {
    "version": "3.1.4",
    "id": "intver_01KMZAX48A0JA4Q0CD3B7REDT0"
  },
  "zoom": {
    "version": "0.1.0",
    "id": "intver_01KNSQZR3F06SRHJY3BCN20JH9"
  }
};

{/* vale on */}

<OpenInHub integration={integrationVersions.klaviyo} />

The official Klaviyo integration allows your bot to interact with your Klaviyo account. You can use it to:

* Create or update user profiles
* Retrieve individual or bulk user profile data
* Subscribe users to SMS/email marketing

## Setup

<Info>
  You will need:

  * A [published bot](/get-started/quick-start)
  * A [Klaviyo account](https://www.klaviyo.com/sign-up)
</Info>

<Steps>
  <Step title="Install the integration in Botpress">
    First, install the integration to your bot:

    1. In Botpress Studio, select **Explore Hub** in the upper-right corner.
    2. Search for the **Klaviyo** integration, then select **Install Integration**.

    In the **Configuration** menu, you should see one field: **API Key**. Leave it empty for now—you'll come back to it after creating your Klaviyo API key.
  </Step>

  <Step title="Create a Klaviyo private API key">
    Next, create a private Klaviyo API key:

    1. [Log in to your Klaviyo account](https://www.klaviyo.com/login).
    2. Select your organization's name in the bottom-left corner.
    3. Select **Settings**. Then, navigate to **API keys**.
    4. Under **Private API Keys**, select **Create Private API Key**.
    5. Enter a name for the API key.
    6. Check **Full Access** for the following API scopes:
       * **Profiles**
       * **Subscriptions**
    7. Select **Create** in the upper-right corner.
    8. Copy the API key—it should start with `pk`.
  </Step>

  <Step title="Configure the integration in Botpress">
    Now, you can finish setting up the integration in Botpress:

    1. In the integration's **API Key** field, paste your Klaviyo API key.
    2. Select **Save Configuration**.
  </Step>
</Steps>

<Check>
  Your Klaviyo integration is ready. You can use the integration's [Cards](#cards) to interact with your Klaviyo account.
</Check>

***

## Cards

<Warning>
  If you use any of the following Cards in an [Autonomous Node](/studio/concepts/nodes/autonomous-node), keep in mind that your bot will fill in the Card's fields based on the user's responses. This can lead to unexpected behaviour for fields that have strict conventions.

  For example, the [Update Profile](#update-profile) Card lets you update [custom properties](#param-custom-properties-2) associated with a profile. If the user isn't specific about that property's exact name, the bot may accidentally create a new property instead of updating an existing one.
</Warning>

{/* vale off */}

Here's a reference for all [Cards](/studio/concepts/cards/introduction) available with the integration:

### Create Profile

<span>
  {"Create a profile in Klaviyo: either email or phone is required"}
</span>

<ResponseField name="input" type="object">
  <Expandable>
    <ResponseField name="email" type="string (email)">
      <span>
        {"The email of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="phone" type="string">
      <span>
        {"The phone number of the profile (E.164 format)"}
      </span>
    </ResponseField>

    <ResponseField name="firstName" type="string">
      <span>
        {"The first name of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="lastName" type="string">
      <span>
        {"The last name of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="organization" type="string">
      <span>
        {"The organization or company of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="title" type="string">
      <span>
        {"The job title of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="locale" type="string">
      <span>
        {"The locale of the profile in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)"}
      </span>
    </ResponseField>

    <ResponseField name="location" type="object">
      <span>
        {"Address information for the profile"}
      </span>

      <Expandable>
        <ResponseField name="address1" type="string">
          <span>
            {"First line of the address"}
          </span>
        </ResponseField>

        <ResponseField name="address2" type="string">
          <span>
            {"Second line of the address"}
          </span>
        </ResponseField>

        <ResponseField name="city" type="string">
          <span>
            {"City name"}
          </span>
        </ResponseField>

        <ResponseField name="country" type="string">
          <span>
            {"Country name"}
          </span>
        </ResponseField>

        <ResponseField name="region" type="string">
          <span>
            {"State or region"}
          </span>
        </ResponseField>

        <ResponseField name="zip" type="string">
          <span>
            {"Postal or ZIP code"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="customProperties" type="string">
      <span>
        {"Custom key-value pairs to store with the profile (JSON string)"}
      </span>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="output" type="object">
  <Expandable>
    <ResponseField name="profile" type="object" required>
      <span>
        {"The created profile"}
      </span>

      <Expandable>
        <ResponseField name="id" type="string" required>
          <span>
            {"The unique (Klaviyo) identifier of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="email" type="string (email)">
          <span>
            {"The email of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="phone" type="string">
          <span>
            {"The phone number of the profile (E.164 format)"}
          </span>
        </ResponseField>

        <ResponseField name="firstName" type="string">
          <span>
            {"The first name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="lastName" type="string">
          <span>
            {"The last name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="organization" type="string">
          <span>
            {"The organization or company of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="title" type="string">
          <span>
            {"The job title of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="locale" type="string">
          <span>
            {"The locale of the profile in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)"}
          </span>
        </ResponseField>

        <ResponseField name="location" type="object">
          <span>
            {"Address information for the profile"}
          </span>

          <Expandable>
            <ResponseField name="address1" type="string">
              <span>
                {"First line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="address2" type="string">
              <span>
                {"Second line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="city" type="string">
              <span>
                {"City name"}
              </span>
            </ResponseField>

            <ResponseField name="country" type="string">
              <span>
                {"Country name"}
              </span>
            </ResponseField>

            <ResponseField name="region" type="string">
              <span>
                {"State or region"}
              </span>
            </ResponseField>

            <ResponseField name="zip" type="string">
              <span>
                {"Postal or ZIP code"}
              </span>
            </ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="customProperties" type="object">
          <span>
            {"Custom key-value pairs to store with the profile"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

### Get Profile

<span>
  {"Get a profile in Klaviyo"}
</span>

<ResponseField name="input" type="object">
  <Expandable>
    <ResponseField name="profileId" type="string" required>
      <span>
        {"The unique (Klaviyo) identifier of the profile"}
      </span>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="output" type="object">
  <Expandable>
    <ResponseField name="profile" type="object" required>
      <span>
        {"The retrieved profile"}
      </span>

      <Expandable>
        <ResponseField name="id" type="string" required>
          <span>
            {"The unique (Klaviyo) identifier of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="email" type="string (email)">
          <span>
            {"The email of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="phone" type="string">
          <span>
            {"The phone number of the profile (E.164 format)"}
          </span>
        </ResponseField>

        <ResponseField name="firstName" type="string">
          <span>
            {"The first name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="lastName" type="string">
          <span>
            {"The last name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="organization" type="string">
          <span>
            {"The organization or company of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="title" type="string">
          <span>
            {"The job title of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="locale" type="string">
          <span>
            {"The locale of the profile in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)"}
          </span>
        </ResponseField>

        <ResponseField name="location" type="object">
          <span>
            {"Address information for the profile"}
          </span>

          <Expandable>
            <ResponseField name="address1" type="string">
              <span>
                {"First line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="address2" type="string">
              <span>
                {"Second line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="city" type="string">
              <span>
                {"City name"}
              </span>
            </ResponseField>

            <ResponseField name="country" type="string">
              <span>
                {"Country name"}
              </span>
            </ResponseField>

            <ResponseField name="region" type="string">
              <span>
                {"State or region"}
              </span>
            </ResponseField>

            <ResponseField name="zip" type="string">
              <span>
                {"Postal or ZIP code"}
              </span>
            </ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="customProperties" type="object">
          <span>
            {"Custom key-value pairs to store with the profile"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

### Get Profiles

<span>
  {"Get profiles using filters in Klaviyo"}
</span>

<ResponseField name="input" type="object">
  <Expandable>
    <ResponseField name="filterField" type="enum<string>" required>
      <span>
        {"The field to filter on"}
      </span>

      Available options: `id`, `email`, `phone_number`, `external_id`, `created`, `updated`
    </ResponseField>

    <ResponseField name="filterOperator" type="enum<string>" required>
      <span>
        {"The comparison operator to use"}
      </span>

      Available options: `equals`, `greater-than`, `less-than`, `greater-or-equal`, `less-or-equal`, `contains`, `starts-with`, `ends-with`
    </ResponseField>

    <ResponseField name="filterValue" type="string | string" required>
      <span>
        {"The value to compare against"}
      </span>
    </ResponseField>

    <ResponseField name="pageSize" type="integer">
      <span>
        {"Number of profiles to return per page (1-100, default: 20)"}
      </span>
    </ResponseField>

    <ResponseField name="sort" type="enum<string>">
      <span>
        {"Sort profiles by field. Prefix with - for descending order"}
      </span>

      Available options: `created`, `-created`, `email`, `-email`, `id`, `-id`, `subscriptions.email.marketing.list_suppressions.timestamp`, `-subscriptions.email.marketing.list_suppressions.timestamp`, `subscriptions.email.marketing.suppression.timestamp`, `-subscriptions.email.marketing.suppression.timestamp`, `updated`, `-updated`
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="output" type="object">
  <Expandable>
    <ResponseField name="profiles" type="array" required>
      <span>
        {"Array of profiles matching the criteria"}
      </span>

      <Expandable title="array item properties">
        <ResponseField name="id" type="string" required>
          <span>
            {"The unique (Klaviyo) identifier of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="email" type="string (email)">
          <span>
            {"The email of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="phone" type="string">
          <span>
            {"The phone number of the profile (E.164 format)"}
          </span>
        </ResponseField>

        <ResponseField name="firstName" type="string">
          <span>
            {"The first name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="lastName" type="string">
          <span>
            {"The last name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="organization" type="string">
          <span>
            {"The organization or company of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="title" type="string">
          <span>
            {"The job title of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="locale" type="string">
          <span>
            {"The locale of the profile in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)"}
          </span>
        </ResponseField>

        <ResponseField name="location" type="object">
          <span>
            {"Address information for the profile"}
          </span>

          <Expandable>
            <ResponseField name="address1" type="string">
              <span>
                {"First line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="address2" type="string">
              <span>
                {"Second line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="city" type="string">
              <span>
                {"City name"}
              </span>
            </ResponseField>

            <ResponseField name="country" type="string">
              <span>
                {"Country name"}
              </span>
            </ResponseField>

            <ResponseField name="region" type="string">
              <span>
                {"State or region"}
              </span>
            </ResponseField>

            <ResponseField name="zip" type="string">
              <span>
                {"Postal or ZIP code"}
              </span>
            </ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="customProperties" type="object">
          <span>
            {"Custom key-value pairs to store with the profile"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

### Subscribe Profiles

<span>
  {"Subscribe profiles asynchronously to a SMS and/or email marketing in Klaviyo"}
</span>

<ResponseField name="input" type="object">
  <Expandable>
    <ResponseField name="profileSubscriptions" type="array" required>
      <span>
        {"The list of profiles and Email/SMS consent to use to subscribe Email/SMS marketing"}
      </span>

      <Expandable title="array item properties">
        <ResponseField name="id" type="string" required>
          <span>
            {"The unique (Klaviyo) identifier of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="email" type="string (email)">
          <span>
            {"The email of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="phone" type="string">
          <span>
            {"The phone number of the profile (E.164 format)"}
          </span>
        </ResponseField>

        <ResponseField name="emailConsent" type="boolean" required>
          <span>
            {"Whether the profile has consented to email"}
          </span>
        </ResponseField>

        <ResponseField name="smsConsent" type="boolean" required>
          <span>
            {"Whether the profile has consented to SMS"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="listId" type="string">
      <span>
        {"An optional list id to add the subscribed profiles to"}
      </span>
    </ResponseField>

    <ResponseField name="historicalImport" type="boolean" default={false}>
      <span>
        {"Whether to import historical profiles (true = existing subscribers with timestamp, false = new real-time opt-ins)"}
      </span>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="output" type="object">
  <Expandable>
    <ResponseField name="success" type="boolean" required>
      <span>
        {"Whether the job to subscribe the profiles has been successfully scheduled"}
      </span>
    </ResponseField>
  </Expandable>
</ResponseField>

### Update Profile

<span>
  {"Update a profile in Klaviyo"}
</span>

<ResponseField name="input" type="object">
  <Expandable>
    <ResponseField name="profileId" type="string" required>
      <span>
        {"The unique (Klaviyo) identifier of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="email" type="string (email)">
      <span>
        {"The email of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="phone" type="string">
      <span>
        {"The phone number of the profile (E.164 format)"}
      </span>
    </ResponseField>

    <ResponseField name="firstName" type="string">
      <span>
        {"The first name of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="lastName" type="string">
      <span>
        {"The last name of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="organization" type="string">
      <span>
        {"The organization or company of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="title" type="string">
      <span>
        {"The job title of the profile"}
      </span>
    </ResponseField>

    <ResponseField name="locale" type="string">
      <span>
        {"The locale of the profile in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)"}
      </span>
    </ResponseField>

    <ResponseField name="location" type="object">
      <span>
        {"Address information for the profile"}
      </span>

      <Expandable>
        <ResponseField name="address1" type="string">
          <span>
            {"First line of the address"}
          </span>
        </ResponseField>

        <ResponseField name="address2" type="string">
          <span>
            {"Second line of the address"}
          </span>
        </ResponseField>

        <ResponseField name="city" type="string">
          <span>
            {"City name"}
          </span>
        </ResponseField>

        <ResponseField name="country" type="string">
          <span>
            {"Country name"}
          </span>
        </ResponseField>

        <ResponseField name="region" type="string">
          <span>
            {"State or region"}
          </span>
        </ResponseField>

        <ResponseField name="zip" type="string">
          <span>
            {"Postal or ZIP code"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="customProperties" type="string">
      <span>
        {"Custom key-value pairs to store with the profile (JSON string)"}
      </span>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="output" type="object">
  <Expandable>
    <ResponseField name="profile" type="object" required>
      <span>
        {"The updated profile"}
      </span>

      <Expandable>
        <ResponseField name="id" type="string" required>
          <span>
            {"The unique (Klaviyo) identifier of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="email" type="string (email)">
          <span>
            {"The email of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="phone" type="string">
          <span>
            {"The phone number of the profile (E.164 format)"}
          </span>
        </ResponseField>

        <ResponseField name="firstName" type="string">
          <span>
            {"The first name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="lastName" type="string">
          <span>
            {"The last name of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="organization" type="string">
          <span>
            {"The organization or company of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="title" type="string">
          <span>
            {"The job title of the profile"}
          </span>
        </ResponseField>

        <ResponseField name="locale" type="string">
          <span>
            {"The locale of the profile in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)"}
          </span>
        </ResponseField>

        <ResponseField name="location" type="object">
          <span>
            {"Address information for the profile"}
          </span>

          <Expandable>
            <ResponseField name="address1" type="string">
              <span>
                {"First line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="address2" type="string">
              <span>
                {"Second line of the address"}
              </span>
            </ResponseField>

            <ResponseField name="city" type="string">
              <span>
                {"City name"}
              </span>
            </ResponseField>

            <ResponseField name="country" type="string">
              <span>
                {"Country name"}
              </span>
            </ResponseField>

            <ResponseField name="region" type="string">
              <span>
                {"State or region"}
              </span>
            </ResponseField>

            <ResponseField name="zip" type="string">
              <span>
                {"Postal or ZIP code"}
              </span>
            </ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="customProperties" type="object">
          <span>
            {"Custom key-value pairs to store with the profile"}
          </span>
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>
