Gestión de contactos en KlickTipp a través de un servidor MCP

Avanzado

Este es unCRM, AI Chatbotflujo de automatización del dominio deautomatización que contiene 31 nodos.Utiliza principalmente nodos como ToolCode, KlicktippTool, McpTrigger. Gestión de contactos impulsada por IA en KlickTipp, mediante un servidor MCP

Requisitos previos
  • No hay requisitos previos especiales, puede importar y usarlo directamente
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "j1FtJoAyaYNpmJzT",
  "meta": {
    "instanceId": "95b3ab5a70ab1c8c1906357a367f1b236ef12a1409406fd992f60255f0f95f85",
    "templateCredsSetupCompleted": true
  },
  "name": "Manage contacts in KlickTipp via MCP server",
  "tags": [
    {
      "id": "15wrq9sti6wyqr6J",
      "name": "TEMPLATE",
      "createdAt": "2025-01-08T16:34:30.163Z",
      "updatedAt": "2025-01-08T16:34:30.163Z"
    }
  ],
  "nodes": [
    {
      "id": "f77dc3f1-296f-407f-998c-d0c962462c99",
      "name": "MCP Server Trigger",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -560,
        -260
      ],
      "webhookId": "efd64e04-db77-499d-832b-f17e99bd9ef4",
      "parameters": {
        "path": "klicktipp-mcp"
      },
      "typeVersion": 1
    },
    {
      "id": "341d39bc-7e6c-487d-9272-1d5820c054b1",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2340,
        -280
      ],
      "parameters": {
        "width": 580,
        "height": 1680,
        "content": "### How It Works\n\n**AI-Driven Contact Management with MCP and KlickTipp Integration:**\nThis workflow connects an MCP Server with the KlickTipp contact management platform and integrates it with an LLM (e.g. Claude etc.) to enable intelligent querying and segmentation of contact data. It covers all major KlickTipp API endpoints, providing a comprehensive toolkit for automated contact handling and campaign targeting.\n\n### Key Features\n**MCP Server Trigger:**\n- Initiates the workflow via the MCP server, listening for incoming requests related to contact queries or segmentation actions.\n\n\n**LLM Interaction Setup:**\n- Interacts with an OpenAI or Claude model to handle natural language queries such as contact lookups, tagging, and segmentation tasks.\n\n\n**KlickTipp Integration:**\nComplete set of KlickTipp API endpoints included:\n  - **Contact Management:** Add, update, get, list, delete, and unsubscribe contacts.\n  - **Contact Tagging:** Tag, untag, list tagged contacts.\n  - **Tag Operations:** Create, get, update, delete, list tags.\n  - **Opt-In Processes:** List and retrieve opt-in process details.\n  - **Data Fields:** List and get custom data fields.\n  - **Redirects:** Retrieve redirect URLs.\n\n\n**Use Cases Supported:**\n- Query contact information via email or name.\n- Identify and segment contacts by city, region, or behavior.\n- Create or update contacts from the provided data.\n- Dynamically apply or remove tags to initiate campaigns.\n- Automate targeted outreach based on contact attributes.\n\n\n### Setup Instructions\n**Install and Configure Nodes:**\n- Set up MCP Server.\n- Configure the LLM connection (e.g., Claude Desktop configuration).\n- Add and authenticate all KlickTipp nodes using valid API credentials.\n\n\n**Define Tagging and Field Mapping:**\n- Identify which fields and tags are relevant to your use cases.\n- Ensure necessary tags and custom fields are already created in KlickTipp.\n\n\n**Workflow Logic:**\n1. **Trigger via MCP Server:** A prompt or webhook call activates the server listener.\n2. **Query Handling via LLM Agent:** AI interprets the natural language input and determines the action.\n3. **Contact Search & Segmentation:** Searches contacts using identifiers (email, address) or criteria.\n4. **Data Operations:** Retrieves, updates, or manages contact and tag data based on interpreted command.\n5. **Campaign Preparation:** Applies tags or sends campaign triggers depending on query results.\n\n\n**Benefits:**\n- **AI-Powered Automation:** Reduces manual contact search and tagging efforts through intelligent processing.\n- **Scalable Integration:** Built-in support for full range of KlickTipp operations allows diverse use-case handling.\n- **Data Consistency:** Ensures structured data flows between MCP, AI, and KlickTipp, minimizing errors.\n\n\n**Testing and Deployment:**\nUse defined prompts such as:\n- “Tell me something about the contact with email address X”\n- “Tag all contacts from region Y”\n- “Send campaign Z to customers in area A”\nValidate expected actions in KlickTipp after prompt execution.\n\n\n**Notes:**\n- **Customization:** Adjust tag logic, AI prompts, and contact field mappings based on project needs.\n- **Extensibility:** The template can be expanded with further logic for Google Sheets input or campaign feedback loops"
      },
      "typeVersion": 1
    },
    {
      "id": "5bf83c00-cfb6-442e-8a5f-adda11bcb3a6",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -700,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 640,
        "height": 420,
        "content": "## Contact Management"
      },
      "typeVersion": 1
    },
    {
      "id": "d29e652f-41f8-4470-8279-1fd93dc8d251",
      "name": "Nota adhesiva9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1720,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 300,
        "height": 240,
        "content": "## Opt-in Processes\n"
      },
      "typeVersion": 1
    },
    {
      "id": "19fc7ac8-b04b-4a64-84b3-fc725097ac7f",
      "name": "Nota adhesiva10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        220,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 620,
        "height": 220,
        "content": "## Tag Operations\n"
      },
      "typeVersion": 1
    },
    {
      "id": "126266e7-aa4b-429c-8af6-6c01c5fbe047",
      "name": "Nota adhesiva11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1380,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 300,
        "height": 240,
        "content": "## Data Fields\n"
      },
      "typeVersion": 1
    },
    {
      "id": "c7a6da61-07a5-4cb2-ac01-569976db2d5b",
      "name": "Nota adhesiva12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1040,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 300,
        "height": 240,
        "content": "## Contact Tagging\n"
      },
      "typeVersion": 1
    },
    {
      "id": "6585112d-c646-4374-94f4-221bb797a915",
      "name": "Nota adhesiva13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -20,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 200,
        "height": 220,
        "content": "## Redirects\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2bdb8896-4f51-4f70-a0b9-6592272aa201",
      "name": "Timestamp a fecha",
      "type": "@n8n/n8n-nodes-langchain.toolCode",
      "onError": "continueRegularOutput",
      "position": [
        920,
        100
      ],
      "parameters": {
        "jsCode": "const raw = query;\nconst secs = Number(raw);\nconst isTimestamp = Number.isFinite(secs) && /^[+-]?\\d{8,13}$/.test(String(raw));\n\nif (!isTimestamp) {\n  return '';\n}\n\nconst ms = secs * 1000;\n\nconst formatted = DateTime\n  .fromMillis(ms, { zone: 'UTC' })\n  .setZone('Europe/Berlin')\n  .toFormat('dd.MM.yyyy HH:mm:ss ZZZ');\n\nreturn String(formatted);",
        "description": "Call this tool to convert an incoming Unix‐seconds timestamp to a UTC date string."
      },
      "typeVersion": 1.2,
      "alwaysOutputData": false
    },
    {
      "id": "a184f160-951a-4b64-8dc0-41a143b6b2b4",
      "name": "Nota adhesiva5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        880,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 360,
        "height": 220,
        "content": "## Additional Tools"
      },
      "typeVersion": 1
    },
    {
      "id": "d67f04aa-5821-4ab0-b68f-e33eac33338f",
      "name": "Fecha a timestamp",
      "type": "@n8n/n8n-nodes-langchain.toolCode",
      "position": [
        1100,
        100
      ],
      "parameters": {
        "jsCode": "const raw = query || 'N/A';\n\nconst formats = [\n  'd.LL.yyyy HH:mm:ss',\n  'd.LL.yyyy',           \n  'd LLLL yyyy HH:mm:ss',\n  'd LLLL yyyy',  \n  'd LLL yyyy',\n  'yyyy-MM-dd',\n  'LLLL d, yyyy',\n  'd-M-yyyy',\n];\n\nlet dt = null;\nfor (const fmt of formats) {\n  dt = DateTime.fromFormat(raw, fmt, {\n    zone  : 'Europe/Berlin',\n    locale: 'en',\n  });\n  if (dt.isValid) break;\n}\n\nif (!dt?.isValid) {\n  dt = DateTime.fromISO(raw, { zone: 'Europe/Berlin' });\n}\n\nif (!dt?.isValid) {\n  dt = DateTime.fromSQL?.(raw, { zone: 'Europe/Berlin' });\n}\n\nif (!dt?.isValid) {\n  return 'N/A';\n}\n\nconst timestamp = Math.floor(dt.toUTC().toSeconds());\n\nreturn timestamp;",
        "description": "Call this tool to converts a human-readable date string (e.g. 05.05.2025 01:00:00) into a Unix timestamp in seconds.\nPass the date through the parameter `query` as a string."
      },
      "typeVersion": 1.2,
      "alwaysOutputData": true
    },
    {
      "id": "bc2ddd85-5df9-412e-ba4f-cefea205bde5",
      "name": "Obtener ID de contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -180,
        100
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "resource": "subscriber",
        "operation": "search",
        "descriptionType": "manual",
        "toolDescription": "Returns the contact ID for an email address."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "a16c8d05-433e-4459-a0a9-3c4453f2c86a",
      "name": "Obtener contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -340,
        100
      ],
      "parameters": {
        "resource": "subscriber",
        "operation": "get",
        "subscriberId": "={{ $fromAI(\"contactId\", \"The contact's ID\", \"string\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Returns the complete data of a contact by ID."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "65dcfb83-65c7-48d6-8f8f-3a8be88c00ea",
      "name": "Agregar o actualizar contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -500,
        100
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "tagId": "={{ $fromAI(\"tagId\", \"The tag ID.\", \"number\", \"\") }}",
        "fields": {
          "dataFields": [
            {
              "fieldId": "fieldFirstName",
              "fieldValue": "={{ $fromAI(\"fieldFirstName\", \"Contact’s first name.\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldLastName",
              "fieldValue": "={{ $fromAI(\"fieldLastName\", \"Contact’s last name.\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldCompanyName",
              "fieldValue": "={{ $fromAI(\"fieldCompany\", \"Contact’s company name.\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldStreet1",
              "fieldValue": "={{ $fromAI(\"fieldAddress1\", \"Contact’s primary street address\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldStreet2",
              "fieldValue": "={{ $fromAI(\"fieldAddress2\", \"Contact’s secondary street address\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldCity",
              "fieldValue": "={{ $fromAI(\"fieldCity\", \"Contact’s city\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldState",
              "fieldValue": "={{ $fromAI(\"fieldState\", \"Contact’s state or region\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldZip",
              "fieldValue": "={{ $fromAI(\"fieldZip\", \"Contact’s ZIP or postal code\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldCountry",
              "fieldValue": "={{ $fromAI(\"fieldCountry\", \"Contact’s country\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldMobilePhone",
              "fieldValue": "={{ $fromAI(\"fieldMobilePhone\", \"Contact’s mobile phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldPrivatePhone",
              "fieldValue": "={{ $fromAI(\"fieldPrivatePhone\", \"Contact’s private phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldFax",
              "fieldValue": "={{ $fromAI(\"fieldFax\", \"Contact’s fax number in international format starting with '00' (e.g., 0049301234567)\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldBirthday",
              "fieldValue": "={{ $fromAI(\n     \"fieldBirthday\",\n     \"Unix seconds for the contact’s birthday — supply **only** when the user explicitly asks to set a birthday (keywords: birthday / birth date / set birthday). Otherwise leave undefined.\",\n     \"number\",\n     undefined\n) ?? undefined }}"
            },
            {
              "fieldId": "fieldLeadValue",
              "fieldValue": "={{ $fromAI(\"fieldLeadValue\", \"Estimated lead value as a number\", \"number\", \"\") }}"
            },
            {
              "fieldId": "fieldWebsite",
              "fieldValue": "={{ $fromAI(\"fieldWebsite\", \"Contact’s website URL\", \"string\", \"\") }}"
            }
          ]
        },
        "listId": "={{ $fromAI(\"optInId\", \"The opt-in process ID.\", \"number\", \"\") }}",
        "resource": "subscriber",
        "operation": "subscribe",
        "smsNumber": "={{ $fromAI(\"smsNumber\", \"The contact's SMS number.\", \"string\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Adds a new contact. If a contact with the same email already exists, it will be updated."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "d1d2384f-d798-41e7-9af1-01b2fe787b94",
      "name": "Listar contactos",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -660,
        100
      ],
      "parameters": {
        "resource": "subscriber",
        "descriptionType": "manual",
        "toolDescription": "Fetch contact IDs"
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "0a1a32e3-88c9-4a37-82b9-0d52f9284119",
      "name": "Actualizar contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -660,
        280
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "fields": {
          "dataFields": [
            {
              "fieldId": "fieldFirstName",
              "fieldValue": "={{ $fromAI(\"fieldFirstName\", \"Contact’s first name.\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldLastName",
              "fieldValue": "={{ $fromAI(\"fieldLastName\", \"Contact’s last name.\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldCompanyName",
              "fieldValue": "={{ $fromAI(\"fieldCompany\", \"Contact’s company name.\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldStreet1",
              "fieldValue": "={{ $fromAI(\"fieldAddress1\", \"Contact’s primary street address\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldStreet2",
              "fieldValue": "={{ $fromAI(\"fieldAddress2\", \"Contact’s secondary street address\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldCity",
              "fieldValue": "={{ $fromAI(\"fieldCity\", \"Contact’s city\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldState",
              "fieldValue": "={{ $fromAI(\"fieldState\", \"Contact’s state or region\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldZip",
              "fieldValue": "={{ $fromAI(\"fieldZip\", \"Contact’s ZIP or postal code\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldCountry",
              "fieldValue": "={{ $fromAI(\"fieldCountry\", \"Contact’s country\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldPrivatePhone",
              "fieldValue": "={{ $fromAI(\"fieldPrivatePhone\", \"Contact’s private phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldMobilePhone",
              "fieldValue": "={{ $fromAI(\"fieldMobilePhone\", \"Contact’s mobile phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldFax",
              "fieldValue": "={{ $fromAI(\"fieldFax\", \"Contact’s fax number in international format starting with '00' (e.g., 0049301234567)\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldWebsite",
              "fieldValue": "={{ $fromAI(\"fieldWebsite\", \"Contact’s website URL\", \"string\", \"\") }}"
            },
            {
              "fieldId": "fieldBirthday",
              "fieldValue": "={{ $fromAI(\"fieldBirthday\", \"Contact’s birthday as Unix seconds.\", \"number\", \"\") }}"
            },
            {
              "fieldId": "fieldLeadValue",
              "fieldValue": "={{ $fromAI(\"fieldLeadValue\", \"Estimated lead value as a number\", \"number\", \"\") }}"
            }
          ]
        },
        "resource": "subscriber",
        "operation": "update",
        "smsNumber": "={{ $fromAI(\"smsNumber\", \"The contact's SMS number.\", \"string\", \"\") }}",
        "subscriberId": "={{ $fromAI(\"contactId\", \"The contact's ID.\", \"number\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Updates a contact by contact ID."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "5bbf6355-3037-4d59-b893-f6de4e3e4527",
      "name": "Eliminar contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -500,
        280
      ],
      "parameters": {
        "resource": "subscriber",
        "operation": "delete",
        "subscriberId": "={{ $fromAI(\"contactId\", \"The contact's ID.\", \"string\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Deletes a contact."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "49313a57-acc9-4244-b273-ffbf86c9b625",
      "name": "Dar de baja contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -340,
        280
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "resource": "subscriber",
        "operation": "unsubscribe",
        "descriptionType": "manual",
        "toolDescription": "Unsubscribes a contact, preventing further communication."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "f23efcff-e9a1-4e28-9005-4d3e2d217ca9",
      "name": "Listar contactos etiquetados",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -180,
        280
      ],
      "parameters": {
        "tagId": "={{ $fromAI(\"tagId\", \"The tag ID.\", \"number\", \"\") }}",
        "resource": "subscriber",
        "operation": "tagged",
        "descriptionType": "manual",
        "toolDescription": "Lists the IDs and tagging timestamps of all tagged contacts."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "3b4d7467-faf8-4c9a-a80d-23154008544b",
      "name": "Etiquetar contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -860,
        100
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "tagId": "={{ \n  JSON.parse(\n    $fromAI(\n      \"tagIds\",\n      \"Return ONLY a JSON array of numeric tag IDs. \"\n      + \"Absolutely nothing else — no markdown, no back-ticks. \"\n      + \"Example: [12042204,12054769]\",\n      \"string\"\n    )\n  )\n  .map(Number)\n}}\n",
        "resource": "contact-tagging",
        "descriptionType": "manual",
        "toolDescription": "Adds one or more tags to a contact.\nYou can pass a single tag or a list of tags to apply multiple tags in one call."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "906017de-8a73-4e2d-892c-79792e3e4f26",
      "name": "Quitar etiqueta de contacto",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -1000,
        100
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "tagId": "={{ $fromAI(\"tagId\", \"The tag ID.\", \"number\", \"\") }}",
        "resource": "contact-tagging",
        "operation": "untag",
        "descriptionType": "manual",
        "toolDescription": "Removes a tag from a contact."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "b45bfda8-7a10-4456-bd16-cf7254eec398",
      "name": "Obtener campo de datos",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -1200,
        100
      ],
      "parameters": {
        "resource": "field",
        "operation": "get",
        "apiFieldId": "={{ $fromAI(\"fieldId\", \"The data field ID.\", \"string\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Gets the ID and the name of a data field."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "1c33eb1b-f0e7-4e76-ba2e-925737a80196",
      "name": "Listar campos de datos",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -1340,
        100
      ],
      "parameters": {
        "resource": "field",
        "descriptionType": "manual",
        "toolDescription": "Lists the IDs and names of all data fields."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "53627bbf-b097-4e58-b1cc-1013c1f00481",
      "name": "Listar procesos de opt-in",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -1700,
        100
      ],
      "parameters": {
        "resource": "opt-in",
        "descriptionType": "manual",
        "toolDescription": "Lists the IDs and names of all opt-in processes."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "e7de706e-00c8-4b63-a703-8fbe30a03303",
      "name": "Obtener proceso de opt-in",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        -1560,
        100
      ],
      "parameters": {
        "listId": "={{ $fromAI(\"optInId\", \"The opt-in process ID.\", \"number\", \"\") }}",
        "resource": "opt-in",
        "operation": "get",
        "descriptionType": "manual",
        "toolDescription": "Returns the complete data of an opt-in process by ID."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "ee7e4a59-fc33-4315-80e0-b30b914e9749",
      "name": "Obtener URL de redirección",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        40,
        100
      ],
      "parameters": {
        "email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
        "listId": "={{ $fromAI(\"optInId\", \"The opt-in process ID.\", \"number\", \"\") }}",
        "resource": "opt-in",
        "operation": "getRedirect",
        "descriptionType": "manual",
        "toolDescription": "Gets the redirection URL for a specific opt-in process."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "5741d612-c22b-4395-8ab1-f037f4d17381",
      "name": "Listar etiquetas",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        260,
        100
      ],
      "parameters": {
        "descriptionType": "manual",
        "toolDescription": "Lists the IDs and names of all tags."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "2f8e5766-d62a-4252-ac5b-41a6c2bf7dc4",
      "name": "Crear etiqueta",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        380,
        100
      ],
      "parameters": {
        "name": "={{ $fromAI(\"tagName\", \"The tag name\", \"string\", \"\") }}",
        "operation": "create",
        "description": "={{ $fromAI(\"tagDescription\", \"The tag description\", \"string\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Creates a new manual tag."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "7597bdf8-033b-40ac-8a3f-3729bbf94d92",
      "name": "Obtener etiqueta",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        500,
        100
      ],
      "parameters": {
        "tagId": "={{ $fromAI(\"tagId\", \"The tag ID\", \"number\", \"\") }}",
        "operation": "get",
        "descriptionType": "manual",
        "toolDescription": "Returns the name and description of a tag."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "4e50743f-af39-4f28-9125-0df08802dc10",
      "name": "Eliminar etiqueta",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        620,
        100
      ],
      "parameters": {
        "tagId": "={{ $fromAI(\"tagId\", \"The tag ID\", \"number\", \"\") }}",
        "operation": "delete",
        "descriptionType": "manual",
        "toolDescription": "Deletes a tag."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "054c7fcb-efff-4ce0-ac95-70514385c6f0",
      "name": "Actualizar etiqueta",
      "type": "n8n-nodes-klicktipp.klicktippTool",
      "position": [
        740,
        100
      ],
      "parameters": {
        "name": "={{ $fromAI(\"tagName\", \"The tag name\", \"string\", \"\") }}",
        "tagId": "={{ $fromAI(\"tagId\", \"The tag ID\", \"number\", \"\") }}",
        "operation": "update",
        "description": "={{ $fromAI(\"tagDescription\", \"The tag description\", \"string\", \"\") }}",
        "descriptionType": "manual",
        "toolDescription": "Updates a tag."
      },
      "credentials": {
        "klickTippApi": {
          "id": "NTht3frPxvENgu0k",
          "name": "Mykhaylo's KlickTipp"
        }
      },
      "typeVersion": 2
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "6b23235b-34c2-4d5b-a73c-297929347484",
  "connections": {
    "7597bdf8-033b-40ac-8a3f-3729bbf94d92": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "5741d612-c22b-4395-8ab1-f037f4d17381": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2f8e5766-d62a-4252-ac5b-41a6c2bf7dc4": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "4e50743f-af39-4f28-9125-0df08802dc10": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "054c7fcb-efff-4ce0-ac95-70514385c6f0": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "a16c8d05-433e-4459-a0a9-3c4453f2c86a": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "3b4d7467-faf8-4c9a-a80d-23154008544b": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "d1d2384f-d798-41e7-9af1-01b2fe787b94": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "906017de-8a73-4e2d-892c-79792e3e4f26": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "5bbf6355-3037-4d59-b893-f6de4e3e4527": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "bc2ddd85-5df9-412e-ba4f-cefea205bde5": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "b45bfda8-7a10-4456-bd16-cf7254eec398": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "0a1a32e3-88c9-4a37-82b9-0d52f9284119": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "ee7e4a59-fc33-4315-80e0-b30b914e9749": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "1c33eb1b-f0e7-4e76-ba2e-925737a80196": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "d67f04aa-5821-4ab0-b68f-e33eac33338f": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2bdb8896-4f51-4f70-a0b9-6592272aa201": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "e7de706e-00c8-4b63-a703-8fbe30a03303": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "49313a57-acc9-4244-b273-ffbf86c9b625": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "f23efcff-e9a1-4e28-9005-4d3e2d217ca9": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "65dcfb83-65c7-48d6-8f8f-3a8be88c00ea": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "53627bbf-b097-4e58-b1cc-1013c1f00481": {
      "ai_tool": [
        [
          {
            "node": "f77dc3f1-296f-407f-998c-d0c962462c99",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Avanzado - CRM, Chatbot de IA

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos31
Categoría2
Tipos de nodos4
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Autor
KlickTipp

KlickTipp

@KlickTipp

Reach more people. 100% GDPR compliant. Quickly create automated email campaigns, SMS and marketing automations. Market your knowledge independently of Google & Co., sell lucrative products and activate your customers.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34