1"use strict";(self.webpackChunkchatmaven=self.webpackChunkchatmaven||[]).push([[9609],{28453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>o});var s=i(96540);const l={},r=s.createContext(l);function t(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:t(e.components),s.createElement(r.Provider,{value:n},e.children)}},87334:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>a,frontMatter:()=>t,metadata:()=>s,toc:()=>c});const s=JSON.parse('{"id":"developer-guides/introduction","title":"Developer Guide Introduction","description":"Welcome to the ChatMaven Developer Guide! This documentation will help you integrate ChatMaven\'s powerful AI capabilities into your applications and customize the platform to meet your specific needs.","source":"@site/docs/developer-guides/introduction.md","sourceDirName":"developer-guides","slug":"/developer-guides/introduction","permalink":"/developer-guides/introduction","draft":false,"unlisted":false,"tags":[],"version":"current","sidebarPosition":1,"frontMatter":{"sidebar_position":1},"sidebar":"docs","previous":{"title":"Workspace Agents","permalink":"/account-team/workspaces/workspace-agents"},"next":{"title":"API Reference","permalink":"/developer-guides/api-reference"}}');var l=i(74848),r=i(28453);const t={sidebar_position:1},o="Developer Guide Introduction",d={},c=[{value:"Overview",id:"overview",level:2},{value:"What You Can Build",id:"what-you-can-build",level:3},{value:"Getting Started",id:"getting-started",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Core Concepts",id:"core-concepts",level:2},{value:"Architecture",id:"architecture",level:3},{value:"Development Tools",id:"development-tools",level:2},{value:"SDKs and Libraries",id:"sdks-and-libraries",level:3},{value:"Integration Options",id:"integration-options",level:2},{value:"Methods",id:"methods",level:3},{value:"Best Practices",id:"best-practices",level:2},{value:"Development Guidelines",id:"development-guidelines",level:3},{value:"Quick Start Guides",id:"quick-start-guides",level:2},{value:"Common Tasks",id:"common-tasks",level:3},{value:"Next Steps",id:"next-steps",level:2},{value:"Explore Documentation",id:"explore-documentation",level:3},{value:"Additional Resources",id:"additional-resources",level:3},{value:"Support",id:"support",level:2},{value:"Getting Help",id:"getting-help",level:3},{value:"FAQ and troubleshooting",id:"faq-and-troubleshooting",level:2},{value:"Where do I start if I am new to the ChatMaven API?",id:"where-do-i-start-if-i-am-new-to-the-chatmaven-api",level:3},{value:"Do I need a custom integration or is the REST API enough?",id:"do-i-need-a-custom-integration-or-is-the-rest-api-enough",level:3},{value:"Who can I contact for developer support?",id:"who-can-i-contact-for-developer-support",level:3}];function h(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",hr:"hr",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"developer-guide-introduction",children:"Developer Guide Introduction"})}),"\n",(0,l.jsx)(n.p,{children:"Welcome to the ChatMaven Developer Guide! This documentation will help you integrate ChatMaven's powerful AI capabilities into your applications and customize the platform to meet your specific needs."}),"\n",(0,l.jsx)(n.h2,{id:"overview",children:"Overview"}),"\n",(0,l.jsx)(n.h3,{id:"what-you-can-build",children:"What You Can Build"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Custom chat interfaces"}),"\n",(0,l.jsx)(n.li,{children:"API integrations"}),"\n",(0,l.jsx)(n.li,{children:"Platform extensions"}),"\n",(0,l.jsx)(n.li,{children:"Data connectors"}),"\n",(0,l.jsx)(n.li,{children:"Custom analytics"}),"\n",(0,l.jsx)(n.li,{children:"Automated workflows"}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"getting-started",children:"Getting Started"}),"\n",(0,l.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Account Setup"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"ChatMaven account"}),"\n",(0,l.jsx)(n.li,{children:"API credentials"}),"\n",(0,l.jsx)(n.li,{children:"Development environment"}),"\n",(0,l.jsx)(n.li,{children:"Basic tools"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Technical Requirements"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"HTTP client"}),"\n",(0,l.jsx)(n.li,{children:"Programming language"}),"\n",(0,l.jsx)(n.li,{children:"Development tools"}),"\n",(0,l.jsx)(n.li,{children:"Version control"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Knowledge Base"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"REST APIs"}),"\n",(0,l.jsx)(n.li,{children:"WebSockets"}),"\n",(0,l.jsx)(n.li,{children:"OAuth 2.0"}),"\n",(0,l.jsx)(n.li,{children:"JSON"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"core-concepts",children:"Core Concepts"}),"\n",(0,l.jsx)(n.h3,{id:"architecture",children:"Architecture"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Components"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Chat widget"}),"\n",(0,l.jsx)(n.li,{children:"API endpoints"}),"\n",(0,l.jsx)(n.li,{children:"Webhooks"}),"\n",(0,l.jsx)(n.li,{children:"Event system"}),"\n",(0,l.jsx)(n.li,{children:"Data storage"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Authentication"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"API keys"}),"\n",(0,l.jsx)(n.li,{children:"OAuth tokens"}),"\n",(0,l.jsx)(n.li,{children:"JWT"}),"\n",(0,l.jsx)(n.li,{children:"Session management"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Data Flow"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Request handling"}),"\n",(0,l.jsx)(n.li,{children:"Response generation"}),"\n",(0,l.jsx)(n.li,{children:"Event processing"}),"\n",(0,l.jsx)(n.li,{children:"Error handling"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"development-tools",children:"Development Tools"}),"\n",(0,l.jsx)(n.h3,{id:"sdks-and-libraries",children:"SDKs and Libraries"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Official SDKs"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"JavaScript"}),"\n",(0,l.jsx)(n.li,{children:"Python"}),"\n",(0,l.jsx)(n.li,{children:"Java"}),"\n",(0,l.jsx)(n.li,{children:"PHP"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Community Libraries"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Node.js"}),"\n",(0,l.jsx)(n.li,{children:"Ruby"}),"\n",(0,l.jsx)(n.li,{children:"Go"}),"\n",(0,l.jsx)(n.li,{children:".NET"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Development Kits"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Widget SDK"}),"\n",(0,l.jsx)(n.li,{children:"Mobile SDK"}),"\n",(0,l.jsx)(n.li,{children:"Analytics SDK"}),"\n",(0,l.jsx)(n.li,{children:"Integration SDK"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"integration-options",children:"Integration Options"}),"\n",(0,l.jsx)(n.h3,{id:"methods",children:"Methods"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Direct Integration"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"REST API"}),"\n",(0,l.jsx)(n.li,{children:"WebSocket"}),"\n",(0,l.jsx)(n.li,{children:"Webhooks"}),"\n",(0,l.jsx)(n.li,{children:"SDK usage"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Platform Integration"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Website embedding"}),"\n",(0,l.jsx)(n.li,{children:"Mobile apps"}),"\n",(0,l.jsx)(n.li,{children:"Desktop applications"}),"\n",(0,l.jsx)(n.li,{children:"Cloud services"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Custom Solutions"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Custom endpoints"}),"\n",(0,l.jsx)(n.li,{children:"Data pipelines"}),"\n",(0,l.jsx)(n.li,{children:"Analytics integration"}),"\n",(0,l.jsx)(n.li,{children:"Security implementation"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"best-practices",children:"Best Practices"}),"\n",(0,l.jsx)(n.h3,{id:"development-guidelines",children:"Development Guidelines"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Code Quality"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Clean code"}),"\n",(0,l.jsx)(n.li,{children:"Documentation"}),"\n",(0,l.jsx)(n.li,{children:"Testing"}),"\n",(0,l.jsx)(n.li,{children:"Version control"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Security"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"API
1security"}),"\n",(0,l.jsx)(n.li,{children:"Data protection"}),"\n",(0,l.jsx)(n.li,{children:"Error handling"}),"\n",(0,l.jsx)(n.li,{children:"Logging"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Performance"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Optimization"}),"\n",(0,l.jsx)(n.li,{children:"Caching"}),"\n",(0,l.jsx)(n.li,{children:"Rate limiting"}),"\n",(0,l.jsx)(n.li,{children:"Resource management"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"quick-start-guides",children:"Quick Start Guides"}),"\n",(0,l.jsx)(n.h3,{id:"common-tasks",children:"Common Tasks"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Basic Integration"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"// Initialize ChatMaven\nconst chatmaven = new ChatMaven({\n apiKey: 'YOUR_API_KEY',\n environment: 'production'\n});\n"})}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Send Messages"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"// Send a message\nawait chatmaven.messages.create({\n conversation_id: 'conv_123',\n content: 'Hello, world!'\n});\n"})}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Handle Events"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"// Listen for events\nchatmaven.on('message:received', (message) => {\n console.log('New message:', message);\n});\n"})}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"next-steps",children:"Next Steps"}),"\n",(0,l.jsx)(n.h3,{id:"explore-documentation",children:"Explore Documentation"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"/developer-guides/api-reference",children:"API Reference"})}),"\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"/developer-guides/webhooks",children:"Webhooks Guide"})}),"\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"/developer-guides/custom-integration",children:"Custom Integration"})}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"additional-resources",children:"Additional Resources"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Sample applications"}),"\n",(0,l.jsx)(n.li,{children:"Code examples"}),"\n",(0,l.jsx)(n.li,{children:"Tutorial videos"}),"\n",(0,l.jsx)(n.li,{children:"Community forums"}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"support",children:"Support"}),"\n",(0,l.jsx)(n.h3,{id:"getting-help",children:"Getting Help"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Documentation"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"API reference"}),"\n",(0,l.jsx)(n.li,{children:"Guides"}),"\n",(0,l.jsx)(n.li,{children:"Examples"}),"\n",(0,l.jsx)(n.li,{children:"FAQs"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Community"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Forums"}),"\n",(0,l.jsx)(n.li,{children:"Discord channel"}),"\n",(0,l.jsx)(n.li,{children:"GitHub discussions"}),"\n",(0,l.jsx)(n.li,{children:"Stack Overflow"}),"\n"]}),"\n"]}),"\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Direct Support"})}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Technical support"}),"\n",(0,l.jsx)(n.li,{children:"Email support"}),"\n",(0,l.jsx)(n.li,{children:"Office hours"}),"\n",(0,l.jsx)(n.li,{children:"Priority support (Enterprise)"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.hr,{}),"\n",(0,l.jsx)(n.h2,{id:"faq-and-troubleshooting",children:"FAQ and troubleshooting"}),"\n",(0,l.jsx)(n.h3,{id:"where-do-i-start-if-i-am-new-to-the-chatmaven-api",children:"Where do I start if I am new to the ChatMaven API?"}),"\n",(0,l.jsxs)(n.p,{children:["Read ",(0,l.jsx)(n.a,{href:"/developer-guides/authentication",children:"Authentication"})," for how to obtain and send credentials, then skim the ",(0,l.jsx)(n.a,{href:"/developer-guides/api-reference",children:"API Reference"})," for the endpoints you need. Use ",(0,l.jsx)(n.a,{href:"/developer-guides/webhooks",children:"Webhooks"})," if you want server-to-server events instead of polling."]}),"\n",(0,l.jsx)(n.h3,{id:"do-i-need-a-custom-integration-or-is-the-rest-api-enough",children:"Do I need a custom integration or is the REST API enough?"}),"\n",(0,l.jsxs)(n.p,{children:["The REST API covers most automation (messages, contacts, agents). Choose ",(0,l.jsx)(n.a,{href:"/developer-guides/custom-integration",children:"Custom Integration"})," when you need a deeper or product-specific embed that goes beyond HTTP calls described
1in the reference."]}),"\n",(0,l.jsx)(n.h3,{id:"who-can-i-contact-for-developer-support",children:"Who can I contact for developer support?"}),"\n",(0,l.jsxs)(n.p,{children:["Use the same support channels as the main product (for example ",(0,l.jsx)(n.a,{href:"https://corp.chatmaven.ai/contact",children:"ChatMaven Support"}),"). Include request IDs, timestamps, and minimal reproduction steps when reporting API errors."]})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(h,{...e})}):h(e)}}}]);
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.