PageSourceSearch

https://promptql.io/_next/static/chunks/pages/integrations/slack.192470f8485daa9c.1790305017545.js

js promptql.io collected 2026-09-25 14:01:59 UTC 16,482 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3005],{3793:function(e,t,s){(window.__NEXT_P=window.__NEXT_P||[]).push(["/integrations/slack",function(){return s(54113)}])},54113:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return v}});var a=s(85893),r=s(67294),l=s(41664),n=s.n(l),i=s(11163),o=s(41766),c=s(2593),d=s(67363),x=s(82920);let h={meta_title:"PromptQL for Slack - data source and bot setup",meta_description:"Use Slack with PromptQL in two ways: connect Slack as a data source inside PromptQL, or add the PromptQL bot to Slack for notifications and direct interaction.",canonical_url:"https://promptql.io/integrations/slack",meta_image:{data:{attributes:{url:"https://promptql.io/og/integrations.png"}}}},m="slack-bot-instructions",p="slack-data-source",u=[{id:p,label:"Section 1",title:"Slack as a data source in PromptQL",description:"Connect Slack inside PromptQL so it can search Slack messages and answer questions in natural language like any other data source.",cta:"View data-source setup"},{id:m,label:"Section 2",title:"PromptQL bot in Slack",description:"Add PromptQL directly to Slack so users get thread activity notifications and can interact with PromptQL without leaving Slack.",cta:"View bot setup"}],b=[(0,a.jsxs)(a.Fragment,{children:["Click on ",(0,a.jsx)("strong",{children:"Data"})," in the left pane."]}),(0,a.jsxs)(a.Fragment,{children:["Search for ",(0,a.jsx)("strong",{children:"Slack"})," in integrations."]}),(0,a.jsxs)(a.Fragment,{children:["Click on ",(0,a.jsx)("strong",{children:"Connect"})," in the Slack card."]}),(0,a.jsx)(a.Fragment,{children:"Complete the OAuth flow."}),(0,a.jsx)(a.Fragment,{children:"Once complete, Slack will be connected and can be queried using natural language like any other data source."})],f=[(0,a.jsxs)(a.Fragment,{children:["Click on the ",(0,a.jsx)("strong",{children:"Settings"})," icon in the left pane (towards the top)."]}),(0,a.jsxs)(a.Fragment,{children:["Click on ",(0,a.jsx)("strong",{children:"Slack Integration"}),"."]}),(0,a.jsx)(a.Fragment,{children:"Follow the instructions on the page to connect the bot."})],g=["Send users notifications on Slack when their threads have activity in PromptQL.","Allow users to interact with PromptQL directly from Slack."],j=["What did customers say about onboarding last week in Slack?","Summarize the top blockers mentioned in the engineering channels this month."],y=e=>{let{className:t="w-6 h-6"}=e;return(0,a.jsxs)("svg",{viewBox:"0 0 24 24",className:t,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,a.jsx)("path",{d:"M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zM6.313 15.165a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313z",fill:"#E01E5A"}),(0,a.jsx)("path",{d:"M8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zM8.834 6.313a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312z",fill:"#36C5F0"}),(0,a.jsx)("path",{d:"M18.956 8.834a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zM17.688 8.834a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312z",fill:"#2EB67D"}),(0,a.jsx)("path",{d:"M15.165 18.956a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zM15.165 17.688a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z",fill:"#ECB22E"})]})},w=e=>{let{className:t="w-4 h-4"}=e;return(0,a.jsx)("svg",{viewBox:"0 0 24 24",className:t,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,a.jsx)("path",{d:"M7 17L17 7M17 7H9M17 7V15",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})};function N(e){let{id:t,label:s,title:r,description:l,cta:n,onClick:i}=e;return(0,a.jsxs)("a",{href:"#".concat(t),onClick:i,className:"group relative flex h-full flex-col gap-5 rounded-2xl border border-[#
1E5E5E5] bg-white p-7 transition-all duration-200 hover:border-[#1F212B] hover:shadow-sm",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsxs)("div",{className:"inline-flex items-center gap-2 rounded-full border border-[#E5E5E5] bg-[#F9FAFB] px-3 py-1.5",children:[(0,a.jsx)(y,{className:"h-4 w-4"}),(0,a.jsx)(d.Z,{textStyle:"eyebrow2",className:"text-[#6B7280]",children:s})]}),(0,a.jsx)("span",{className:"flex h-9 w-9 items-center justify-center rounded-full bg-surface text-[#4B5563] transition-all duration-200 group-hover:bg-[#1F212B] group-hover:text-white",children:(0,a.jsx)(w,{className:"h-4 w-4"})})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(d.Z,{textStyle:"body2-title",as:"h2",className:"pb-2 text-[#030712]",children:r}),(0,a.jsx)(d.Z,{textStyle:"body2",className:"text-[#4B5563]",children:l})]}),(0,a.jsxs)(d.Z,{textStyle:"body3",className:"inline-flex items-center gap-1.5 !font-medium text-[#1F212B]",children:[n,(0,a.jsx)(w,{className:"h-3.5 w-3.5 transition-transform duration-200 group-hover:translate-x-0.5 group-hover:-translate-y-0.5"})]})]})}function k(e){let{steps:t}=e;return(0,a.jsx)("ol",{className:"flex flex-col gap-4",children:t.map((e,t)=>(0,a.jsxs)("li",{className:"flex gap-4 rounded-2xl border border-[#E5E5E5] bg-white p-5",children:[(0,a.jsx)("div",{className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-[#1F212B]",children:(0,a.jsx)(d.Z,{textStyle:"eyebrow2",className:"text-white",children:t+1})}),(0,a.jsx)(d.Z,{textStyle:"body2",className:"text-[#4B5563]",children:e})]},t))})}function v(){let e="true"===(0,i.useRouter)().query.installed,t=e=>{let t=e.currentTarget.getAttribute("href");if(!(null==t?void 0:t.startsWith("#")))return;let s=t.slice(1),a=document.getElementById(s);a&&(e.preventDefault(),a.scrollIntoView({behavior:"smooth",block:"start"}),window.history.pushState(null,"",t))};return(0,r.useEffect)(()=>{if(e){var t;null===(t=document.getElementById(m))||void 0===t||t.scrollIntoView({behavior:"smooth",block:"start"})}},[e]),(0,a.jsxs)(o.Z,{removeTrustedBrands:!0,footerBgClass:"bg-surface",children:[(0,a.jsx)(c.T,{...h}),e&&(0,a.jsxs)("div",{className:"fixed left-0 right-0 top-0 z-50 flex items-center justify-center gap-3 border-b border-[#A7F3D0] bg-[#ECFDF5] px-6 py-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"flex h-5 w-5 flex-shrink-0 items-center justify-center rounded-full bg-[#10B981]",children:(0,a.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,a.jsx)("path",{d:"M2 5l2.5 2.5L8 3",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,a.jsx)(d.Z,{textStyle:"body3",className:"text-[#065F46] !font-medium",children:"PromptQL has been added to your Slack workspace!"})]}),(0,a.jsx)(d.Z,{textStyle:"body3",className:"hidden text-[#6B7280] sm:block",children:"Follow the bot setup steps below."}),(0,a.jsx)("a",{href:"#".concat(m),onClick:t,className:"ml-2 flex-shrink-0 text-xs font-medium text-[#065F46] underline underline-offset-2 transition-colors hover:text-[#047857]",children:"View steps →"})]}),(0,a.jsx)("div",{className:"bg-white px-6 pb-16 pt-[168px] md:pb-20",children:(0,a.jsx)("div",{className:"mx-auto max-w-[1060px]",children:(0,a.jsxs)("div",{className:"relative py-12 md:py-16",children:[(0,a.jsx)(x.Z,{delay:0,children:(0,a.jsx)("div",{className:"flex items-center justify-center gap-3 pb-6",children:(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-full border border-[#E5E5E5] bg-[#F9FAFB] px-4 py-2",children:[(0,a.jsx)(y,{className:"w-5 h-5"}),(0,a.jsx)(d.Z,{textStyle:"eyebrow1",className:"text-[#6B7280]",children:"Slack Integration"})]})})}),(0,a.jsx)(x.Z,{delay:100,children:(0,a.jsx)(d.Z,{textStyle:"h1",as:"h1",className:"mx-auto max-w-[760px] pb-6 text-center text-[#030712]",children:"Use Slack with PromptQL in two distinct ways"})}),(0,a.jsx)(x.Z,{delay:200,children:(0,a.jsx)(d.Z,{textStyle:"caption",as:"p",className:"mx-auto max-w-[720px] pb-10 text-center text-[#4B5563]",children:"Connect Slack as a data source inside PromptQL so you can query Slack messages in natural language, or add the PromptQL bot to Slack for notifications and direct interaction."})}),(0,a.jsxs)(x.Z,{delay:300,children:[(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-4 sm:flex-row",children:[(0,a.jsxs)("a",{href:"#".concat(m),onClick:t,className:"inline-flex h-12 items-center justify-center gap-2.5 rounded-lg bg-[#4A154B] px-6 py-2.5 text-base font-medium text-white transition-all duration-200 ease-in-out hover:bg-[#3d1240]","aria-label":"Add PromptQL to Slack",children:[(0,a.jsx)(y,{className:"w-5 h-5"}),"Add to Slack"]}),(0,a.jsx)("a",{href:"#".concat(p),onClick:t,className:"inline-flex h-11 items-center justify-center rounded-full border border-[#D1D5DB] bg-white px-6 py-2 font-medium text-[#1F212B] transition-all duration-200 ease-in-out hover:bg-[#F5F5F5]",children:"View data-source setup"})]}),(0,a.jsx)(d.Z,{textStyle:"body3",className:"mt-4 text-center text-[#6B7280]",children:"Follow the setup path that matches how y
1ou want to use Slack."})]})]})})}),(0,a.jsx)("div",{className:"bg-white px-6 pb-20 md:pb-24",children:(0,a.jsx)("div",{className:"mx-auto grid max-w-[1060px] grid-cols-1 gap-6 md:grid-cols-2",children:u.map((e,s)=>(0,a.jsx)(N,{...e,onClick:t},e.id))})}),(0,a.jsx)("div",{id:p,className:"scroll-mt-36 bg-surface px-6 py-20 md:py-24",children:(0,a.jsxs)("div",{className:"mx-auto grid max-w-[1060px] grid-cols-1 items-start gap-10 lg:grid-cols-[0.95fr_1.05fr] lg:gap-16",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(d.Z,{textStyle:"eyebrow1",className:"pb-4 text-[#6B7280]",children:"Section 1"}),(0,a.jsx)(d.Z,{textStyle:"section-title",as:"h2",className:"pb-6 text-[#030712]",children:"Slack as a data source in PromptQL"}),(0,a.jsx)(d.Z,{textStyle:"body1",className:"pb-8 text-[#4B5563]",children:"When Slack is added as an integration to PromptQL, PromptQL can query messages from Slack to answer questions in natural language."}),(0,a.jsxs)("div",{className:"rounded-2xl border border-[#E5E5E5] bg-white p-6",children:[(0,a.jsx)(d.Z,{textStyle:"body2-title",as:"h3",className:"pb-3 text-[#030712]",children:"Use case"}),(0,a.jsx)(d.Z,{textStyle:"body2",className:"text-[#4B5563]",children:"Slack becomes another searchable data source in PromptQL, so users can ask questions in English and get answers grounded in Slack conversations."}),(0,a.jsx)("div",{className:"mt-5 flex flex-col gap-3",children:j.map(e=>(0,a.jsxs)("div",{className:"flex items-start gap-3 rounded-xl border border-[#E5E5E5] bg-[#F9FAFB] px-4 py-3",children:[(0,a.jsx)(y,{className:"mt-0.5 h-4 w-4 flex-shrink-0"}),(0,a.jsx)(d.Z,{textStyle:"body3",className:"italic text-[#6B7280]",children:e})]},e))})]})]}),(0,a.jsxs)("div",{className:"rounded-3xl border border-[#E5E5E5] bg-[#F9FAFB] p-8",children:[(0,a.jsx)(d.Z,{textStyle:"body2-title",as:"h3",className:"pb-6 text-[#030712]",children:"Instructions to add Slack as an integration"}),(0,a.jsx)(k,{steps:b})]})]})}),(0,a.jsx)("div",{id:m,className:"scroll-mt-36 bg-white px-6 py-20 md:py-24",children:(0,a.jsxs)("div",{className:"mx-auto grid max-w-[1060px] grid-cols-1 items-start gap-10 lg:grid-cols-[0.95fr_1.05fr] lg:gap-16",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(d.Z,{textStyle:"eyebrow1",className:"pb-4 text-[#6B7280]",children:"Section 2"}),(0,a.jsx)(d.Z,{textStyle:"section-title",as:"h2",className:"pb-6 text-[#030712]",children:"PromptQL bot in Slack"}),(0,a.jsx)(d.Z,{textStyle:"body1",className:"pb-8 text-[#4B5563]",children:"When PromptQL is added as a bot to Slack, it can notify users about thread activity in PromptQL and let them interact with PromptQL directly from Slack."}),(0,a.jsxs)("div",{className:"rounded-2xl border border-[#E5E5E5] bg-[#F9FAFB] p-6",children:[(0,a.jsx)(d.Z,{textStyle:"body2-title",as:"h3",className:"pb-4 text-[#030712]",children:"Use case"}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:g.map(e=>(0,a.jsxs)("div",{className:"flex gap-3",children:[(0,a.jsx)("div",{className:"mt-0.5 flex h-5 w-5 flex-shrink-0 items-center justify-center rounded-full bg-[#ECFDF5]",children:(0,a.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,a.jsx)("path",{d:"M2 5l2.5 2.5L8 3",stroke:"#10B981",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,a.jsx)(d.Z,{textStyle:"body2",className:"text-[#4B5563]",children:e})]},e))})]})]}),(0,a.jsxs)("div",{className:"rounded-3xl border border-[#E5E5E5] bg-surface p-8",children:[(0,a.jsx)(d.Z,{textStyle:"body2-title",as:"h3",className:"pb-6 text-[#030712]",children:"Instructions to add PromptQL bot to Slack"}),(0,a.jsx)(k,{steps:f})]})]})}),(0,a.jsx)("div",{className:"bg-[#1F212B] px-6 py-20 md:py-24",children:(0,a.jsxs)("div",{className:"mx-auto max-w-[1060px] text-center",children:[(0,a.jsx)(d.Z,{textStyle:"section-title",as:"h2",className:"mx-auto max-w-[560px] pb-4 text-white",children:"Start with the Slack workflow that fits your team"}),(0,a.jsx)(d.Z,{textStyle:"body1",as:"p",className:"mx-auto max-w-[520px] pb-10 text-[rgba(255,255,255,0.6)]",children:"Use Slack as a searchable data source in PromptQL, or connect the PromptQL bot to Slack for notifications and direct interaction."}),(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-4 sm:flex-row",children:[(0,a.jsxs)("a",{href:"#".concat(m),onClick:t,className:"inline-flex h-12 items-center justify-center gap-2.5 rounded-lg bg-[#4A154B] px-6 py-2.5 text-base font-medium text-white transition-all duration-200 ease-in-out hover:bg-[#3d1240]","aria-label":"Add PromptQL to Slack",children:[(0,a.jsx)(y,{className:"w-5 h-5"}),"Add to Slack"]}),(0,a.jsx)(n(),{href:"/book-demo",className:"inline-flex h-11 items-center justify-center rounded-full border border-[rgba(255,255,255,0.3)] bg-transparent px-6 py-2 font-medium text-white transition-all duration-200 ease-in-out hover:bg-[rgba(255,255,255,0.08)]",children:"Request a demo"})]})]})}),(0,a.jsx)("div",{className:"bg-surface px-6 pb-10 pt-12",children:(0,a.jsx)("div",{className:"mx-auto max-w-[1060px]",children:(0,a.jsx)("div",{className:"mx-auto max-w-[720px] rounded-2xl border border-[#
1E5E5E5] bg-[#F9FAFB] px-5 py-4 text-left",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-start sm:gap-3",children:[(0,a.jsx)("span",{className:"inline-flex w-fit items-center rounded-full border border-[#E5E5E5] bg-white px-2.5 py-1",children:(0,a.jsx)(d.Z,{textStyle:"eyebrow2",className:"text-[#6B7280]",children:"Note"})}),(0,a.jsx)(d.Z,{textStyle:"body3",className:"text-[#4B5563]",children:"AI-generated responses may not always be accurate. PromptQL mitigates this through deterministic execution, full reasoning transparency, and traceable data sources."})]})})})}),(0,a.jsx)("div",{className:"border-t border-[#E5E5E5] bg-surface px-6 py-10",children:(0,a.jsxs)("div",{className:"mx-auto flex max-w-[1060px] flex-col items-center justify-center gap-4 sm:flex-row sm:gap-8",children:[(0,a.jsx)(n(),{href:"https://hasura.io/legal/hasura-privacy-policy",className:"text-[14px] text-[#6B7280] transition-colors duration-150 hover:text-[#030712]",children:"Privacy Policy"}),(0,a.jsx)("span",{className:"hidden text-[#D1D5DB] sm:block",children:"\xb7"}),(0,a.jsx)(n(),{href:"/support",className:"text-[14px] text-[#6B7280] transition-colors duration-150 hover:text-[#030712]",children:"Support"}),(0,a.jsx)("span",{className:"hidden text-[#D1D5DB] sm:block",children:"\xb7"}),(0,a.jsx)(n(),{href:"/contact-us",className:"text-[14px] text-[#6B7280] transition-colors duration-150 hover:text-[#030712]",children:"Contact Us"}),(0,a.jsx)("span",{className:"hidden text-[#D1D5DB] sm:block",children:"\xb7"}),(0,a.jsx)(n(),{href:"/integrations",className:"text-[14px] text-[#6B7280] transition-colors duration-150 hover:text-[#030712]",children:"All Integrations"})]})})]})}},65500:function(e){e.exports={style:{fontFamily:"'__Inter_f367f3', '__Inter_Fallback_f367f3'",fontStyle:"normal"},className:"__className_f367f3"}}},function(e){e.O(0,[9560,2714,5276,9555,4658,2888,9774,179],function(){return e(e.s=3793)}),_N_E=e.O()}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.