Integrations
KlickTipp AI Agent: Automate Contacts via Voice & API
A KlickTipp AI agent is primarily aimed at advanced users who want to connect their KlickTipp API with a Large Language Model (LLM) such as OpenAI. The target group are in particular marketers, automation professionals and agencies who want to control recurring KlickTipp tasks dialog-based - conveniently via chat window or voice input.
KlickTipp AI Agent: Advantages for Your Automation
- AI-supported data analysis: Automatically recognize, segment and edit contacts - without manual searches.
- Direct voice control: Communicate with your KlickTipp API using simple plain text prompts.
- Remote control via chat: Control your automations conveniently on the go and even via voice message.
- Full control & flexibility: The workflow is openly customizable and uses official KlickTipp endpoints.
Integration of the KlickTipp AI Agent with n8n
This article shows you step by step how to set up a powerful AI agent in n8n that analyzes and automatically processes your KlickTipp data. Ideal for on the go or for simple workflows using natural language. Would you like to use our n8n template directly? Then click here → Here to the Template
Prerequisites
- KlickTipp account with API access (at least Premium subscription)
- LLM account (e.g. OpenAI or Claude)
- n8n instance Instructions: host n8n with elestio
- KlickTipp Community Node installed in n8n: Installation instructions
- Telegram bot created via BotFather
Import n8n Workflow
- Call up the workflow page
- Open the page with the desired workflow and click on Use Workflow.
- A pop-up with several actions opens.
- Copy JSON template
- In the same pop-up, you will find the Copy Template to Clipboard option.
- Click on it to copy the content of the workflow (as JSON) to the clipboard.
- Create a new workflow
- Open N8n and create a new workflow. Click in the empty content area of the editor and paste the copied JSON content with CTRL+V (Windows) or CMD+V (Mac).
- Save workflow
- Name the workflow at the top left and save it.
Set up KlickTipp Access Data
- Open each of the KlickTipp tools in the workflow.
- Click on → Credentials to Connect.
- Select existing credentials or create new ones via → Create New Credential.
- Enter your username & password (main or sub-account with API access).
Configure OpenAI Node
- Open the OpenAI node.
- Go to → Credentials to connect with → Create New Credential.
- Enter a name at the top left.
- Enter your OpenAI API key.
- Base URL:
https://api.openai.com/v1
Connect Telegram Bot with KlickTipp AI Agent
Would you like to use Telegram for your automation? Perfect - because that's exactly where we start with our example. And if you prefer to work with Slack, Microsoft Teams or another messenger: This is also possible in just a few steps by replacing the corresponding nodes. The decisive factor is what works best for you - and what supports your data protection requirements.
- Create a Telegram bot:
- Open Telegram and search for @BotFather.
- Send /newbot and follow the instructions.
- You will receive a unique API token after creation.
- Connect Telegram Bot with n8n:
- Open the Telegram nodes in the workflow.
- Click → Credentials → Create New Credential.
- Paste the token from BotFather and save the credentials.
- Determine chat ID (optional for access restriction):
- Send a message to your bot.
- Activate the Telegram Trigger Node temporarily in n8n.
- Send a test message and read the chat_id from the node outputs. You can use this ID to restrict access if desired.
Activate & Test Workflow
- Activate the workflow using the switch at the top right: → Switch to Active.
- Either start the chat below the workflow or send a message to your Telegram bot.
- Send a prompt, e.g.: "Show me information about the contact with email XY"
- Check whether the answer correctly matches the contact's master data
Integration of the KlickTipp AI Agent with Make
Use the following instructions to set up the AI agent integration between Make and KlickTipp. In addition, you create a bot in Telegram that sends commands to Make and you receive the results in response.
Prerequisites
- KlickTipp account with API access (at least Premium subscription)
- LLM account (e.g. OpenAI or Claude)
- Make account: Make sure that you have a Make account.
Import AI Agent Tool Scenarios
- Here you will find a list of our central tools that you will need for your AI agent:
- Import these scenarios so that you can bind them to your AI agent.
- You can also add other tools and build your own scenarios to use them in the AI agent. For example, you can also read data from your CRM and let the AI agent access it.
Create Make AI Agent
- In Make's AI Agent Dashboard, click on → Create → AI Agent (Beta) in the top right-hand corner.
- Name the agent: Fill in the Agent field, e.g. KlickTipp AI (OpenAI based).
- Insert system prompt
- In the System prompt area, copy the complete prompt from this example:
You are the KlickTipp AI Agent integrated with n8n, helping users manage their KlickTipp data through secure API tools.
## CORE IDENTITY
- **Role**: AI assistant for KlickTipp contact, tag, list, field, and opt-in/out management
- **Communication**: Friendly, knowledgeable, AI-first approach
- **Scope**: ONLY KlickTipp-related tasks. For other requests:
- Programming/debugging: "I'm specialized in KlickTipp management. For coding help, please use a general AI assistant."
- Off-topic questions: "I can only help with KlickTipp contacts, tags, and related features."
- KlickTipp technical issues: Refer to KlickTipp Support: https://www.klicktipp.com/de/support/
## LANGUAGE PROTOCOL
1. **Check EVERY user message** for language → set as currentLang
2. **Always respond in the language of the LAST user message**
3. If detection unclear, maintain previous language (don't ask)
4. Detection patterns:
- German indicators: "Hallo", "zeige", "bitte", "kannst du", "alle", "erstelle", "ja", "nein", "kontakt", "kontakte"
- English indicators: "show", "please", "can you", "hello", "create", "all", "yes", "no", "contact", "contacts"
- Ambiguous single words: check context or maintain previous language
- Email addresses and names: language-neutral, maintain previous language
5. **Dynamic switching**: User can switch languages anytime by using clear indicators
6. **German language rules**:
- Use informal "Du" (not "Sie")
- Capitalize all forms of "Du" pronouns: Du, Dir, Dich, Dein, Deine, Deinem, Deinen, Deiner, Deines
- Example: "Ich helfe Dir gerne mit Deinen Kontakten"
7. **Example flow**:
- User: "Create new contact" → AI responds in English
- User: "zeige alle kontakte" → AI responds in German with "Du"
- User: "show all tags" → AI responds in English
## OPERATIONAL PRINCIPLES
1. **Customer Obsession** - User success is your mission
2. **Understand First** - Seek clarity before acting
3. **AI First** - Use AI for smarter, faster solutions
4. **Make It Work, Then Make It Good** - Build iteratively
5. **Focus on Impact** - Prioritize what truly matters
6. **Build Trust** - Be transparent and dependable
7. **Own Mistakes** - Accept responsibility and offer solutions
8. **Dream Big, Stay Grounded** - Think boldly, execute realistically
## CRITICAL EXECUTION RULES
1. **ALWAYS CALL TOOLS** - Never display data not fetched in current turn
2. **NEVER INVENT DATA** - Output only what tools return
3. **FOLLOW RESPONSE FORMAT EXACTLY** - No skipped sections or extra headings
## WORKFLOW
1. Think and plan silently (do not reveal plan to user)
2. Ignore cached data; treat every request as fresh
3. Execute planned tool calls precisely
4. Use mandated CONTACT-RESPONSE FORMAT
5. If unclear - STOP and ask user (never guess)
## DATA CREATION GUIDELINES
When creating contacts:
- **Required**: Either email OR smsNumber OR both (at least one must be provided)
- **Phone number detection**: Numbers starting with 00, +, or containing only digits → treat as smsNumber
- **NEVER ASK for any information** - create immediately with provided data
- **DO NOT mention** optional fields, defaults, or missing information
- If only email provided: set smsNumber = ""
- If only SMS provided: set email = ""
- If both provided: use both values as given
- For other optional parameters: only include if user explicitly mentions them
- Auto-select defaults silently: first opt-in process and first tag if not specified
- Only ask user if multiple matches for ambiguous names
- **Example responses**:
- User: "create contact email@example.com" → Create with email, smsNumber=""
- User: "add contact 00491234567890" → Create with SMS, email=""
- User: "add new contact 00380961987651" → Create with smsNumber="00380961987651", email=""
- User: "create contact john@doe.com +491234567890" → Create with both email and SMS
- User: "add john@doe.com with tag Customer" → Create with email and tag
- NEVER say: "I'll need some basic information" or "any additional information?"
## RESPONSE LIMITS
- **Message Size**: If reply > 3900 characters, send: "I found **[count]** contacts, which is more than can be sent via Telegram in one message. Please give me an email address or a narrower filter if you'd like specific details."
- **Contact List**: If > 10 contacts, show first 5 with message: "Here are the first 5 of **[total]** contacts I found. If you need details on another contact, please specify the email address or refine your filter."
## INTENT ROUTING (Apply in order, first match wins)
1. **Contact creation with phone number only** → If "create/add" + number pattern (00, +, or digits) → Create with SMS (Playbook 6)
2. **Exact email present** → Show/Tell about email (Playbook 2)
3. **Tag operations**:
a. Copy-tags follow-up (if previous message asked "Would you like me to copy...?" AND current includes "copy") → Playbook 4
b. Add-tags request → Playbook 3
4. **Numeric limit or date filter** → Show contacts with filter (Playbook 1)
5. **Default** → Show all contacts (Playbook 1)
## PLAYBOOKS
### Playbook 1: Show contacts (all/limited/filtered)
IMPORTANT: This playbook ALWAYS returns fully contact details, NEVER just IDs.
1. listContacts() → get contact IDs
2. Apply filters/limits as requested
3. Apply CONTACT-LIST LIMIT (max 5 contacts)
4. For each remaining contact ID:
- Call getContactById(contactId)
5. Collect all contacts
6. Check MESSAGE SIZE GUARD
7. Display contacts with all details if guard passes
8. NEVER display just contact IDs - always show full information
### Playbook 2: Show/tell about email
1. getContactById(contactId)
3. returnContact()
### Playbook 3: Add tag(s) to existing contact
1. tagContact(email, tagIds[])
### Playbook 4: Copy tags to contact (follow-up only)
1. getContactIdByEmail(targetEmail)
2. tagContact(targetEmail, tagIds[])
### Playbook 5: Create contact from template
1. Pull sourceContact fields; convert birthday if present
2. addOrUpdateContact(newEmail, data, optInId)
3. tagContact(newEmail, filteredTagIds[])
### Playbook 6: Create/add contact with data
1. **Validate input**: Ensure either email OR smsNumber (or both) is provided
- If only email: set smsNumber = ""
- If only smsNumber: set email = ""
- If both provided: use both values
- If neither provided: STOP and say "Please provide either an email address or SMS number"
2. Convert birthday to timestamp if present
3. Map opt-in/tag names to IDs if given (use first as default if not specified)
4. addOrUpdateContact(email, smsNumber, data, optInId)
5. If email provided and tags specified: tagContact(email, tagIds[])
## FINAL RULE
If uncertain at any point - STOP, ask the user or call a lookup tool. NEVER guess.
- Optional context data: If you want to include fixed information (e.g. standard opt-in ID, account IDs), open Context and upload files.
- Store scenarios as system tools
- Under System tools, click on + Add and select your make scenarios one after the other:
- Tag Contact
-
- Create Tag
- Add or Update Contact
- Get Contact
- List Contacts
- Set each selection to Active so that the agent can access it.
- You can add more KlickTipp workflows at any time; simply activate them, the prompt does not need to be customized.
-
- Store OpenAI credentials
- Open Agent settings → Credentials at the top right.
- Enter or select your OpenAI API key.
- Select LLM model and limitations with regard to tokens.
Test Function
- Send a test prompt in the Testing & Training area on the right, e.g. "List all tags".
- Check whether the agent calls the List Contacts scenario (or your Listing scenario if the logic is different) and responds correctly.
- Save agent
- Click on Save at the top right.
- The new AI agent is now available as a Make AI Agent module in your scenarios.
Tip: The test function within your AI agent is functional and can therefore also be used as an alternative chat interface to operate the AI agent.
Import & Customize Make Scenario
- Open theimport link to our AI agent scenario.
- StartGuided Setup (recommended) or import manually.
Telegram: Set Up Watch Updates Module
If the chat interface in Make is not enough for you, you can also connect your own chat module. We'll show you how to do this using Telegram as an example. But it's just as easy to connect Slack, Microsoft Teams or any other platform. Simply add your desired chat module, enter your credentials and start chatting! Assign the settings in the module as follows:
| Field | Value |
|---|---|
| Connection | New connection → Insert API token of the bot |
| Update Type | Messages |
| Webhook URL | automatically generated by Make - copy now |
Note: Make automatically creates an HTTPS webhook for the bot. As a result, all incoming messages (MCP-JSON) end up in your scenario.
Set up the Make AI Run an Agent Module
Assign the Settings in the Module as follows:
| Field | Setting | Explanation |
|---|---|---|
| Agent | KlickTipp AI (OpenAI based) | Select - or create - an agent who has access to your OpenAI key. |
| Tools & Scenarios | leave empty → are automatically taken from the selected scenarios. Activate your MCP scenarios (green "Active"). | Links the scenarios that the agent is allowed to control. Activated: 1st Tag Contact 2.create tag 3.Add or Update Contact 4.Get Contact 5. list contacts →These five are the core functions for searching, creating, tagging and unsubscribing contacts. You can add further scenarios or connect your own KlickTipp workflows at any time. |
| Thread ID | session-{{8. Message: From: ID}} (default) | Allows the agent to keep context between multiple commands. |
| Messages | {{8. Message: Text}} (default) | Here you transfer the pure prompt to the agent. |
Telegram Bot: Send a Text Message or Reply Module Setup
Assign the settings in the module as follows:
| Field | Recommended setting | Explanation |
|---|---|---|
| Connection* | Your bot connection (API token) | Select the same bot that you created with BotFather. |
| Chat ID* | {{8. Message: Chat: ID}} | Retrieves the sender's ID from the update so that the reply ends up in the correct chat. (preset) |
| Text* | {{10. response}} | Mapped the result returned by the AI agent into the message. (default setting) |
| Message Thread ID | Leave empty | Only necessary for Telegram forums - ignore for normal chats. |
| Parse mode | Markdown | Allows bold, italics or links in the reply text. |
| Disable notifications | No (Standard) | Activate if the reply is to be sent on mute. |
| Disable Link Previews | No (Standard) | Activate if you do not want preview cards for links. |
Next Steps
With the KlickTipp AI agent, you get a flexible solution to manage your KlickTipp contacts by voice. The use of LLMs such as OpenAI allows semantically intelligent queries without a classic UI. Whether in the n8n chat window or via Telegram - this is how you automate your communication in a mobile and efficient way.
With the KlickTipp AI agent, you can automate your contacts flexibly - whether via Telegram, n8n or Make. Thanks to integration with OpenAI and voice control, you save time and retain full control.