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,83 @@
{
"Engage users with targeted announcements": "Nutzer mit gezielten Ankündigungen verbinden",
"API key acquired from your Beamer settings": "API-Schlüssel von Ihren Beamer-Einstellungen übernommen",
"Create Beamer Post ": "Beamer-Post erstellen ",
"Create New Feature Request ": "Neue Feature-Anfrage erstellen ",
"Create a new comment": "Neuen Kommentar erstellen",
"Create a new vote ": "Neue Abstimmung erstellen ",
"Custom API Call": "Eigener API-Aufruf",
"Create a new post in Beamer": "Erstelle einen neuen Beitrag in Beamer",
"Create New Feature Request": "Neue Feature-Anfrage erstellen",
"Create a new comment for a Feature request": "Erstelle einen neuen Kommentar für eine Feature-Anfrage",
"Create a new vote on a feature request": "Erstelle eine neue Abstimmung auf einem Feature-Request",
"Make a custom API call to a specific endpoint": "Einen benutzerdefinierten API-Aufruf an einen bestimmten Endpunkt machen",
"Title": "Titel",
"Description": "Beschreibung",
"Category": "Kategorie",
"Show In Widget ": "Im Widget anzeigen ",
"Show In Standalone ": "In Standalone anzeigen ",
"Enable Feedback": "Feedback aktivieren",
"Enable Reactions": "Reaktionen aktivieren",
"Enable Social share": "Soziale Freigabe aktivieren",
"Enable Auto open": "Auto-Öffnen aktivieren",
"Enable Push Notifications": "Push-Benachrichtigungen aktivieren",
"User Email": "Benutzer-E-Mail",
"Visibility": "Sichtbarkeit",
"Status": "Status",
"ID": "ID",
"User ID": "Benutzer-ID",
"Text": "Text",
"Feature ID": "Merkmals-ID",
"User Firstname": "Benutzervorname",
"Method": "Methode",
"Headers": "Kopfzeilen",
"Query Parameters": "Abfrageparameter",
"Body": "Körper",
"Response is Binary ?": "Antwort ist binär?",
"No Error on Failure": "Kein Fehler bei Fehler",
"Timeout (in seconds)": "Timeout (in Sekunden)",
"Enter the Title of the post": "Titel des Beitrags eingeben",
"Enter the description of the post": "Beschreibung des Beitrags eingeben",
"Set Category": "Kategorie festlegen",
"Check to enable widget": "Auswählen, um Widget zu aktivieren",
"Check to enable Standalone": "Auswählen, um Standalone zu aktivieren",
"Check to enable feedback": "Auswählen, um Feedback zu aktivieren",
"Check to enable social share": "Auswählen, um Social Share zu aktivieren",
"Check to enable auto open": "Auswählen, um Auto-Öffnen zu aktivieren",
"Check to enable Push Notifications": "Auswählen, um Push-Benachrichtigungen zu aktivieren",
"Enter user email": "Benutzer-E-Mail eingeben",
"Set visiblisty": "Sichtbarkeit festlegen",
"Set status": "Status festlegen",
"Feature requested by..": "Funktion angefordert von..",
"ID of the feature request": "ID der Feature-Anfrage",
"id of the user making the comment": "id des Benutzers, der den Kommentar abgibt",
"Content of your comment": "Inhalt Ihres Kommentars",
"ID of the feature request to create a comment for": "ID der Feature-Anforderung, um einen Kommentar zu erstellen für",
"Authorization headers are injected automatically from your connection.": "Autorisierungs-Header werden automatisch von Ihrer Verbindung injiziert.",
"Enable for files like PDFs, images, etc..": "Aktivieren für Dateien wie PDFs, Bilder, etc..",
"New": "Neu",
"Fix": "Beheben",
"Coming Soon ": "Demnächst ",
"Announcement": "Mitteilung",
"Improvement": "Verbesserung",
"True": "Ja",
"False": "Nein",
"Public": "Öffentlich",
"Internal": "Intern",
"Bug": "Bug",
"Feature Request": "Feature-Anfrage",
"Under Review": "Wird geprüft",
"Planned": "Geplant",
"In Progress": "In Bearbeitung",
"Completed": "Abgeschlossen",
"GET": "ERHALTEN",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "LÖSCHEN",
"HEAD": "HEAD",
"New Beamer Post": "Neuer Beamerposten",
"Triggers when new post is found in your beamer account": "Löst aus, wenn ein neuer Beitrag in deinem beamer-Konto gefunden wird",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Gehen Sie zum Abschnitt \"Integration\".\n- Suchen und klicken Sie auf das Plugin \"Webhook\", um es zu aktivieren.\n- Fügen Sie diesem Formular einen Webhook hinzu.\n- Fügen Sie in die Webhook-Einstellungen folgende URL ein: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "Incorporar a los usuarios con anuncios dirigidos",
"API key acquired from your Beamer settings": "Clave API adquirida de tus ajustes de Beamer",
"Create Beamer Post ": "Crear Post Beamer ",
"Create New Feature Request ": "Crear nueva solicitud de funcionalidad ",
"Create a new comment": "Crear un nuevo comentario",
"Create a new vote ": "Crear un nuevo voto ",
"Custom API Call": "Llamada API personalizada",
"Create a new post in Beamer": "Crear un nuevo post en Beamer",
"Create New Feature Request": "Crear nueva solicitud de funcionalidad",
"Create a new comment for a Feature request": "Crear un nuevo comentario para una solicitud de Característica",
"Create a new vote on a feature request": "Crear una nueva votación en una solicitud de característica",
"Make a custom API call to a specific endpoint": "Hacer una llamada API personalizada a un extremo específico",
"Title": "Título",
"Description": "Descripción",
"Category": "Categoría",
"Show In Widget ": "Mostrar en Widget ",
"Show In Standalone ": "Mostrar en modo independiente ",
"Enable Feedback": "Activar Comentarios",
"Enable Reactions": "Habilitar Reacciones",
"Enable Social share": "Activar cuota social",
"Enable Auto open": "Activar Auto Abierto",
"Enable Push Notifications": "Habilitar notificaciones push",
"User Email": "Email de usuario",
"Visibility": "Visibilidad",
"Status": "Estado",
"ID": "ID",
"User ID": "ID Usuario",
"Text": "Texto",
"Feature ID": "ID de Característica",
"User Firstname": "Primer nombre de usuario",
"Method": "Método",
"Headers": "Encabezados",
"Query Parameters": "Parámetros de consulta",
"Body": "Cuerpo",
"Response is Binary ?": "¿Respuesta es binaria?",
"No Error on Failure": "No hay ningún error en fallo",
"Timeout (in seconds)": "Tiempo de espera (en segundos)",
"Enter the Title of the post": "Introduzca el título de la publicación",
"Enter the description of the post": "Introduzca la descripción del mensaje",
"Set Category": "Definir categoría",
"Check to enable widget": "Marcar para activar el widget",
"Check to enable Standalone": "Marcar para activar independiente",
"Check to enable feedback": "Marca para activar comentarios",
"Check to enable social share": "Marcar para activar el compartimiento social",
"Check to enable auto open": "Marcar para activar el autoapertura",
"Check to enable Push Notifications": "Marcar para habilitar notificaciones push",
"Enter user email": "Introduzca email de usuario",
"Set visiblisty": "Definir visibilidad",
"Set status": "Establecer estado",
"Feature requested by..": "Característica solicitada por..",
"ID of the feature request": "ID de la solicitud de característica",
"id of the user making the comment": "id del usuario haciendo el comentario",
"Content of your comment": "Contenido de tu comentario",
"ID of the feature request to create a comment for": "ID de la solicitud de característica para crear un comentario para",
"Authorization headers are injected automatically from your connection.": "Las cabeceras de autorización se inyectan automáticamente desde tu conexión.",
"Enable for files like PDFs, images, etc..": "Activar para archivos como PDFs, imágenes, etc.",
"New": "Nuevo",
"Fix": "Fijar",
"Coming Soon ": "Próximamente ",
"Announcement": "Anuncio",
"Improvement": "Mejora",
"True": "Verdadero",
"False": "Falso",
"Public": "Público",
"Internal": "Interno",
"Bug": "Fallo",
"Feature Request": "Solicitud de funcionalidad",
"Under Review": "Bajo revisión",
"Planned": "Planeado",
"In Progress": "En curso",
"Completed": "Completado",
"GET": "RECOGER",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "BORRAR",
"HEAD": "LIMPIO",
"New Beamer Post": "Nuevo Beamer Post",
"Triggers when new post is found in your beamer account": "Dispara cuando se encuentra un nuevo post en tu cuenta de beamer",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "Engagez les utilisateurs avec les annonces ciblées",
"API key acquired from your Beamer settings": "Clé API acquise dans les paramètres de votre Beamer",
"Create Beamer Post ": "Créer un Beamer Post ",
"Create New Feature Request ": "Créer une nouvelle demande de fonctionnalité ",
"Create a new comment": "Créer un nouveau commentaire",
"Create a new vote ": "Créer un nouveau vote ",
"Custom API Call": "Appel API personnalisé",
"Create a new post in Beamer": "Créer un nouveau message dans le Beamer",
"Create New Feature Request": "Créer une nouvelle demande de fonctionnalité",
"Create a new comment for a Feature request": "Créer un nouveau commentaire pour une demande de fonctionnalité",
"Create a new vote on a feature request": "Créer un nouveau vote sur une demande de fonctionnalité",
"Make a custom API call to a specific endpoint": "Passez un appel API personnalisé à un point de terminaison spécifique",
"Title": "Titre de la page",
"Description": "Libellé",
"Category": "Catégorie",
"Show In Widget ": "Afficher dans le Widget ",
"Show In Standalone ": "Afficher en mode autonome ",
"Enable Feedback": "Activer les commentaires",
"Enable Reactions": "Activer les réactions",
"Enable Social share": "Activer le partage social",
"Enable Auto open": "Activer l'ouverture automatique",
"Enable Push Notifications": "Activer les notifications push",
"User Email": "E-mail de l'utilisateur",
"Visibility": "Visibilité",
"Status": "Statut",
"ID": "ID",
"User ID": "Identifiant de l'utilisateur",
"Text": "Texte du texte",
"Feature ID": "ID de la fonctionnalité",
"User Firstname": "Prénom de l'utilisateur",
"Method": "Méthode",
"Headers": "En-têtes",
"Query Parameters": "Paramètres de requête",
"Body": "Corps",
"Response is Binary ?": "La réponse est Binaire ?",
"No Error on Failure": "Aucune erreur en cas d'échec",
"Timeout (in seconds)": "Délai d'attente (en secondes)",
"Enter the Title of the post": "Entrez le titre du message",
"Enter the description of the post": "Entrez la description du message",
"Set Category": "Définir la catégorie",
"Check to enable widget": "Cocher pour activer le widget",
"Check to enable Standalone": "Cochez cette case pour activer le mode autonome",
"Check to enable feedback": "Cochez cette case pour activer les commentaires",
"Check to enable social share": "Cochez cette case pour activer le partage social",
"Check to enable auto open": "Cochez cette case pour activer l'ouverture automatique",
"Check to enable Push Notifications": "Cochez cette case pour activer les notifications push",
"Enter user email": "Entrez l'email de l'utilisateur",
"Set visiblisty": "Définir la visibilité",
"Set status": "Définir le statut",
"Feature requested by..": "Fonctionnalité demandée par..",
"ID of the feature request": "ID de la demande de fonctionnalité",
"id of the user making the comment": "id de l'utilisateur faisant le commentaire",
"Content of your comment": "Contenu de votre commentaire",
"ID of the feature request to create a comment for": "ID de la demande de fonctionnalité pour créer un commentaire pour",
"Authorization headers are injected automatically from your connection.": "Les en-têtes d'autorisation sont injectés automatiquement à partir de votre connexion.",
"Enable for files like PDFs, images, etc..": "Activer pour les fichiers comme les PDFs, les images, etc.",
"New": "Nouveau",
"Fix": "Corriger",
"Coming Soon ": "Bientôt disponible ",
"Announcement": "Annonce",
"Improvement": "Amélioration",
"True": "Vrai",
"False": "Faux",
"Public": "Publique",
"Internal": "Interne",
"Bug": "Bug",
"Feature Request": "Demande de fonctionnalité",
"Under Review": "En cours de révision",
"Planned": "Planifié",
"In Progress": "En cours",
"Completed": "Terminé",
"GET": "OBTENIR",
"POST": "POSTER",
"PATCH": "PATCH",
"PUT": "EFFACER",
"DELETE": "SUPPRIMER",
"HEAD": "TÊTE",
"New Beamer Post": "Nouveau Beamer Post",
"Triggers when new post is found in your beamer account": "Déclenche quand un nouveau message est trouvé dans votre compte beamer",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "ターゲットを絞ったアナウンスでユーザーをエンゲージする",
"API key acquired from your Beamer settings": "Beamerの設定から取得したAPIキー",
"Create Beamer Post ": "ビームの投稿を作成 ",
"Create New Feature Request ": "新しい機能リクエストを作成 ",
"Create a new comment": "新しいコメントを作成",
"Create a new vote ": "新しい投票を作成 ",
"Custom API Call": "カスタムAPI通話",
"Create a new post in Beamer": "Beamer に新しい投稿を作成",
"Create New Feature Request": "新しい機能リクエストを作成",
"Create a new comment for a Feature request": "機能リクエストの新しいコメントを作成する",
"Create a new vote on a feature request": "機能リクエストに新しい投票を作成する",
"Make a custom API call to a specific endpoint": "特定のエンドポイントへのカスタム API コールを実行します。",
"Title": "タイトル",
"Description": "説明",
"Category": "カテゴリ",
"Show In Widget ": "ウィジェットに表示 ",
"Show In Standalone ": "スタンドアロンで表示 ",
"Enable Feedback": "フィードバックを有効にする",
"Enable Reactions": "リアクションを有効にする",
"Enable Social share": "ソーシャル共有を有効にする",
"Enable Auto open": "自動開封を有効にする",
"Enable Push Notifications": "プッシュ通知を有効にする",
"User Email": "ユーザーのメールアドレス",
"Visibility": "公開範囲",
"Status": "ステータス",
"ID": "ID",
"User ID": "ユーザー ID",
"Text": "テキスト",
"Feature ID": "機能ID",
"User Firstname": "ユーザー名",
"Method": "方法",
"Headers": "ヘッダー",
"Query Parameters": "クエリパラメータ",
"Body": "本文",
"Response is Binary ?": "応答はバイナリですか?",
"No Error on Failure": "失敗時にエラーはありません",
"Timeout (in seconds)": "タイムアウト(秒)",
"Enter the Title of the post": "投稿のタイトルを入力してください",
"Enter the description of the post": "投稿の説明を入力してください",
"Set Category": "カテゴリの設定",
"Check to enable widget": "ウィジェットを有効にする場合チェック",
"Check to enable Standalone": "スタンドアロンを有効にする場合チェック",
"Check to enable feedback": "フィードバックを有効にする場合チェック",
"Check to enable social share": "ソーシャル共有を有効にする場合チェック",
"Check to enable auto open": "自動開放を有効にする場合チェック",
"Check to enable Push Notifications": "プッシュ通知を有効にする場合チェック",
"Enter user email": "ユーザーのメールアドレスを入力してください",
"Set visiblisty": "visiblistyを設定",
"Set status": "ステータスを設定",
"Feature requested by..": "リクエストされた機能",
"ID of the feature request": "機能リクエストのID",
"id of the user making the comment": "コメントを作成しているユーザーのID",
"Content of your comment": "コメントの内容",
"ID of the feature request to create a comment for": "コメントを作成する機能リクエストのID",
"Authorization headers are injected automatically from your connection.": "認証ヘッダは接続から自動的に注入されます。",
"Enable for files like PDFs, images, etc..": "PDF、画像などのファイルを有効にします。",
"New": "新規作成",
"Fix": "修正",
"Coming Soon ": "近日公開 ",
"Announcement": "お知らせ",
"Improvement": "Melhoria",
"True": "True",
"False": "False",
"Public": "公開",
"Internal": "内部",
"Bug": "バグ",
"Feature Request": "機能のリクエスト",
"Under Review": "レビュー中",
"Planned": "計画済み",
"In Progress": "進行中",
"Completed": "完了",
"GET": "取得",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "削除",
"HEAD": "頭",
"New Beamer Post": "新しいビームの投稿",
"Triggers when new post is found in your beamer account": "あなたのビームアカウントで新しい投稿が見つかったときにトリガーします",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "Gebruikers contacteren met gerichte aankondigingen",
"API key acquired from your Beamer settings": "API-sleutel verkregen via je Beamer instellingen",
"Create Beamer Post ": "Maak Beamer Post ",
"Create New Feature Request ": "Maak een nieuw functieverzoek ",
"Create a new comment": "Maak een nieuwe reactie",
"Create a new vote ": "Maak een nieuwe stem ",
"Custom API Call": "Custom API Call",
"Create a new post in Beamer": "Maak een nieuwe post in Beamer",
"Create New Feature Request": "Maak een nieuw functieverzoek",
"Create a new comment for a Feature request": "Maak een nieuwe opmerking voor een verzoek om Feature",
"Create a new vote on a feature request": "Maak een nieuwe stemming over een verzoek voor een functie",
"Make a custom API call to a specific endpoint": "Maak een aangepaste API call naar een specifiek eindpunt",
"Title": "Aanspreektitel",
"Description": "Beschrijving",
"Category": "categorie",
"Show In Widget ": "In widget weergeven ",
"Show In Standalone ": "Toon op maat ",
"Enable Feedback": "Feedback inschakelen",
"Enable Reactions": "Reacties inschakelen",
"Enable Social share": "Sociale delen inschakelen",
"Enable Auto open": "Automatisch openen inschakelen",
"Enable Push Notifications": "Push-meldingen inschakelen",
"User Email": "E-mail van gebruiker",
"Visibility": "Zichtbaarheid",
"Status": "status",
"ID": "ID",
"User ID": "Gebruiker ID",
"Text": "Tekstveld",
"Feature ID": "Feature ID",
"User Firstname": "Voornaam gebruiker",
"Method": "Methode",
"Headers": "Kopteksten",
"Query Parameters": "Query parameters",
"Body": "Lichaam",
"Response is Binary ?": "Antwoord is binair?",
"No Error on Failure": "Geen fout bij fout",
"Timeout (in seconds)": "Time-out (in seconden)",
"Enter the Title of the post": "Voer de titel van de post in",
"Enter the description of the post": "Voer de beschrijving in van het bericht",
"Set Category": "Categorie instellen",
"Check to enable widget": "Markeer om widget in te schakelen",
"Check to enable Standalone": "Aanvinken om standalone te activeren",
"Check to enable feedback": "Markeer om feedback in te schakelen",
"Check to enable social share": "Selecteer om sociaal delen te activeren",
"Check to enable auto open": "Markeer om automatisch openen in te schakelen",
"Check to enable Push Notifications": "Markeer om pushmeldingen in te schakelen",
"Enter user email": "Voer e-mailadres van gebruiker in",
"Set visiblisty": "Zichtbaar instellen",
"Set status": "Status instellen",
"Feature requested by..": "Functie aangevraagd door..",
"ID of the feature request": "ID van het feature verzoek",
"id of the user making the comment": "id van de gebruiker die het commentaar geeft",
"Content of your comment": "Inhoud van uw commentaar",
"ID of the feature request to create a comment for": "ID van de functie verzoek om een opmerking te maken voor",
"Authorization headers are injected automatically from your connection.": "Autorisatie headers worden automatisch geïnjecteerd vanuit uw verbinding.",
"Enable for files like PDFs, images, etc..": "Inschakelen voor bestanden zoals PDF's, afbeeldingen etc..",
"New": "Nieuw",
"Fix": "Repareer",
"Coming Soon ": "Binnenkort beschikbaar ",
"Announcement": "Mededeling",
"Improvement": "Verbetering",
"True": "Waar",
"False": "Onwaar",
"Public": "Openbaar",
"Internal": "Intern",
"Bug": "Bug",
"Feature Request": "Feature verzoek",
"Under Review": "Wordt beoordeeld",
"Planned": "Gepland",
"In Progress": "In uitvoering",
"Completed": "Voltooid",
"GET": "KRIJG",
"POST": "POSTE",
"PATCH": "BEKIJK",
"PUT": "PUT",
"DELETE": "VERWIJDEREN",
"HEAD": "HOOFD",
"New Beamer Post": "Nieuwe Beamer post",
"Triggers when new post is found in your beamer account": "Triggert wanneer een nieuw bericht gevonden wordt in je beamer account",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Ga naar de \"Integratie\" sectie.\n- Zoek en klik op de \"Webhook\" plugin om deze te activeren.\n- Voeg een webhook toe aan dat formulier.\n- Plak in de webhook instellingen deze URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "Envolver usuários com anúncios direcionados",
"API key acquired from your Beamer settings": "Chave de API adquirida das suas configurações Beamer",
"Create Beamer Post ": "Criar Postagem de Beamer ",
"Create New Feature Request ": "Criar nova solicitação de recursos ",
"Create a new comment": "Criar um novo comentário",
"Create a new vote ": "Criar uma nova votação ",
"Custom API Call": "Chamada de API personalizada",
"Create a new post in Beamer": "Criar um novo post no Beamer",
"Create New Feature Request": "Criar nova solicitação de recursos",
"Create a new comment for a Feature request": "Criar um novo comentário para um pedido de recurso",
"Create a new vote on a feature request": "Criar uma nova votação em uma solicitação de recurso",
"Make a custom API call to a specific endpoint": "Faça uma chamada de API personalizada para um ponto de extremidade específico",
"Title": "Título",
"Description": "Descrição",
"Category": "categoria",
"Show In Widget ": "Mostrar no Widget ",
"Show In Standalone ": "Mostrar em modo autônomo ",
"Enable Feedback": "Habilitar Feedback",
"Enable Reactions": "Habilitar reações",
"Enable Social share": "Ativar compartilhamento social",
"Enable Auto open": "Ativar abertura automática",
"Enable Push Notifications": "Ativar Notificações Push",
"User Email": "Email do Usuário",
"Visibility": "Visibilidade",
"Status": "Estado",
"ID": "ID",
"User ID": "ID de usuário",
"Text": "texto",
"Feature ID": "ID da característica",
"User Firstname": "Nome do usuário",
"Method": "Método",
"Headers": "Cabeçalhos",
"Query Parameters": "Parâmetros da consulta",
"Body": "Conteúdo",
"Response is Binary ?": "A resposta é binária ?",
"No Error on Failure": "Nenhum erro no Failure",
"Timeout (in seconds)": "Tempo limite (em segundos)",
"Enter the Title of the post": "Digite o Título da postagem",
"Enter the description of the post": "Digite a descrição da postagem",
"Set Category": "Configura Categoria",
"Check to enable widget": "Marque para ativar o widget",
"Check to enable Standalone": "Marque para ativar sozinho",
"Check to enable feedback": "Marque para ativar feedback",
"Check to enable social share": "Marcar para ativar compartilhamento social",
"Check to enable auto open": "Marque para ativar a abertura automática",
"Check to enable Push Notifications": "Marcar para ativar Notificações Push",
"Enter user email": "Digite e-mail do usuário",
"Set visiblisty": "Definir lista",
"Set status": "Definir status",
"Feature requested by..": "Recurso solicitado por..",
"ID of the feature request": "ID da solicitação de recurso",
"id of the user making the comment": "id do usuário que fez o comentário",
"Content of your comment": "Conteúdo do seu comentário",
"ID of the feature request to create a comment for": "ID da solicitação de funcionalidade para criar um comentário para",
"Authorization headers are injected automatically from your connection.": "Os cabeçalhos de autorização são inseridos automaticamente a partir da sua conexão.",
"Enable for files like PDFs, images, etc..": "Habilitar para arquivos como PDFs, imagens, etc..",
"New": "Novidades",
"Fix": "Corrigir",
"Coming Soon ": "Em breve ",
"Announcement": "Anúncio",
"Improvement": "Melhoria",
"True": "Verdadeiro",
"False": "Falso",
"Public": "Público",
"Internal": "interno",
"Bug": "Inseto",
"Feature Request": "Solicitação de Recursos",
"Under Review": "Em Revisão",
"Planned": "Planejado",
"In Progress": "Em Execução",
"Completed": "Concluído",
"GET": "OBTER",
"POST": "POSTAR",
"PATCH": "COMPRAR",
"PUT": "COLOCAR",
"DELETE": "EXCLUIR",
"HEAD": "CABEÇA",
"New Beamer Post": "Nova publicação de Beamer",
"Triggers when new post is found in your beamer account": "Dispara quando um novo post for encontrado na sua conta do Beamer",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Vá para a seção de \"Integração\".\n- Encontre e clique no plugin \"Webhook\" para ativá-lo.\n- Adicionar um webhook nesse formulário.\n- Nas configurações do webhook, cole esta URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,82 @@
{
"Beamer": "Бимер",
"Engage users with targeted announcements": "Привлекать пользователей к целевым объявлениям",
"API key acquired from your Beamer settings": "Ключ API получен из настроек Beamer",
"Create Beamer Post ": "Создать пистолет ",
"Create New Feature Request ": "Создать новую функцию запроса ",
"Create a new comment": "Создать новый комментарий",
"Create a new vote ": "Создать новый голос ",
"Custom API Call": "Пользовательский вызов API",
"Create a new post in Beamer": "Создать новый пост в Бимера",
"Create New Feature Request": "Создать новую функцию запроса",
"Create a new comment for a Feature request": "Создать новый комментарий для запроса функции",
"Create a new vote on a feature request": "Создать новый голос по запросу функции",
"Make a custom API call to a specific endpoint": "Сделать пользовательский API вызов к определенной конечной точке",
"Title": "Заголовок",
"Description": "Description",
"Category": "Категория",
"Show In Widget ": "Показать в виджете ",
"Show In Standalone ": "Показывать в автономном режиме ",
"Enable Feedback": "Включить отзыв",
"Enable Reactions": "Включить реакции",
"Enable Social share": "Включить соц. сеть",
"Enable Auto open": "Включить автооткрытие",
"Enable Push Notifications": "Включить Push-уведомления",
"User Email": "Email пользователя",
"Visibility": "Видимость",
"Status": "Status",
"ID": "ID",
"User ID": "ID пользователя",
"Text": "Текст",
"Feature ID": "ID функции",
"User Firstname": "Имя пользователя",
"Method": "Метод",
"Headers": "Заголовки",
"Query Parameters": "Параметры запроса",
"Body": "Тело",
"No Error on Failure": "Нет ошибок при ошибке",
"Timeout (in seconds)": "Таймаут (в секундах)",
"Enter the Title of the post": "Введите название записи",
"Enter the description of the post": "Введите описание записи",
"Set Category": "Установить категорию",
"Check to enable widget": "Проверьте, чтобы включить виджет",
"Check to enable Standalone": "Проверьте, чтобы включить автономный",
"Check to enable feedback": "Проверьте, чтобы включить отзыв",
"Check to enable social share": "Проверьте, чтобы включить социальную долю",
"Check to enable auto open": "Отметьте, чтобы включить авто-отключение",
"Check to enable Push Notifications": "Проверьте, чтобы включить Push-уведомления",
"Enter user email": "Введите email пользователя",
"Set visiblisty": "Видимость",
"Set status": "Задать статус",
"Feature requested by..": "Функция запрошена..",
"ID of the feature request": "ID запроса функции",
"id of the user making the comment": "id пользователя, делающего комментарий",
"Content of your comment": "Содержимое вашего комментария",
"ID of the feature request to create a comment for": "ID запроса функции для создания комментария",
"Authorization headers are injected automatically from your connection.": "Заголовки авторизации включаются автоматически из вашего соединения.",
"New": "Новый",
"Fix": "Исправить",
"Coming Soon ": "Скоро ",
"Announcement": "Объявление",
"Improvement": "Улучшение",
"True": "Верно",
"False": "Неверно",
"Public": "Публичный",
"Internal": "Внутренний",
"Bug": "Ошибка",
"Feature Request": "Запрос на функцию",
"Under Review": "Рассматривается",
"Planned": "Запланировано",
"In Progress": "В процессе",
"Completed": "Выполнено",
"GET": "ПОЛУЧИТЬ",
"POST": "ПОСТ",
"PATCH": "ПАТЧ",
"PUT": "ПОКУПИТЬ",
"DELETE": "УДАЛИТЬ",
"HEAD": "HEAD",
"New Beamer Post": "Новая запись шарика",
"Triggers when new post is found in your beamer account": "Включает при обнаружении нового сообщения в вашем аккаунте beamer",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- перейдите в раздел \"Интеграция\".\n- Найдите и нажмите на плагин \"Webhook\" для его активации.\n- добавить вебхук к этой форме.\n- В настройках webhook вставьте этот URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "Engage users with targeted announcements",
"API key acquired from your Beamer settings": "API key acquired from your Beamer settings",
"Create Beamer Post ": "Create Beamer Post ",
"Create New Feature Request ": "Create New Feature Request ",
"Create a new comment": "Create a new comment",
"Create a new vote ": "Create a new vote ",
"Custom API Call": "Custom API Call",
"Create a new post in Beamer": "Create a new post in Beamer",
"Create New Feature Request": "Create New Feature Request",
"Create a new comment for a Feature request": "Create a new comment for a Feature request",
"Create a new vote on a feature request": "Create a new vote on a feature request",
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
"Title": "Title",
"Description": "Description",
"Category": "Category",
"Show In Widget ": "Show In Widget ",
"Show In Standalone ": "Show In Standalone ",
"Enable Feedback": "Enable Feedback",
"Enable Reactions": "Enable Reactions",
"Enable Social share": "Enable Social share",
"Enable Auto open": "Enable Auto open",
"Enable Push Notifications": "Enable Push Notifications",
"User Email": "User Email",
"Visibility": "Visibility",
"Status": "Status",
"ID": "ID",
"User ID": "User ID",
"Text": "Text",
"Feature ID": "Feature ID",
"User Firstname": "User Firstname",
"Method": "Method",
"Headers": "Headers",
"Query Parameters": "Query Parameters",
"Body": "Body",
"Response is Binary ?": "Response is Binary ?",
"No Error on Failure": "No Error on Failure",
"Timeout (in seconds)": "Timeout (in seconds)",
"Enter the Title of the post": "Enter the Title of the post",
"Enter the description of the post": "Enter the description of the post",
"Set Category": "Set Category",
"Check to enable widget": "Check to enable widget",
"Check to enable Standalone": "Check to enable Standalone",
"Check to enable feedback": "Check to enable feedback",
"Check to enable social share": "Check to enable social share",
"Check to enable auto open": "Check to enable auto open",
"Check to enable Push Notifications": "Check to enable Push Notifications",
"Enter user email": "Enter user email",
"Set visiblisty": "Set visiblisty",
"Set status": "Set status",
"Feature requested by..": "Feature requested by..",
"ID of the feature request": "ID of the feature request",
"id of the user making the comment": "id of the user making the comment",
"Content of your comment": "Content of your comment",
"ID of the feature request to create a comment for": "ID of the feature request to create a comment for",
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
"New": "New",
"Fix": "Fix",
"Coming Soon ": "Coming Soon ",
"Announcement": "Announcement",
"Improvement": "Improvement",
"True": "True",
"False": "False",
"Public": "Public",
"Internal": "Internal",
"Bug": "Bug",
"Feature Request": "Feature Request",
"Under Review": "Under Review",
"Planned": "Planned",
"In Progress": "In Progress",
"Completed": "Completed",
"GET": "GET",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "DELETE",
"HEAD": "HEAD",
"New Beamer Post": "New Beamer Post",
"Triggers when new post is found in your beamer account": "Triggers when new post is found in your beamer account",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,82 @@
{
"Beamer": "Beamer",
"Engage users with targeted announcements": "Engage users with targeted announcements",
"API key acquired from your Beamer settings": "API key acquired from your Beamer settings",
"Create Beamer Post ": "Create Beamer Post ",
"Create New Feature Request ": "Create New Feature Request ",
"Create a new comment": "Create a new comment",
"Create a new vote ": "Create a new vote ",
"Custom API Call": "Custom API Call",
"Create a new post in Beamer": "Create a new post in Beamer",
"Create New Feature Request": "Create New Feature Request",
"Create a new comment for a Feature request": "Create a new comment for a Feature request",
"Create a new vote on a feature request": "Create a new vote on a feature request",
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
"Title": "Title",
"Description": "Description",
"Category": "Category",
"Show In Widget ": "Show In Widget ",
"Show In Standalone ": "Show In Standalone ",
"Enable Feedback": "Enable Feedback",
"Enable Reactions": "Enable Reactions",
"Enable Social share": "Enable Social share",
"Enable Auto open": "Enable Auto open",
"Enable Push Notifications": "Enable Push Notifications",
"User Email": "User Email",
"Visibility": "Visibility",
"Status": "Status",
"ID": "ID",
"User ID": "User ID",
"Text": "Text",
"Feature ID": "Feature ID",
"User Firstname": "User Firstname",
"Method": "Method",
"Headers": "Headers",
"Query Parameters": "Query Parameters",
"Body": "Body",
"No Error on Failure": "No Error on Failure",
"Timeout (in seconds)": "Timeout (in seconds)",
"Enter the Title of the post": "Enter the Title of the post",
"Enter the description of the post": "Enter the description of the post",
"Set Category": "Set Category",
"Check to enable widget": "Check to enable widget",
"Check to enable Standalone": "Check to enable Standalone",
"Check to enable feedback": "Check to enable feedback",
"Check to enable social share": "Check to enable social share",
"Check to enable auto open": "Check to enable auto open",
"Check to enable Push Notifications": "Check to enable Push Notifications",
"Enter user email": "Enter user email",
"Set visiblisty": "Set visiblisty",
"Set status": "Set status",
"Feature requested by..": "Feature requested by..",
"ID of the feature request": "ID of the feature request",
"id of the user making the comment": "id of the user making the comment",
"Content of your comment": "Content of your comment",
"ID of the feature request to create a comment for": "ID of the feature request to create a comment for",
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
"New": "New",
"Fix": "Fix",
"Coming Soon ": "Coming Soon ",
"Announcement": "Announcement",
"Improvement": "Improvement",
"True": "Đúng",
"False": "Sai",
"Public": "Public",
"Internal": "Internal",
"Bug": "Bug",
"Feature Request": "Feature Request",
"Under Review": "Under Review",
"Planned": "Planned",
"In Progress": "In Progress",
"Completed": "Completed",
"GET": "GET",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "DELETE",
"HEAD": "HEAD",
"New Beamer Post": "New Beamer Post",
"Triggers when new post is found in your beamer account": "Triggers when new post is found in your beamer account",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,83 @@
{
"Engage users with targeted announcements": "Engage users with targeted announcements",
"API key acquired from your Beamer settings": "API key acquired from your Beamer settings",
"Create Beamer Post ": "Create Beamer Post ",
"Create New Feature Request ": "Create New Feature Request ",
"Create a new comment": "Create a new comment",
"Create a new vote ": "Create a new vote ",
"Custom API Call": "自定义 API 呼叫",
"Create a new post in Beamer": "Create a new post in Beamer",
"Create New Feature Request": "Create New Feature Request",
"Create a new comment for a Feature request": "Create a new comment for a Feature request",
"Create a new vote on a feature request": "Create a new vote on a feature request",
"Make a custom API call to a specific endpoint": "将一个自定义 API 调用到一个特定的终点",
"Title": "标题",
"Description": "描述",
"Category": "Category",
"Show In Widget ": "Show In Widget ",
"Show In Standalone ": "Show In Standalone ",
"Enable Feedback": "Enable Feedback",
"Enable Reactions": "Enable Reactions",
"Enable Social share": "Enable Social share",
"Enable Auto open": "Enable Auto open",
"Enable Push Notifications": "Enable Push Notifications",
"User Email": "User Email",
"Visibility": "Visibility",
"Status": "状态",
"ID": "ID",
"User ID": "User ID",
"Text": "文本",
"Feature ID": "Feature ID",
"User Firstname": "User Firstname",
"Method": "方法",
"Headers": "信头",
"Query Parameters": "查询参数",
"Body": "正文内容",
"Response is Binary ?": "Response is Binary ?",
"No Error on Failure": "失败时没有错误",
"Timeout (in seconds)": "超时(秒)",
"Enter the Title of the post": "Enter the Title of the post",
"Enter the description of the post": "Enter the description of the post",
"Set Category": "Set Category",
"Check to enable widget": "Check to enable widget",
"Check to enable Standalone": "Check to enable Standalone",
"Check to enable feedback": "Check to enable feedback",
"Check to enable social share": "Check to enable social share",
"Check to enable auto open": "Check to enable auto open",
"Check to enable Push Notifications": "Check to enable Push Notifications",
"Enter user email": "Enter user email",
"Set visiblisty": "Set visiblisty",
"Set status": "Set status",
"Feature requested by..": "Feature requested by..",
"ID of the feature request": "ID of the feature request",
"id of the user making the comment": "id of the user making the comment",
"Content of your comment": "Content of your comment",
"ID of the feature request to create a comment for": "ID of the feature request to create a comment for",
"Authorization headers are injected automatically from your connection.": "授权头自动从您的连接中注入。",
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
"New": "New",
"Fix": "Fix",
"Coming Soon ": "Coming Soon ",
"Announcement": "Announcement",
"Improvement": "Improvement",
"True": "眞",
"False": "偽",
"Public": "Public",
"Internal": "Internal",
"Bug": "Bug",
"Feature Request": "Feature Request",
"Under Review": "Under Review",
"Planned": "Planned",
"In Progress": "In Progress",
"Completed": "Completed",
"GET": "获取",
"POST": "帖子",
"PATCH": "PATCH",
"PUT": "弹出",
"DELETE": "删除",
"HEAD": "黑色",
"New Beamer Post": "New Beamer Post",
"Triggers when new post is found in your beamer account": "Triggers when new post is found in your beamer account",
"Markdown": "Markdown",
"\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n": "\n- Go to the \"Integration\" section.\n- Find and click on the \"Webhook\" plugin to activate it.\n- Add a webhook to that form.\n- In the webhook settings, paste this URL: \n `{{webhookUrl}}`\n"
}

View File

@@ -0,0 +1,57 @@
import { createCustomApiCallAction, httpClient, HttpMethod } from '@activepieces/pieces-common';
import { PieceAuth, createPiece } from '@activepieces/pieces-framework';
import { PieceCategory } from '@activepieces/shared';
import { createComment } from './lib/actions/create-comment';
import { createNewFeatureRequest } from './lib/actions/create-feature-request';
import { createBeamerPost } from './lib/actions/create-posts';
import { createVote } from './lib/actions/create-vote';
import { beamerCommon } from './lib/common';
import { newPost } from './lib/trigger/new-post';
export const beamerAuth = PieceAuth.SecretText({
displayName: 'API Key',
required: true,
description: 'API key acquired from your Beamer settings',
validate: async ({ auth }) => {
try {
await httpClient.sendRequest({
method: HttpMethod.GET,
url: `${beamerCommon.baseUrl}/ping`,
headers: {
'Beamer-Api-Key': `${auth}`,
},
})
return {
valid: true,
};
} catch (e) {
return {
valid: false,
error: 'Invalid API key.',
};
}
},
});
export const beamer = createPiece({
displayName: 'Beamer',
description: 'Engage users with targeted announcements',
logoUrl: 'https://cdn.activepieces.com/pieces/beamer.png',
categories: [PieceCategory.PRODUCTIVITY],
auth: beamerAuth,
authors: ["i-nithin","kishanprmr","MoShizzle","abuaboud"],
actions: [
createBeamerPost,
createNewFeatureRequest,
createComment,
createVote,
createCustomApiCallAction({
baseUrl: () => beamerCommon.baseUrl,
auth: beamerAuth,
authMapping: async (auth) => ({
'Beamer-Api-Key': `${auth}`,
}),
}),
],
triggers: [newPost],
});

View File

@@ -0,0 +1,57 @@
import { Property, createAction } from '@activepieces/pieces-framework';
import { beamerAuth } from '../../index';
import { beamerCommon } from '../common';
import {
HttpMethod,
HttpRequest,
httpClient,
} from '@activepieces/pieces-common';
export const createComment = createAction({
auth: beamerAuth,
name: 'create_new_comment',
displayName: 'Create a new comment',
description: 'Create a new comment for a Feature request',
props: {
featureRequestId: Property.Number({
displayName: 'ID',
description: 'ID of the feature request',
required: true,
}),
userId: Property.Number({
displayName: 'User ID',
description: 'id of the user making the comment',
required: false,
}),
text: Property.LongText({
displayName: 'Text',
description: 'Content of your comment',
required: true,
}),
userEmail: Property.ShortText({
displayName: 'User Email',
description: 'Feature requested by..',
required: false,
}),
},
async run(context) {
const apiKey = context.auth.secret_text;
const request: HttpRequest = {
method: HttpMethod.POST,
url: `${beamerCommon.baseUrl}/requests/${context.propsValue.featureRequestId}/comments`,
headers: {
'Beamer-Api-Key': `${apiKey}`,
'Content-Type': 'application/json',
},
body: {
text: context.propsValue.text,
userId: context.propsValue.userId,
userEmail: context.propsValue.userEmail,
visible: 'true',
},
};
const res = await httpClient.sendRequest<any>(request);
return res.body;
},
});

View File

@@ -0,0 +1,122 @@
import { beamerAuth } from '../../index';
import {
HttpMethod,
HttpRequest,
httpClient,
} from '@activepieces/pieces-common';
import { Property, createAction } from '@activepieces/pieces-framework';
import { beamerCommon } from '../common';
export const createNewFeatureRequest = createAction({
auth: beamerAuth,
name: 'create_new_feature_request',
displayName: 'Create New Feature Request ',
description: 'Create New Feature Request',
props: {
title: Property.ShortText({
displayName: 'Title',
description: 'Enter the Title of the post',
required: true,
}),
content: Property.LongText({
displayName: 'Description',
description: 'Enter the description of the post',
required: true,
}),
visible: Property.StaticDropdown({
displayName: 'Visibility',
description: 'Set visiblisty',
required: true,
options: {
options: [
{
label: 'Public',
value: true,
},
{
label: 'Internal',
value: false,
},
],
},
}),
category: Property.StaticDropdown({
displayName: 'Category',
description: 'Set Category',
required: true,
options: {
options: [
{
label: 'Bug',
value: 'bug',
},
{
label: 'Feature Request',
value: 'feature_request',
},
{
label: 'Improvement',
value: 'improvement',
},
],
},
}),
status: Property.StaticDropdown({
displayName: 'Status',
description: 'Set status',
required: true,
options: {
options: [
{
label: 'Under Review',
value: 'under_review',
},
{
label: 'Planned',
value: 'planned',
},
{
label: 'In Progress',
value: 'in_progress',
},
{
label: 'Completed',
value: 'completed',
},
],
},
}),
requestedby: Property.ShortText({
displayName: 'User Email',
description: 'Feature requested by..',
required: true,
}),
},
async run(context) {
const apiKey = context.auth.secret_text;
const request: HttpRequest = {
method: HttpMethod.POST,
url: `${beamerCommon.baseUrl}/requests`,
headers: {
'Beamer-Api-Key': `${apiKey}`,
'Content-Type': 'application/json',
},
body: {
title: [context.propsValue.title],
content: [context.propsValue.content],
visible: context.propsValue.visible,
category: context.propsValue.category,
status: context.propsValue.status,
userEmail: context.propsValue.requestedby,
},
};
const res = await httpClient.sendRequest<any>(request);
return res.body;
},
});

View File

@@ -0,0 +1,160 @@
import { Property, createAction } from '@activepieces/pieces-framework';
import {
HttpRequest,
HttpMethod,
httpClient,
} from '@activepieces/pieces-common';
import { beamerAuth } from '../../index';
import { beamerCommon } from '../common';
export const createBeamerPost = createAction({
auth: beamerAuth,
name: 'create_beamer_post',
displayName: 'Create Beamer Post ',
description: 'Create a new post in Beamer',
props: {
title: Property.ShortText({
displayName: 'Title',
description: 'Enter the Title of the post',
required: true,
defaultValue: 'Post name',
}),
description: Property.LongText({
displayName: 'Description',
description: 'Enter the description of the post',
required: true,
defaultValue: 'desc...',
}),
category: Property.StaticDropdown({
displayName: 'Category',
description: 'Set Category',
required: true,
options: {
options: [
{
label: 'New',
value: 'new',
},
{
label: 'Fix',
value: 'fix',
},
{
label: 'Coming Soon ',
value: 'coming_soon',
},
{
label: 'Announcement',
value: 'announcement',
},
{
label: 'Improvement',
value: 'improvement',
},
],
},
}),
showInWidget: Property.StaticDropdown({
displayName: 'Show In Widget ',
description: 'Check to enable widget',
required: false,
options: {
options: [
{
label: 'True',
value: true,
},
{
label: 'False',
value: false,
},
],
},
}),
showInStandalone: Property.StaticDropdown({
displayName: 'Show In Standalone ',
description: 'Check to enable Standalone',
required: false,
options: {
options: [
{
label: 'True',
value: true,
},
{
label: 'False',
value: false,
},
],
},
}),
enableFeedback: Property.Checkbox({
displayName: 'Enable Feedback',
description: 'Check to enable feedback',
required: false,
defaultValue: false,
}),
enableReactions: Property.Checkbox({
displayName: 'Enable Reactions',
description: 'Check to enable feedback',
required: false,
defaultValue: false,
}),
enableSocialShare: Property.Checkbox({
displayName: 'Enable Social share',
description: 'Check to enable social share',
required: false,
defaultValue: false,
}),
autoOpen: Property.Checkbox({
displayName: 'Enable Auto open',
description: 'Check to enable auto open',
required: false,
defaultValue: false,
}),
sendPushNotification: Property.Checkbox({
displayName: 'Enable Push Notifications',
description: 'Check to enable Push Notifications',
required: false,
defaultValue: false,
}),
userEmail: Property.ShortText({
displayName: 'User Email',
description: 'Enter user email',
required: true,
}),
},
async run(context) {
const apiKey = context.auth.secret_text;
const request: HttpRequest = {
method: HttpMethod.POST,
url: `${beamerCommon.baseUrl}/posts`,
headers: {
'Beamer-Api-Key': `${apiKey}`,
'Content-Type': 'application/json',
},
body: {
title: [context.propsValue.title],
content: [context.propsValue.description],
category: context.propsValue.category,
publish: true,
archive: false,
pinned: false,
showInWidget: context.propsValue.showInWidget,
showInStandalone: context.propsValue.showInStandalone,
enableFeedback: context.propsValue.enableFeedback,
enableReactions: context.propsValue.enableReactions,
enableSocialShare: context.propsValue.enableSocialShare,
autoOpen: context.propsValue.autoOpen,
sendPushNotification: context.propsValue.sendPushNotification,
userEmail: context.propsValue.userEmail,
fixedBoostedAnnouncement: true,
},
};
const res = await httpClient.sendRequest<any>(request);
return res.body;
},
});

View File

@@ -0,0 +1,48 @@
import { httpClient, HttpMethod, HttpRequest } from '@activepieces/pieces-common';
import { beamerAuth } from '../../index';
import { Property, createAction } from '@activepieces/pieces-framework';
import { beamerCommon } from '../common';
export const createVote = createAction({
auth: beamerAuth,
name: 'create_vote',
displayName: 'Create a new vote ',
description: 'Create a new vote on a feature request',
props: {
featureRequestId: Property.Number({
displayName: 'Feature ID',
description: 'ID of the feature request to create a comment for',
required: true,
}),
userFirstname: Property.ShortText({
displayName: 'User Firstname',
description: 'Feature requested by..',
required: false,
}),
userEmail: Property.ShortText({
displayName: 'User Email',
description: 'Feature requested by..',
required: false,
}),
},
async run(context) {
const apiKey = context.auth.secret_text;
const request: HttpRequest = {
method: HttpMethod.POST,
url: `${beamerCommon.baseUrl}/requests/${context.propsValue.featureRequestId}/votes`,
headers: {
'Beamer-Api-Key': `${apiKey}`,
'Content-Type': 'application/json',
},
body: {
userFirstname: context.propsValue.userFirstname,
email: context.propsValue.userEmail,
},
};
const res = await httpClient.sendRequest(request);
return res.body;
},
});

View File

@@ -0,0 +1,3 @@
export const beamerCommon = {
baseUrl: 'https://api.getbeamer.com/v0',
};

View File

@@ -0,0 +1,36 @@
import {
Property,
TriggerStrategy,
createTrigger,
} from '@activepieces/pieces-framework';
const markdown = `
- Go to the "Integration" section.
- Find and click on the "Webhook" plugin to activate it.
- Add a webhook to that form.
- In the webhook settings, paste this URL:
\`{{webhookUrl}}\`
`;
export const newPost = createTrigger({
name: 'new_post_on_beamer',
displayName: 'New Beamer Post',
description: 'Triggers when new post is found in your beamer account',
props: {
md: Property.MarkDown({
value: markdown,
}),
},
type: TriggerStrategy.WEBHOOK,
sampleData: {},
async onEnable(context) {
// IGNORED
},
async onDisable(context) {
// IGNORED
},
async run(context) {
return [context.payload.body];
},
});