// docs
Integrations
AI sealed in a bubble is a curiosity. AI wired into the tools you use every day — CRM, email, spreadsheets, team chat — is a business tool.
This page explains what "integration" actually means, which systems I connect to most often, how it works on the technical side (in plain language), and what I need from you to make it happen. You don't need a technical background to follow it.
What "integration" means in practice
When I say "integrate AI with your tools," I mean something concrete: your AI system can read data from your existing tools, process it, and write data back. Automatically, with no manual copy-pasting between tabs.
A real example: a customer fills out the contact form on your site. Right now this probably looks like — someone on the team checks the inbox, reads the message, works out what the customer needs, writes a reply, logs it in the CRM, and maybe updates a spreadsheet. That's 10–15 minutes per inquiry.
With an integration: the form submission triggers the AI automatically. The AI reads the message, classifies it (sales inquiry, support ticket, partnership proposal), drafts a reply matched to the inquiry type, posts it to your team's Slack channel for approval, and once approved, sends the email and logs the interaction in the CRM. For the AI that's seconds; for a team member it's 30 seconds to review and approve.
That's integration — a system that fits into how you already work and removes the repetitive parts, not a standalone chatbox on your site answering generic questions.
This kind of automation — running in the background on triggers, sending reports by email or to Notion, handling recurring jobs without you there — is exactly what the hermes install does. If you need an agent that "works on its own when you're not around," that's it.
The integrations I build most often
Every company runs on a different set of tools. Here are the integrations I build most often, with concrete examples of what the AI does with each.
Email (Gmail, Outlook, SMTP)
Email is still the backbone of business communication, and most teams spend far too much time on it. Here's what the AI can do with your inbox:
- Read and classify incoming messages — every email gets categorized by type (sales inquiry, support ticket, invoice, newsletter, internal communication) and urgency (needs a reply today, this week, FYI only). Your team sees a sorted inbox instead of a chronological pile.
- Draft replies — for routine inquiries the AI drafts a reply based on your templates, knowledge base, and the actual content of the email. Your team reviews and sends instead of writing from scratch.
- Extract data — invoices arrive by email? The AI reads the PDF attachment, pulls the amount, supplier, due date, and line items, then pushes them to your accounting system.
- Routing — emails that need specific people get forwarded automatically. Technical questions go to the technical team. Billing questions go to finance. No more "wrong department" delays.
- Follow-up reminders — sent a quote three days ago and no reply? The AI flags it and drafts a follow-up.
CRM (HubSpot, Pipedrive, Salesforce, custom)
A CRM should be the single source of truth about your customers. In practice it's usually half-filled, because keeping it updated is tedious. The AI fixes that.
- Automatic contact updates — after every interaction (email, call, meeting) the AI updates the contact record with a summary, next steps, and the right tags. No manual data entry.
- Lead scoring — based on behavioral patterns (site visits, email opens, content of inquiries) the AI scores leads so your sales team focuses on the ones most likely to convert.
- Activity logging — every customer touchpoint is logged automatically. When someone opens a contact record, they see the full history even though nobody typed it in by hand.
- Automatic follow-ups — "no reply for 5 days" triggers a follow-up sequence. "Demo happened, no purchase in 14 days" triggers a check-in message. All tuned to your sales process.
- Pipeline alerts — deals stuck too long at the same stage get flagged. High-value opportunities nearing a deadline get escalated.
Document storage (Google Drive, SharePoint, Notion, Confluence)
Most companies have years of documents scattered across folders, drives, and platforms. Finding the right document at the right moment is a daily frustration.
- Smart search — instead of clicking through folder trees, ask the AI: "Where's the partnership agreement template we used for the Kraków contract?" It searches all your documents and finds it.
- Document indexing — the AI reads and indexes your documents so it can answer questions based on their content. "What's our return policy for custom orders?" The AI finds the answer in the operations handbook — you don't need to know which document or which page it's on.
- Automatic summaries — long reports, meeting notes, legal documents — the AI reads them and produces concise summaries with key points and action items.
- Version tracking — "what changed in the employee handbook since last quarter?" The AI compares versions and tells you exactly what's different.
Calendar (Google Calendar, Outlook Calendar)
Scheduling meetings is simple in theory and frustrating in practice. The AI removes the friction.
- Smart scheduling — "Find a 30-minute slot next week that works for me and Tomek, preferably in the morning." The AI checks both calendars, accounts for travel time between meetings, and proposes options.
- Meeting prep notes — before every meeting the AI gathers the relevant context: your last interaction with that person, open topics, their recent emails, related documents. You walk into every meeting prepared.
- Conflict detection — double bookings, overlapping travel, back-to-back meetings with no break — the AI catches them and proposes fixes.
- Smart reminders — not just "meeting in 15 minutes," but "meeting with Jan in 15 minutes — he last asked about the Q3 quote, here's the latest version."
Team chat (Slack, Microsoft Teams, Telegram)
Team chat platforms are where decisions get made, questions get asked, and information gets lost in threads.
- AI bots in your channels — ask questions in Slack and get instant answers from the knowledge base. "What's the status of the Novak project?" The AI checks the project tracker and replies in the channel.
- Automatic notifications — new lead in the CRM? A message in the sales channel. Server alert? A message in the ops channel. With context, not a raw notification.
- Meeting summaries — after a call the AI summarizes what was discussed and posts action items to the right channel.
- Cross-platform sync — something discussed in Slack that should land in the CRM? The AI catches it and updates both systems.
Spreadsheets (Google Sheets, Excel)
Plenty of companies run key processes in spreadsheets. That's fine — spreadsheets are powerful tools. The AI makes them more powerful.
- Automatic data import — pull data from the CRM, email, or a database into a sheet automatically. Daily sales report? Generated overnight, waiting for you in the morning.
- Automatic reporting — weekly summaries, monthly dashboards, quarterly analyses — all generated from your live data and placed in your preferred sheet format.
- Data cleanup — duplicate entries, inconsistent formatting, missing fields — the AI identifies and fixes data-quality problems.
- Formula and analysis help — complex calculations, pivot tables, chains of VLOOKUPs — the AI can build and maintain them for you.
Custom databases
If you have existing databases (MySQL, PostgreSQL, MongoDB, or something more niche), I connect to them directly.
- Direct SQL/API access — the AI reads and writes to your database through secure, controlled queries
- Real-time data processing — new record added? The AI processes it immediately.
- Cross-database queries — data in one system that needs to feed another? The AI bridges the gap.
- Legacy system integration — old systems with dated APIs still need to work with modern AI. I build the adapters.
How it works technically (the plain version)
You don't need to understand the technical details to use these systems. But knowing the basics helps you ask better questions and make better decisions. Here's the non-technical version.
APIs — doors between systems
An API (Application Programming Interface) is a standardized "door" that lets two software systems talk to each other. When the AI needs to read data from your CRM, it knocks on the CRM's API door with a properly formatted request, and the CRM replies with the data.
It's the same mechanism every modern app uses. When you check the weather on your phone, the weather app talks to a weather service through an API. When you pay by card, the payment terminal talks to your bank through an API. Nothing exotic about it.
Every tool I listed above (Gmail, HubSpot, Slack, Google Sheets, and so on) has an API. That's how I connect them to your AI system.
Webhooks — instant notifications
A webhook is an automatic notification from one system to another. Instead of the AI asking every few seconds "any new email? any new email? any new email?" — Gmail just tells the AI when a new email arrives.
Think of it like mail forwarding. You set a rule once ("forward all email from this address to that address") and from then on it runs automatically. Webhooks work the same way, but for any event: a new form submission, a new order, an updated document, a new message in a channel.
The effect: things happen instantly. A customer submits a form and the AI is already processing it before anyone on your team hears about it.
No software on your computer
One of the most common questions: "Do we have to install anything?"
No. Everything runs in the cloud. Your AI system is deployed on servers (for most projects I use Cloudflare Workers) and talks to your tools through APIs and webhooks. You access it through a browser, through Slack, through email — through whatever interface makes sense for you.
Your team installs nothing. If you can open a browser, you can use the system.
A real example flow
Let's trace an actual integration from start to finish — the kind of thing the hermes install runs:
- A customer fills out the contact form on your site
- A webhook fires — your site sends a notification to the AI system: "new form submission"
- The AI reads the submission — name, email, company, what they're asking about
- The AI classifies the inquiry — "this is a sales inquiry about the Enterprise plan, from a company with 50+ employees"
- The AI drafts a personalized reply — using product information, pricing, and your brand's tone of voice
- The AI posts to your Slack channel — "#sales-inbox: New Enterprise inquiry from Anna at TechCorps. Draft reply attached. Approve or edit?"
- Your salesperson reviews — 30 seconds to read and click "Approve"
- The AI sends the email — from your sales address, with the approved reply
- The AI updates the CRM — creates a new contact, logs the inquiry, sets a follow-up reminder for 3 days
Total time from submission to reply: under 2 minutes. Total human effort: 30 seconds of review.
Compare that with: check the inbox, read the email, check pricing, write a reply, send it, open the CRM, create a contact, log notes, set a reminder. That's 15–20 minutes of someone's work, and the reply might not go out until the next morning if the form came in at 5:30 pm.
GitHub and code delivery
Every integration project is delivered through GitHub. Here's what that means for you in practice.
Every project = a Git repository
Git is a version-control system. Think of it as "Track Changes" in Microsoft Word, but for an entire project — the code, the configuration, and the documentation. Every change is recorded with:
- What changed — the exact lines of code or config that were modified
- Who changed it — the person who made the modification
- When it changed — a timestamp for every modification
- Why it changed — a description explaining the purpose of the change
That means you have a complete, searchable history of the whole project. If something breaks, you can see exactly which change caused it and roll back to the last working version.
You get full access
Not "preview," not "read-only" — owner-level access. You can:
- Read all the code and documentation
- Make changes yourself (or hand it to your developers)
- Control who else has access
- Download the entire project at any time
- Fork it (make a copy) and go in a different direction
This isn't a license agreement or a service subscription. The code is yours.
Documentation inside the repository
Every project repository includes:
- A README — what the project does, how to set it up, how to run it
- Configuration guides — how to modify settings, update the knowledge base, change the AI's behavior
- Maintenance instructions — what needs regular attention, how to update dependencies, how to resolve common issues
- An architecture overview — how the parts of the system fit together
This documentation lives next to the code, versioned alongside it. When the code changes, the documentation updates with it.
Why this matters
You're never dependent on me.
- Need a change and I'm not available? Your developer (or any developer) can read the code and documentation and make the change.
- Want to switch providers? Hand over the repository. The new team has everything they need.
- Want to bring it in-house? Your new hire has the full codebase, the complete history, and all the documentation from day one.
The code is yours. If I ever disappear, you still have everything you need to run, modify, and maintain your system. That's a fundamental principle of how I deliver work.
What I need from you for an integration
Building an integration takes some information and access from your side. Here's exactly what I'll ask for — no surprises.
A list of the tools you currently use
For the process we're automating, I need to know every tool involved. Not just the main ones — the spreadsheet someone updates by hand, the email alias certain tickets land on, the Slack channel where decisions get made.
We usually map this together on the discovery call. A typical list looks like:
- "We use HubSpot as our CRM"
- "Customer inquiries come in to support@company.com (Gmail)"
- "We track projects in Notion"
- "Team communication is on Slack"
- "We do monthly reports in Google Sheets"
- "We keep product data in a PostgreSQL database"
The more complete this list, the better I can plan the integration.
Access credentials
Every tool connection needs authentication — confirmation that the AI system is authorized to access your data. Depending on the tool, that might be:
- API keys — a unique code that identifies the integration. Generated in the tool's settings panel.
- OAuth setup — a "Sign in with..." flow that grants specific permissions. Like logging into a site through your Google account.
- Service accounts — a dedicated account for the AI system, separate from any user's account.
I'll tell you exactly what I need and how to generate it. Step by step, with screenshots if needed. You don't have to decode API documentation on your own.
A note on security: I never ask for your personal login details. Never. API keys and service accounts have limited permissions and can be revoked at any time. Your personal passwords stay with you.
A description of your current flow
I need to understand how the process works today, before any AI is involved. What happens when:
- A new customer inquiry comes in? Who handles it? How long does it take? Which tools get used?
- A new order gets placed? Which systems get updated? In what order? Who does what?
- A team member needs information? Where do they look? How long does it take to find?
This doesn't have to be a formal document. A conversation works. A screen recording of someone doing the task is even better.
A designated point of contact
Someone on your side who can:
- Provide access credentials when I need them
- Answer questions about your current systems ("what version of HubSpot do you have?")
- Test the integration from your side during development
- Be available for a few short calls during the build phase
This person doesn't need to be technical. I walk non-technical clients through every step.
Timeline
Access needs to be in place before the build phase starts. I spell this out in the functional spec — typically I need credentials at least a week before I start building the integration. That gives me time to verify connections and flag any problems before development begins.
No surprises. Everything I'll need is listed in the functional spec you approve before I start.
Security and access
Connecting AI to your business tools means giving it access to your data. I take that responsibility seriously. Here are the specific security practices I apply to every integration project.
Least privilege
The AI gets only the permissions it needs to do its job. Nothing more.
- If it needs to read emails but not send them → read-only access
- If it needs to update one field in the CRM → access to that field, not the whole CRM
- If it needs data from one table → access to that table, not the whole database
- If it needs to post to one Slack channel → access to that channel, not the whole workspace
I document every permission the system holds, and I can explain why each one is necessary.
Credential storage
- Never in the code — API keys and passwords are stored as encrypted environment variables, never hardcoded into source. If you read every line of code in the repository, you won't find a single credential. That's a fundamental rule, not a preference.
- Never in plain text — credentials at rest are encrypted. Even if someone got access to the server, they'd be unreadable without the decryption key.
- Rotated when needed — if there's any suspicion a credential has been exposed, I rotate it immediately and verify the old one is revoked.
Encrypted connections
- All connections over HTTPS/TLS — every piece of data moving between your tools and the AI system is encrypted in transit. The same encryption standard banks and government institutions use.
- No exceptions — even for internal connections or data that seems "non-sensitive." Everything is encrypted.
Post-project access audit
Once the project is done and the system is live in production, I run an access audit:
- What does the system have access to? I review every permission, every API key, every connection.
- Is all of it still needed? During development I sometimes need broader access for testing. After launch I narrow everything down to the minimum production requires.
- Documentation — I give you a complete access inventory: what the system can reach, why, and how to revoke each permission if you ever need to.
You control everything
The system runs under your control. At any point you can:
- Revoke any API key — the integration immediately stops working for that tool.
- Change permissions — restrict or expand what the system can do.
- Review access logs — see exactly what the system accessed and when.
- Shut it down completely — disable the integration and the AI system stops interacting with your tools. Your tools keep working normally.
You're never in a position where you can't control what the AI system does with your data.
What happens after launch
An integration isn't a "set it and forget it" project. Your tools change, processes evolve, the team grows. The AI system has to keep up.
Ongoing monitoring
After launch I monitor the system for:
- Errors — failed API calls, rejected requests, timeout issues
- Performance — response times, processing speed, queue depth
- Accuracy — are the classifications right? Are the drafted replies on target? Are the CRM updates correct?
Updates and maintenance
- Tool updates — when Gmail, HubSpot, or Slack updates its API, your integration has to adapt. I handle that.
- New tools — added a new tool to your stack? I can connect it to the existing system.
- Process changes — your workflow changed? I adjust the integration.
- Performance optimization — as usage grows I optimize for speed and cost.
Self-service changes
Many changes don't need me at all. Because the system is well-documented and the configuration is human-readable:
- Knowledge base updates — your team can add new documents and update existing ones
- Reply template changes — modify how the AI drafts emails or messages
- Notification rules — change which Slack channel gets which alert
- Simple workflow tweaks — change the order of steps, add conditions, adjust thresholds
I train your team on what they can change themselves and what needs my involvement.
How to get started with an integration
Tired of copy-pasting data between tabs? Book a free discovery call and let's map what an integration could look like in your specific setup.
The general process — from the call to handoff — is in the process documentation.
last updated: 2026-05-11