Add Activepieces integration for workflow automation

- Add Activepieces fork with SmoothSchedule custom piece
- Create integrations app with Activepieces service layer
- Add embed token endpoint for iframe integration
- Create Automations page with embedded workflow builder
- Add sidebar visibility fix for embed mode
- Add list inactive customers endpoint to Public API
- Include SmoothSchedule triggers: event created/updated/cancelled
- Include SmoothSchedule actions: create/update/cancel events, list resources/services/customers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
poduck
2025-12-18 22:59:37 -05:00
parent 9848268d34
commit 3aa7199503
16292 changed files with 1284892 additions and 4708 deletions

View File

@@ -0,0 +1,33 @@
{
"extends": [
"../../../../.eslintrc.base.json"
],
"ignorePatterns": [
"!**/*"
],
"overrides": [
{
"files": [
"*.ts",
"*.tsx",
"*.js",
"*.jsx"
],
"rules": {}
},
{
"files": [
"*.ts",
"*.tsx"
],
"rules": {}
},
{
"files": [
"*.js",
"*.jsx"
],
"rules": {}
}
]
}

View File

@@ -0,0 +1,7 @@
# pieces-reoon-verifier
This library was generated with [Nx](https://nx.dev).
## Building
Run `nx build pieces-reoon-verifier` to build the library.

View File

@@ -0,0 +1,4 @@
{
"name": "@activepieces/piece-reoon-verifier",
"version": "0.0.8"
}

View File

@@ -0,0 +1,57 @@
{
"name": "pieces-reoon-verifier",
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "packages/pieces/community/reoon-verifier/src",
"projectType": "library",
"targets": {
"build": {
"executor": "@nx/js:tsc",
"outputs": [
"{options.outputPath}"
],
"options": {
"outputPath": "dist/packages/pieces/community/reoon-verifier",
"tsConfig": "packages/pieces/community/reoon-verifier/tsconfig.lib.json",
"packageJson": "packages/pieces/community/reoon-verifier/package.json",
"main": "packages/pieces/community/reoon-verifier/src/index.ts",
"assets": [
"packages/pieces/community/reoon-verifier/*.md",
{
"input": "packages/pieces/community/reoon-verifier/src/i18n",
"output": "./src/i18n",
"glob": "**/!(i18n.json)"
}
],
"buildableProjectDepsInPackageJsonType": "dependencies",
"updateBuildableProjectDepsInPackageJson": true
},
"dependsOn": [
"^build",
"prebuild"
]
},
"publish": {
"command": "node tools/scripts/publish.mjs pieces-reoon-verifier {args.ver} {args.tag}",
"dependsOn": [
"build"
]
},
"lint": {
"executor": "@nx/eslint:lint",
"outputs": [
"{options.outputFile}"
]
},
"prebuild": {
"executor": "nx:run-commands",
"options": {
"cwd": "packages/pieces/community/reoon-verifier",
"command": "bun install --no-save --silent"
},
"dependsOn": [
"^build"
]
}
},
"tags": []
}

View File

@@ -0,0 +1,23 @@
{
"Reoon Email Verifier": "Reoon Email Verifier",
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Email validation service that cleans invalid, temporary & unsafe email addresses.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verify Email",
"Create Bulk Email Verification": "Create Bulk Email Verification",
"Get Bulk Verification Result": "Get Bulk Verification Result",
"Verify a single email": "Verify a single email",
"Creates bulk email verification task.": "Creates bulk email verification task.",
"Retrieves result of bulk verification email by task ID.": "Retrieves result of bulk verification email by task ID.",
"Email": "Email",
"Mode": "Mode",
"Task Name": "Task Name",
"Emails": "Emails",
"Task ID": "Task ID",
"Email to verify": "Email to verify",
"Verification mode (Power mode is more accurate but a bit slower)": "Verification mode (Power mode is more accurate but a bit slower)",
"Name of the verification task": "Name of the verification task",
"Emails to verify (You can also provide multiple emails separated by comma)": "Emails to verify (You can also provide multiple emails separated by comma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.",
"Quick": "Quick",
"Power": "Power"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "E-Mail-Validierungsdienst, der ungültige, temporäre und unsichere E-Mail-Adressen bereinigt.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nUm einen Reoon API-Schlüssel zu erhalten, folgen Sie diesen Schritten:\n1. Navigieren Sie zu [API Einstellung](https://emailverifier.reoon.com/api-settings).\n2. Klicken Sie auf den **Neuen API-Schlüssel erstellen** Button.\n3. Geben Sie einen gültigen Titel ein und kopieren Sie den API-Schlüssel.\n",
"Verify Email": "E-Mail bestätigen",
"Create Bulk Email Verification": "Massenüberprüfung erstellen",
"Get Bulk Verification Result": "Sammelprüfungsergebnis erhalten",
"Verify a single email": "Bestätige eine einzelne E-Mail",
"Creates bulk email verification task.": "Erstellt Massenüberprüfungsaufgaben.",
"Retrieves result of bulk verification email by task ID.": "Ruft das Ergebnis einer Massenverifizierung per Task-ID ab.",
"Email": "E-Mail",
"Mode": "Modus",
"Task Name": "Aufgabenname",
"Emails": "E-Mails",
"Task ID": "Task ID",
"Email to verify": "Zu verifizierende E-Mail",
"Verification mode (Power mode is more accurate but a bit slower)": "Verifizierungsmodus (Untermodus ist genauer, aber etwas langsamer)",
"Name of the verification task": "Name der Verifizierungsaufgabe",
"Emails to verify (You can also provide multiple emails separated by comma)": "Zu überprüfende E-Mails (Sie können auch mehrere durch Kommata getrennte E-Mails bereitstellen)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Geben Sie die Task-ID für die Massenüberprüfungsaufgabe an. Sie können diese aus der Aktion \"Massenüberprüfung erstellen\" abrufen.",
"Quick": "Schnell",
"Power": "Macht"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Servicio de validación de correo electrónico que limpia direcciones de correo no válidas, temporales e inseguros.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verificar Email",
"Create Bulk Email Verification": "Crear verificación masiva de correo electrónico",
"Get Bulk Verification Result": "Obtener el resultado de la verificación masiva",
"Verify a single email": "Verificar un solo email",
"Creates bulk email verification task.": "Crea una tarea de verificación de correo electrónico masivo.",
"Retrieves result of bulk verification email by task ID.": "Obtiene el resultado de la verificación masiva de correo electrónico por el ID de la tarea.",
"Email": "E-mail",
"Mode": "Modo",
"Task Name": "Nombre de tarea",
"Emails": "Correos",
"Task ID": "Task ID",
"Email to verify": "Email para verificar",
"Verification mode (Power mode is more accurate but a bit slower)": "Modo de verificación (Power es más preciso pero un poco más lento)",
"Name of the verification task": "Nombre de la tarea de verificación",
"Emails to verify (You can also provide multiple emails separated by comma)": "Correos para verificar (también puede proporcionar varios correos separados por coma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Proporcione el ID de tarea para la tarea de verificación masiva. Puede obtenerlo desde la acción `Crear verificación masiva de correo electrónico`.",
"Quick": "Rápido",
"Power": "Potencia"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Service de validation de courriel qui nettoie les adresses e-mail invalides, temporaires et non sécurisées.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Vérifier l'e-mail",
"Create Bulk Email Verification": "Créer une vérification de courriel en bloc",
"Get Bulk Verification Result": "Obtenir le résultat de vérification en bloc",
"Verify a single email": "Vérifier un seul e-mail",
"Creates bulk email verification task.": "Crée une tâche de vérification de courriel en masse.",
"Retrieves result of bulk verification email by task ID.": "Récupère le résultat de l'e-mail de vérification en masse par ID de tâche.",
"Email": "Courriel",
"Mode": "Mode",
"Task Name": "Nom de la tâche",
"Emails": "E-mails",
"Task ID": "Task ID",
"Email to verify": "Courriel à vérifier",
"Verification mode (Power mode is more accurate but a bit slower)": "Mode de vérification (Power mode est plus précis mais un peu plus lent)",
"Name of the verification task": "Nom de la tâche de vérification",
"Emails to verify (You can also provide multiple emails separated by comma)": "E-mails à vérifier (vous pouvez également fournir plusieurs emails séparés par des virgules)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Fournissez l'ID de la tâche pour la tâche de vérification en vrac. Vous pouvez l'extraire à partir de l'action `Créer une vérification d'email en bloc`.",
"Quick": "Rapide",
"Power": "Électricité"
}

View File

@@ -0,0 +1,23 @@
{
"Reoon Email Verifier": "Reoon Email Verifier",
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Email validation service that cleans invalid, temporary & unsafe email addresses.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verify Email",
"Create Bulk Email Verification": "Create Bulk Email Verification",
"Get Bulk Verification Result": "Get Bulk Verification Result",
"Verify a single email": "Verify a single email",
"Creates bulk email verification task.": "Creates bulk email verification task.",
"Retrieves result of bulk verification email by task ID.": "Retrieves result of bulk verification email by task ID.",
"Email": "Email",
"Mode": "Mode",
"Task Name": "Task Name",
"Emails": "Emails",
"Task ID": "Task ID",
"Email to verify": "Email to verify",
"Verification mode (Power mode is more accurate but a bit slower)": "Verification mode (Power mode is more accurate but a bit slower)",
"Name of the verification task": "Name of the verification task",
"Emails to verify (You can also provide multiple emails separated by comma)": "Emails to verify (You can also provide multiple emails separated by comma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.",
"Quick": "Quick",
"Power": "Power"
}

View File

@@ -0,0 +1,23 @@
{
"Reoon Email Verifier": "Reoon Email Verifier",
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Email validation service that cleans invalid, temporary & unsafe email addresses.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verify Email",
"Create Bulk Email Verification": "Create Bulk Email Verification",
"Get Bulk Verification Result": "Get Bulk Verification Result",
"Verify a single email": "Verify a single email",
"Creates bulk email verification task.": "Creates bulk email verification task.",
"Retrieves result of bulk verification email by task ID.": "Retrieves result of bulk verification email by task ID.",
"Email": "Email",
"Mode": "Mode",
"Task Name": "Task Name",
"Emails": "Emails",
"Task ID": "Task ID",
"Email to verify": "Email to verify",
"Verification mode (Power mode is more accurate but a bit slower)": "Verification mode (Power mode is more accurate but a bit slower)",
"Name of the verification task": "Name of the verification task",
"Emails to verify (You can also provide multiple emails separated by comma)": "Emails to verify (You can also provide multiple emails separated by comma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.",
"Quick": "Quick",
"Power": "Power"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "無効、一時的、安全でないメールアドレスをクリーンアップするメール検証サービスです。",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "メールアドレスを確認する",
"Create Bulk Email Verification": "一括メール確認を作成",
"Get Bulk Verification Result": "一括確認結果を取得",
"Verify a single email": "単一のメールアドレスを確認する",
"Creates bulk email verification task.": "一括メール確認タスクを作成します。",
"Retrieves result of bulk verification email by task ID.": "タスク ID による一括確認メールを取得します。",
"Email": "Eメールアドレス",
"Mode": "モード",
"Task Name": "タスク名",
"Emails": "E-mail",
"Task ID": "Task ID",
"Email to verify": "確認するメール",
"Verification mode (Power mode is more accurate but a bit slower)": "検証モード(電源モードの方が正確だが少し遅い)",
"Name of the verification task": "確認タスクの名前",
"Emails to verify (You can also provide multiple emails separated by comma)": "確認するメール (複数のメールをカンマで区切って提供することもできます)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "一括確認タスクのタスクIDを指定します。一括確認の作成アクションから取得できます。",
"Quick": "Quick",
"Power": "パワー"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "E-mail validatie service die ongeldige, tijdelijke en onveilige e-mailadressen opslaat.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Bevestig e-mailadres",
"Create Bulk Email Verification": "Bulk e-mail verificatie aanmaken",
"Get Bulk Verification Result": "Krijg Bulk Verificatie Resultaat",
"Verify a single email": "Controleer een enkel e-mailadres",
"Creates bulk email verification task.": "Maakt bulk e-mail verificatie taak aan.",
"Retrieves result of bulk verification email by task ID.": "Ophalen resultaat van bulkverificatie e-mail via taak-ID.",
"Email": "E-mail",
"Mode": "Modus",
"Task Name": "Taak naam",
"Emails": "E-mails",
"Task ID": "Task ID",
"Email to verify": "E-mail om te verifiëren",
"Verification mode (Power mode is more accurate but a bit slower)": "Verificatiemodus (Power mode is nauwkeuriger maar een beetje langzamer)",
"Name of the verification task": "Naam van de verificatietaak",
"Emails to verify (You can also provide multiple emails separated by comma)": "E-mails om te verifiëren (U kunt ook meerdere e-mails opgeven, gescheiden door een komma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Geef de taak ID voor de bulk verificatie-taak. U kunt dit ophalen uit de `Create Bulk E-mail Verificatie` actie.",
"Quick": "Snel",
"Power": "Vermogen"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Serviço de validação de e-mail que limpa endereços de e-mail inválidos, temporários e inseguros.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nPara obter uma chave de Reoon API, siga estes passos:\n1. Navegue até [Configuração da API](https://emailverifier.reoon.com/api-settings).\n2. Clique no botão **Criar nova chave de API**.\n3. Insira um título válido e copie a chave de API.\n",
"Verify Email": "Verificar e-mail",
"Create Bulk Email Verification": "Criar verificação em massa de e-mail",
"Get Bulk Verification Result": "Obter resultado de verificação em massa",
"Verify a single email": "Verifique um único email",
"Creates bulk email verification task.": "Cria tarefa de verificação em massa de e-mail.",
"Retrieves result of bulk verification email by task ID.": "Recupera o resultado de e-mail de verificação em massa por ID da tarefa.",
"Email": "e-mail",
"Mode": "Modo",
"Task Name": "Nome da tarefa",
"Emails": "e-mails",
"Task ID": "Task ID",
"Email to verify": "E-mail para verificar",
"Verification mode (Power mode is more accurate but a bit slower)": "Modo de verificação (Modo de ower é mais preciso, mas um pouco mais lento)",
"Name of the verification task": "Nome da tarefa de verificação",
"Emails to verify (You can also provide multiple emails separated by comma)": "E-mails para verificar (Você também pode fornecer vários e-mails separados por vírgula)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Forneça o ID da tarefa de verificação em massa. Você pode obter isso na ação `Create Bulk Email Verification`.",
"Quick": "Rápido",
"Power": "Liga/Desliga"
}

View File

@@ -0,0 +1,23 @@
{
"Reoon Email Verifier": "Reoon Email Verifier",
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Служба проверки электронной почты, которая очищает некорректные, временные и небезопасные адреса электронной почты.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nДля получения ключа Reoon API, выполните следующие действия:\n1. Перейдите в [Настройки API](https://emailverifier.reoon.com/api-settings).\n2. Нажмите на кнопку **Создать новый API ключ**.\n3. Введите правильный заголовок и скопируйте ключ API.\n",
"Verify Email": "Подтвердить email",
"Create Bulk Email Verification": "Создать массовую проверку электронной почты",
"Get Bulk Verification Result": "Получить результат массовой проверки",
"Verify a single email": "Проверить одно письмо",
"Creates bulk email verification task.": "Создает массовую задачу проверки электронной почты.",
"Retrieves result of bulk verification email by task ID.": "Получает результат массовой проверки электронной почты по идентификатору задачи.",
"Email": "Почта",
"Mode": "Режим",
"Task Name": "Название задачи",
"Emails": "Письма",
"Task ID": "Task ID",
"Email to verify": "Email для проверки",
"Verification mode (Power mode is more accurate but a bit slower)": "Режим проверки (Режим питания более точен, но немного медленнее)",
"Name of the verification task": "Имя задачи по проверке",
"Emails to verify (You can also provide multiple emails separated by comma)": "Письма для проверки (вы также можете предоставить несколько писем, разделенных запятыми)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Предоставьте идентификатор задачи для массового верификации. Вы можете получить это из действия `Создать массовую верификацию электронной почты`.",
"Quick": "Быстрое",
"Power": "Сила"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Email validation service that cleans invalid, temporary & unsafe email addresses.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verify Email",
"Create Bulk Email Verification": "Create Bulk Email Verification",
"Get Bulk Verification Result": "Get Bulk Verification Result",
"Verify a single email": "Verify a single email",
"Creates bulk email verification task.": "Creates bulk email verification task.",
"Retrieves result of bulk verification email by task ID.": "Retrieves result of bulk verification email by task ID.",
"Email": "Email",
"Mode": "Mode",
"Task Name": "Task Name",
"Emails": "Emails",
"Task ID": "Task ID",
"Email to verify": "Email to verify",
"Verification mode (Power mode is more accurate but a bit slower)": "Verification mode (Power mode is more accurate but a bit slower)",
"Name of the verification task": "Name of the verification task",
"Emails to verify (You can also provide multiple emails separated by comma)": "Emails to verify (You can also provide multiple emails separated by comma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.",
"Quick": "Quick",
"Power": "Power"
}

View File

@@ -0,0 +1,23 @@
{
"Reoon Email Verifier": "Reoon Email Verifier",
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Email validation service that cleans invalid, temporary & unsafe email addresses.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verify Email",
"Create Bulk Email Verification": "Create Bulk Email Verification",
"Get Bulk Verification Result": "Get Bulk Verification Result",
"Verify a single email": "Verify a single email",
"Creates bulk email verification task.": "Creates bulk email verification task.",
"Retrieves result of bulk verification email by task ID.": "Retrieves result of bulk verification email by task ID.",
"Email": "Email",
"Mode": "Mode",
"Task Name": "Task Name",
"Emails": "Emails",
"Task ID": "Task ID",
"Email to verify": "Email to verify",
"Verification mode (Power mode is more accurate but a bit slower)": "Verification mode (Power mode is more accurate but a bit slower)",
"Name of the verification task": "Name of the verification task",
"Emails to verify (You can also provide multiple emails separated by comma)": "Emails to verify (You can also provide multiple emails separated by comma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.",
"Quick": "Quick",
"Power": "Power"
}

View File

@@ -0,0 +1,22 @@
{
"Email validation service that cleans invalid, temporary & unsafe email addresses.": "Email validation service that cleans invalid, temporary & unsafe email addresses.",
"\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n": "\nTo obtain a Reoon API key, follow these steps:\n1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).\n2. Click on the **Create New API Key** button.\n3. Enter a valid title and copy the API key.\n",
"Verify Email": "Verify Email",
"Create Bulk Email Verification": "Create Bulk Email Verification",
"Get Bulk Verification Result": "Get Bulk Verification Result",
"Verify a single email": "Verify a single email",
"Creates bulk email verification task.": "Creates bulk email verification task.",
"Retrieves result of bulk verification email by task ID.": "Retrieves result of bulk verification email by task ID.",
"Email": "电子邮件地址",
"Mode": "Mode",
"Task Name": "Task Name",
"Emails": "电子邮件",
"Task ID": "Task ID",
"Email to verify": "Email to verify",
"Verification mode (Power mode is more accurate but a bit slower)": "Verification mode (Power mode is more accurate but a bit slower)",
"Name of the verification task": "Name of the verification task",
"Emails to verify (You can also provide multiple emails separated by comma)": "Emails to verify (You can also provide multiple emails separated by comma)",
"Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.": "Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.",
"Quick": "Quick",
"Power": "Power"
}

View File

@@ -0,0 +1,57 @@
import { createPiece, PieceAuth } from '@activepieces/pieces-framework';
import { verifyEmail } from './lib/actions/verify-email';
import { verifySingleEmail } from './lib/common/send-util';
import { HttpError } from '@activepieces/pieces-common';
import { bulkEmailVerification } from './lib/actions/bulk-email-verification';
import { PieceCategory } from '@activepieces/shared';
import { bulkVerificationResult } from './lib/actions/bulk-email-verification-status';
const description = `
To obtain a Reoon API key, follow these steps:
1. Navigate to [API Setting](https://emailverifier.reoon.com/api-settings).
2. Click on the **Create New API Key** button.
3. Enter a valid title and copy the API key.
`;
export const reoonEmailVerifyAuth = PieceAuth.SecretText({
displayName: 'API Key',
required: true,
description,
validate: async (auth) => {
try {
await verifySingleEmail('placeholder@test', 'quick', auth.auth);
} catch (e) {
const status = (e as HttpError).response.status;
// Other 4xx status codes mean the API key is valid
if (status === 401) {
return {
valid: false,
error: 'Your API key is invalid or has expired',
};
} else if (status >= 500) {
return {
valid: false,
error: 'An error occurred from the Reoon Email Verifier API',
};
}
}
return {
valid: true,
};
},
});
export const reoonEmailVerify = createPiece({
displayName: 'Reoon Email Verifier',
auth: reoonEmailVerifyAuth,
minimumSupportedRelease: '0.30.0',
categories: [PieceCategory.MARKETING],
logoUrl: 'https://cdn.activepieces.com/pieces/reoon-verifier.png',
description:
'Email validation service that cleans invalid, temporary & unsafe email addresses.',
authors: ['AnneMariel95'],
actions: [verifyEmail, bulkEmailVerification, bulkVerificationResult],
triggers: [],
});

View File

@@ -0,0 +1,25 @@
import { reoonEmailVerifyAuth } from '../..';
import { createAction, Property } from '@activepieces/pieces-framework';
import { verifyEmailsResult } from '../common/send-util';
export const bulkVerificationResult = createAction({
auth: reoonEmailVerifyAuth,
name: 'bulkVerificationResult',
displayName: 'Get Bulk Verification Result',
description: 'Retrieves result of bulk verification email by task ID.',
props: {
task_id: Property.ShortText({
displayName: 'Task ID',
description:
'Provide the task ID for the bulk verification task. You can fetch this from the `Create Bulk Email Verification` action.',
required: true,
}),
},
async run(context) {
const { task_id } = context.propsValue;
const response = await verifyEmailsResult(task_id, context.auth.secret_text);
return response.body;
},
});

View File

@@ -0,0 +1,40 @@
import { reoonEmailVerifyAuth } from '../..';
import { createAction, Property } from '@activepieces/pieces-framework';
import { verifyEmails } from '../common/send-util';
export const bulkEmailVerification = createAction({
auth: reoonEmailVerifyAuth,
name: 'bulkEmailVerificationTask',
displayName: 'Create Bulk Email Verification',
description: 'Creates bulk email verification task.',
props: {
taskName: Property.ShortText({
displayName: 'Task Name',
description: 'Name of the verification task',
required: true,
}),
emails: Property.Array({
displayName: 'Emails',
description:
'Emails to verify (You can also provide multiple emails separated by comma)',
required: true,
}),
},
async run(context) {
const emails = context.propsValue.emails as string[];
// Each email field could be a comma separated list of emails so we need to split them
const emailsToVerify = emails.reduce(
(acc: string[], email: string) => [...acc, ...email.split(',')],
[]
);
const res = await verifyEmails(
emailsToVerify,
context.propsValue.taskName,
context.auth.secret_text
);
return res.body;
},
});

View File

@@ -0,0 +1,44 @@
import { reoonEmailVerifyAuth } from '../..';
import { createAction, Property } from '@activepieces/pieces-framework';
import { VerifyEmailMode, verifySingleEmail } from '../common/send-util';
export const verifyEmail = createAction({
auth: reoonEmailVerifyAuth,
name: 'verifyEmail',
displayName: 'Verify Email',
description: 'Verify a single email',
props: {
email: Property.ShortText({
displayName: 'Email',
description: 'Email to verify',
required: true,
}),
mode: Property.StaticDropdown<VerifyEmailMode, true>({
displayName: 'Mode',
defaultValue: 'power',
description:
'Verification mode (Power mode is more accurate but a bit slower)',
options: {
placeholder: 'Select a mode',
options: [
{
label: 'Quick',
value: 'quick',
},
{
label: 'Power',
value: 'power',
},
],
},
required: true,
}),
},
async run(context) {
return verifySingleEmail(
context.propsValue.email,
context.propsValue.mode,
context.auth.secret_text
).then((res) => res.body);
},
});

View File

@@ -0,0 +1,41 @@
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
export type VerifyEmailMode = 'power' | 'quick';
export const verifySingleEmail = (
email: string,
mode: string,
apiKey: string
) => {
return httpClient.sendRequest({
method: HttpMethod.GET,
url: `https://emailverifier.reoon.com/api/v1/verify?email=${email}&key=${apiKey}&mode=${mode}`,
});
};
export const verifyEmails = (
emails: string[],
taskName: string,
apiKey: string
) => {
return httpClient.sendRequest({
method: HttpMethod.POST,
url: `https://emailverifier.reoon.com/api/v1/create-bulk-verification-task`,
body: {
name: taskName,
emails,
key: apiKey,
},
});
};
export async function verifyEmailsResult(taskId: string, apiKey: string) {
return await httpClient.sendRequest({
method: HttpMethod.GET,
url: 'https://emailverifier.reoon.com/api/v1/get-result-bulk-verification-task',
queryParams: {
key: apiKey,
task_id: taskId,
},
});
}

View File

@@ -0,0 +1,19 @@
{
"extends": "../../../../tsconfig.base.json",
"compilerOptions": {
"module": "commonjs",
"forceConsistentCasingInFileNames": true,
"strict": true,
"noImplicitOverride": true,
"noPropertyAccessFromIndexSignature": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true
},
"files": [],
"include": [],
"references": [
{
"path": "./tsconfig.lib.json"
}
]
}

View File

@@ -0,0 +1,11 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"module": "commonjs",
"outDir": "../../../../dist/out-tsc",
"declaration": true,
"types": ["node"]
},
"exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"],
"include": ["src/**/*.ts"]
}