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:
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"extends": ["../../../../.eslintrc.json"],
|
||||
"ignorePatterns": ["!**/*"],
|
||||
"overrides": [
|
||||
{
|
||||
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["*.ts", "*.tsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["*.js", "*.jsx"],
|
||||
"rules": {}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
# pieces-heartbeat
|
||||
|
||||
This library was generated with [Nx](https://nx.dev).
|
||||
|
||||
## Building
|
||||
|
||||
Run `nx build pieces-heartbeat` to build the library.
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "@activepieces/piece-heartbeat",
|
||||
"version": "0.0.10"
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"name": "pieces-heartbeat",
|
||||
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
|
||||
"sourceRoot": "packages/pieces/community/heartbeat/src",
|
||||
"projectType": "library",
|
||||
"targets": {
|
||||
"build": {
|
||||
"executor": "@nx/js:tsc",
|
||||
"outputs": [
|
||||
"{options.outputPath}"
|
||||
],
|
||||
"options": {
|
||||
"outputPath": "dist/packages/pieces/community/heartbeat",
|
||||
"tsConfig": "packages/pieces/community/heartbeat/tsconfig.lib.json",
|
||||
"packageJson": "packages/pieces/community/heartbeat/package.json",
|
||||
"main": "packages/pieces/community/heartbeat/src/index.ts",
|
||||
"assets": [
|
||||
"packages/pieces/community/heartbeat/*.md",
|
||||
{
|
||||
"input": "packages/pieces/community/heartbeat/src/i18n",
|
||||
"output": "./src/i18n",
|
||||
"glob": "**/!(i18n.json)"
|
||||
}
|
||||
],
|
||||
"buildableProjectDepsInPackageJsonType": "dependencies",
|
||||
"updateBuildableProjectDepsInPackageJson": true
|
||||
},
|
||||
"dependsOn": [
|
||||
"^build",
|
||||
"prebuild"
|
||||
]
|
||||
},
|
||||
"publish": {
|
||||
"command": "node tools/scripts/publish.mjs pieces-community-heartbeat {args.ver} {args.tag}",
|
||||
"dependsOn": [
|
||||
"build"
|
||||
]
|
||||
},
|
||||
"lint": {
|
||||
"executor": "@nx/eslint:lint",
|
||||
"outputs": [
|
||||
"{options.outputFile}"
|
||||
]
|
||||
},
|
||||
"prebuild": {
|
||||
"executor": "nx:run-commands",
|
||||
"options": {
|
||||
"cwd": "packages/pieces/community/heartbeat",
|
||||
"command": "bun install --no-save --silent"
|
||||
},
|
||||
"dependsOn": [
|
||||
"^build"
|
||||
]
|
||||
}
|
||||
},
|
||||
"tags": []
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Überwachung und Alarmierung leicht gemacht",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Melden Sie sich bei Ihrem Heartbeat Konto\n 2. Klicken Sie unten links auf 'Admin-Einstellungen'\n 3. Im linken Fenster klicken Sie auf 'API-Keys'\n 5. Klicken Sie auf 'API-Schlüssel erstellen'\n 6. Geben Sie im Popup-Formular das 'Label' ein, um den Schlüssel\n zu benennen. Kopiere den API-Schlüssel und füge ihn unten ein.\n",
|
||||
"Create User": "Benutzer erstellen",
|
||||
"Custom API Call": "Eigener API-Aufruf",
|
||||
"Create a new user in a Heartbeat community": "Erstelle einen neuen Benutzer in einer Heartbeat Community",
|
||||
"Make a custom API call to a specific endpoint": "Einen benutzerdefinierten API-Aufruf an einen bestimmten Endpunkt machen",
|
||||
"Name": "Name",
|
||||
"Email": "E-Mail",
|
||||
"Roles": "Rollen",
|
||||
"Groups": "Gruppen",
|
||||
"Profile Picture": "Profilbild",
|
||||
"Bio": "Bio",
|
||||
"Status": "Status",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Einführungsthema erstellen",
|
||||
"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)",
|
||||
"The user's full name": "Der vollständige Name des Benutzers",
|
||||
"The user's email. Must be unique to the community": "Die E-Mail des Benutzers muss für die Community eindeutig sein",
|
||||
"The role the user should have": "Die Rolle, die der Benutzer haben soll",
|
||||
"A list of the ids of the groups that the user should belong to.": "Eine Liste der IDs der Gruppen, zu denen der Benutzer gehören soll.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "Ein Daten-URI-Schema im JPG, GIF oder PNG Format. Stellen Sie sicher, dass Sie den richtigen Inhaltstyp (image/jpeg, image/png, image/gif) verwenden, der mit den bereitgestellten Bilddaten übereinstimmt",
|
||||
"The user's bio": "Das Bio des Benutzers",
|
||||
"The user's status": "Status des Benutzers",
|
||||
"A link to the user's LinkedIn profile": "Ein Link zum LinkedIn-Profil des Benutzers",
|
||||
"A link to the user's Twitter profile": "Ein Link zum Twitter-Profil des Benutzers",
|
||||
"A link to the user's Instagram profile": "Ein Link zum Instagram-Profil des Benutzers",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "Wenn true und ein Wert für Bio angegeben wird, ein Einführungsthread für den Benutzer wird in dem Kanal für Einführungen in den Community-Einstellungen erstellt.",
|
||||
"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..",
|
||||
"GET": "ERHALTEN",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "LÖSCHEN",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Monitoreo y alertas facilitadas",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "Crear usuario",
|
||||
"Custom API Call": "Llamada API personalizada",
|
||||
"Create a new user in a Heartbeat community": "Crear un nuevo usuario en una comunidad de Heartbeat",
|
||||
"Make a custom API call to a specific endpoint": "Hacer una llamada API personalizada a un extremo específico",
|
||||
"Name": "Nombre",
|
||||
"Email": "E-mail",
|
||||
"Roles": "Roles",
|
||||
"Groups": "Grupos",
|
||||
"Profile Picture": "Foto de Perfil",
|
||||
"Bio": "Bio",
|
||||
"Status": "Estado",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagrama",
|
||||
"Create introduction thread": "Crear hilo de introducción",
|
||||
"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)",
|
||||
"The user's full name": "Nombre completo del usuario",
|
||||
"The user's email. Must be unique to the community": "El correo electrónico del usuario. Debe ser único para la comunidad",
|
||||
"The role the user should have": "El rol que el usuario debe tener",
|
||||
"A list of the ids of the groups that the user should belong to.": "Una lista de los identificadores de los grupos a los que el usuario debe pertenecer.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "Un esquema URI de datos en formato JPG, GIF o PNG. Asegúrese de usar el tipo de contenido adecuado (imagen/jpeg, imagen/png, imagen/gif) que coincida con los datos de imagen que se proporcionan",
|
||||
"The user's bio": "La biografía del usuario",
|
||||
"The user's status": "El estado del usuario",
|
||||
"A link to the user's LinkedIn profile": "Un enlace al perfil LinkedIn del usuario",
|
||||
"A link to the user's Twitter profile": "Un enlace al perfil de Twitter del usuario",
|
||||
"A link to the user's Instagram profile": "Un enlace al perfil de Instagrama del usuario",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "Si es verdadero y un valor para la biografía es proporcionado, se creará un hilo de introducción para el usuario en el canal designado para presentaciones en los ajustes de tu comunidad.",
|
||||
"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.",
|
||||
"GET": "RECOGER",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "BORRAR",
|
||||
"HEAD": "LIMPIO"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Surveillance et alertes simplifiées",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "Créer un utilisateur",
|
||||
"Custom API Call": "Appel API personnalisé",
|
||||
"Create a new user in a Heartbeat community": "Créer un nouvel utilisateur dans une communauté Heartbeat",
|
||||
"Make a custom API call to a specific endpoint": "Passez un appel API personnalisé à un point de terminaison spécifique",
|
||||
"Name": "Nom",
|
||||
"Email": "Courriel",
|
||||
"Roles": "Rôles",
|
||||
"Groups": "Groupes",
|
||||
"Profile Picture": "Photo de profil",
|
||||
"Bio": "Bio",
|
||||
"Status": "Statut",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Créer un fil d'introduction",
|
||||
"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)",
|
||||
"The user's full name": "Le nom complet de l'utilisateur",
|
||||
"The user's email. Must be unique to the community": "L'e-mail de l'utilisateur. Doit être unique à la communauté",
|
||||
"The role the user should have": "Le rôle que l'utilisateur doit avoir",
|
||||
"A list of the ids of the groups that the user should belong to.": "Liste des identifiants des groupes auxquels l'utilisateur doit appartenir.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "Un schéma URI de données au format JPG, GIF, ou PNG. Assurez-vous d'utiliser le bon type de contenu (image/jpeg, image/png, image/gif) qui correspond aux données d'image fournies",
|
||||
"The user's bio": "La biographie de l'utilisateur",
|
||||
"The user's status": "Le statut de l'utilisateur",
|
||||
"A link to the user's LinkedIn profile": "Un lien vers le profil LinkedIn de l'utilisateur",
|
||||
"A link to the user's Twitter profile": "Un lien vers le profil Twitter de l'utilisateur",
|
||||
"A link to the user's Instagram profile": "Un lien vers le profil Instagram de l'utilisateur",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "Si vrai et qu'une valeur pour la bio est fournie, un fil d'introduction pour l'utilisateur sera créé dans le canal désigné pour les introductions dans les paramètres de votre communauté.",
|
||||
"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.",
|
||||
"GET": "OBTENIR",
|
||||
"POST": "POSTER",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "EFFACER",
|
||||
"DELETE": "SUPPRIMER",
|
||||
"HEAD": "TÊTE"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "監視と警告が簡単になりました",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "ユーザーを作成",
|
||||
"Custom API Call": "カスタムAPI通話",
|
||||
"Create a new user in a Heartbeat community": "Heartbeatコミュニティに新しいユーザーを作成",
|
||||
"Make a custom API call to a specific endpoint": "特定のエンドポイントへのカスタム API コールを実行します。",
|
||||
"Name": "Name",
|
||||
"Email": "Eメールアドレス",
|
||||
"Roles": "ロール",
|
||||
"Groups": "グループ",
|
||||
"Profile Picture": "プロフィール写真",
|
||||
"Bio": "略歴",
|
||||
"Status": "Status",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "導入スレッドを作成",
|
||||
"Method": "方法",
|
||||
"Headers": "ヘッダー",
|
||||
"Query Parameters": "クエリパラメータ",
|
||||
"Body": "本文",
|
||||
"Response is Binary ?": "応答はバイナリですか?",
|
||||
"No Error on Failure": "失敗時にエラーはありません",
|
||||
"Timeout (in seconds)": "タイムアウト(秒)",
|
||||
"The user's full name": "ユーザーのフルネーム",
|
||||
"The user's email. Must be unique to the community": "ユーザーのメールアドレス。コミュニティ固有のものである必要があります。",
|
||||
"The role the user should have": "ユーザーが持つべき役割",
|
||||
"A list of the ids of the groups that the user should belong to.": "ユーザーが属するべきグループのIDのリスト。",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "JPG、GIF、または PNG 形式のデータ URI スキーム。 指定された画像データと一致する適切なコンテンツタイプ(image/jpeg、image/png、image/gif)を使用してください",
|
||||
"The user's bio": "ユーザーのプロフィール情報",
|
||||
"The user's status": "ユーザーのステータス",
|
||||
"A link to the user's LinkedIn profile": "ユーザーの LinkedIn プロフィールへのリンク",
|
||||
"A link to the user's Twitter profile": "ユーザーのTwitterプロフィールへのリンク",
|
||||
"A link to the user's Instagram profile": "ユーザーのInstagramプロフィールへのリンク",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "true とバイオ値が指定されている場合、 ユーザーの紹介スレッドは、コミュニティ設定で紹介用に指定されたチャンネルに作成されます。",
|
||||
"Authorization headers are injected automatically from your connection.": "認証ヘッダは接続から自動的に注入されます。",
|
||||
"Enable for files like PDFs, images, etc..": "PDF、画像などのファイルを有効にします。",
|
||||
"GET": "取得",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "削除",
|
||||
"HEAD": "頭"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Gemakkelijk te monitoren en waarschuwen",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "Gebruiker aanmaken",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Create a new user in a Heartbeat community": "Maak een nieuwe gebruiker aan in een Heartbeat community",
|
||||
"Make a custom API call to a specific endpoint": "Maak een aangepaste API call naar een specifiek eindpunt",
|
||||
"Name": "Naam",
|
||||
"Email": "E-mail",
|
||||
"Roles": "Rollen",
|
||||
"Groups": "Groepen",
|
||||
"Profile Picture": "Profiel Afbeelding",
|
||||
"Bio": "Bio",
|
||||
"Status": "status",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Creëer introductie-thread",
|
||||
"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)",
|
||||
"The user's full name": "Volledige naam van gebruiker",
|
||||
"The user's email. Must be unique to the community": "De e-mail van de gebruiker. Moet uniek zijn voor de community",
|
||||
"The role the user should have": "De rol die de gebruiker moet hebben",
|
||||
"A list of the ids of the groups that the user should belong to.": "Een lijst van de id's van de groepen waartoe de gebruiker behoort",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "Een gegevens-URI schema in JPG, GIF, of PNG formaat. Zorg ervoor dat u het juiste inhoudstype gebruikt (afbeelding/jpeg, afbeelding/png, afbeelding/gif) dat overeenkomt met de gegevens die worden verstrekt",
|
||||
"The user's bio": "De bio gebruiker",
|
||||
"The user's status": "Status van gebruiker",
|
||||
"A link to the user's LinkedIn profile": "Een link naar het LinkedIn profiel van de gebruiker",
|
||||
"A link to the user's Twitter profile": "Een link naar het Twitterprofiel van de gebruiker",
|
||||
"A link to the user's Instagram profile": "Een link naar het Instagram-profiel van de gebruiker",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "Als waar en een waarde voor de bio is verstrekt, een introductie thread voor de gebruiker zal worden gemaakt in het kanaal dat is aangewezen voor introducties in uw community instellingen.",
|
||||
"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..",
|
||||
"GET": "KRIJG",
|
||||
"POST": "POSTE",
|
||||
"PATCH": "BEKIJK",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "VERWIJDEREN",
|
||||
"HEAD": "HOOFD"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Monitoramento e alerta facilitados",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Entre na sua conta Heartbeat\n 2. No canto inferior esquerdo, clique em 'Configurações Administrativas'\n 3. No painel esquerdo, clique em 'Chaves de API'\n 5. Clique em 'Criar chave de API'\n 6. No formulário pop-up, digite o 'rótulo' para nomear a chave\n 7. Copie a chave da API e cole abaixo.\n",
|
||||
"Create User": "Criar Usuário",
|
||||
"Custom API Call": "Chamada de API personalizada",
|
||||
"Create a new user in a Heartbeat community": "Criar um novo usuário em uma comunidade Heartbeat",
|
||||
"Make a custom API call to a specific endpoint": "Faça uma chamada de API personalizada para um ponto de extremidade específico",
|
||||
"Name": "Nome",
|
||||
"Email": "e-mail",
|
||||
"Roles": "Papéis",
|
||||
"Groups": "grupos",
|
||||
"Profile Picture": "Imagem do perfil",
|
||||
"Bio": "Biografia",
|
||||
"Status": "Estado",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Criar tópico de introdução",
|
||||
"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)",
|
||||
"The user's full name": "Nome completo do usuário",
|
||||
"The user's email. Must be unique to the community": "E-mail do usuário. Deve ser único para a comunidade",
|
||||
"The role the user should have": "O papel que o usuário deve ter",
|
||||
"A list of the ids of the groups that the user should belong to.": "Uma lista dos IDs dos grupos aos quais o usuário deve pertencer.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "Um esquema de URI de dados no formato JPG, GIF ou PNG. Certifique-se de usar o tipo de conteúdo adequado (image/jpeg, image/png, image/gif) que corresponde aos dados de imagem fornecidos.",
|
||||
"The user's bio": "A biografia do usuário",
|
||||
"The user's status": "Status do usuário",
|
||||
"A link to the user's LinkedIn profile": "Um link para o perfil do usuário no LinkedIn",
|
||||
"A link to the user's Twitter profile": "Um link para o perfil Twitter do usuário",
|
||||
"A link to the user's Instagram profile": "Um link para o perfil do usuário no Instagram",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "Se verdadeiro e um valor para biografia é fornecido, um tópico de introdução para o usuário será criado no canal designado para introduções nas configurações da comunidade.",
|
||||
"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..",
|
||||
"GET": "OBTER",
|
||||
"POST": "POSTAR",
|
||||
"PATCH": "COMPRAR",
|
||||
"PUT": "COLOCAR",
|
||||
"DELETE": "EXCLUIR",
|
||||
"HEAD": "CABEÇA"
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"Heartbeat": "Heartbeat",
|
||||
"Monitoring and alerting made easy": "Мониторинг и оповещение упрощены",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Войдите в свой аккаунт Heartbeat\n 2. Слева внизу нажмите на 'Админ Настройки'\n 3. На левой панели нажмите 'Ключи API'\n 5. Нажмите на кнопку «Создать ключ API»\n 6. В всплывающем окне введите «Метка», чтобы назвать ключ\n 7. Скопируйте ключ API и вставьте его ниже.\n",
|
||||
"Create User": "Создать пользователя",
|
||||
"Custom API Call": "Пользовательский вызов API",
|
||||
"Create a new user in a Heartbeat community": "Создать нового пользователя в сообществе Heartbeat",
|
||||
"Make a custom API call to a specific endpoint": "Сделать пользовательский API вызов к определенной конечной точке",
|
||||
"Name": "Наименование",
|
||||
"Email": "Почта",
|
||||
"Roles": "Роли",
|
||||
"Groups": "Группы",
|
||||
"Profile Picture": "Изображение профиля",
|
||||
"Bio": "Био",
|
||||
"Status": "Статус",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Твиттер",
|
||||
"Instagram": "Инстаграмма",
|
||||
"Create introduction thread": "Создать вводную тему",
|
||||
"Method": "Метод",
|
||||
"Headers": "Заголовки",
|
||||
"Query Parameters": "Параметры запроса",
|
||||
"Body": "Тело",
|
||||
"No Error on Failure": "Нет ошибок при ошибке",
|
||||
"Timeout (in seconds)": "Таймаут (в секундах)",
|
||||
"The user's full name": "Полное имя пользователя",
|
||||
"The user's email. Must be unique to the community": "Адрес электронной почты пользователя. Должен быть уникальным для сообщества",
|
||||
"The role the user should have": "Роль, которую должен иметь пользователь",
|
||||
"A list of the ids of the groups that the user should belong to.": "Список идентификаторов групп, к которым должен принадлежать пользователь.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "Схема URI данных в формате JPG, GIF или PNG. Убедитесь, что вы используете правильный тип содержимого (image/jpeg, image/png, image/gif), который соответствует предоставленным изображениям",
|
||||
"The user's bio": "Био пользователя",
|
||||
"The user's status": "Статус пользователя",
|
||||
"A link to the user's LinkedIn profile": "Ссылка на профиль пользователя LinkedIn",
|
||||
"A link to the user's Twitter profile": "Ссылка на Twitter профиль пользователя",
|
||||
"A link to the user's Instagram profile": "Ссылка на профиль пользователя",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "Если задано значение \"true\" и \"bio\", вводная тема для пользователя будет создана в канале, предназначенном для введения в настройки сообщества.",
|
||||
"Authorization headers are injected automatically from your connection.": "Заголовки авторизации включаются автоматически из вашего соединения.",
|
||||
"GET": "ПОЛУЧИТЬ",
|
||||
"POST": "ПОСТ",
|
||||
"PATCH": "ПАТЧ",
|
||||
"PUT": "ПОКУПИТЬ",
|
||||
"DELETE": "УДАЛИТЬ",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Monitoring and alerting made easy",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "Create User",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Create a new user in a Heartbeat community": "Create a new user in a Heartbeat community",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Name": "Name",
|
||||
"Email": "Email",
|
||||
"Roles": "Roles",
|
||||
"Groups": "Groups",
|
||||
"Profile Picture": "Profile Picture",
|
||||
"Bio": "Bio",
|
||||
"Status": "Status",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Create introduction thread",
|
||||
"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)",
|
||||
"The user's full name": "The user's full name",
|
||||
"The user's email. Must be unique to the community": "The user's email. Must be unique to the community",
|
||||
"The role the user should have": "The role the user should have",
|
||||
"A list of the ids of the groups that the user should belong to.": "A list of the ids of the groups that the user should belong to.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided",
|
||||
"The user's bio": "The user's bio",
|
||||
"The user's status": "The user's status",
|
||||
"A link to the user's LinkedIn profile": "A link to the user's LinkedIn profile",
|
||||
"A link to the user's Twitter profile": "A link to the user's Twitter profile",
|
||||
"A link to the user's Instagram profile": "A link to the user's Instagram profile",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.",
|
||||
"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..",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"Heartbeat": "Heartbeat",
|
||||
"Monitoring and alerting made easy": "Monitoring and alerting made easy",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "Create User",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Create a new user in a Heartbeat community": "Create a new user in a Heartbeat community",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Name": "Name",
|
||||
"Email": "Email",
|
||||
"Roles": "Roles",
|
||||
"Groups": "Groups",
|
||||
"Profile Picture": "Profile Picture",
|
||||
"Bio": "Bio",
|
||||
"Status": "Status",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Create introduction thread",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The user's full name": "The user's full name",
|
||||
"The user's email. Must be unique to the community": "The user's email. Must be unique to the community",
|
||||
"The role the user should have": "The role the user should have",
|
||||
"A list of the ids of the groups that the user should belong to.": "A list of the ids of the groups that the user should belong to.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided",
|
||||
"The user's bio": "The user's bio",
|
||||
"The user's status": "The user's status",
|
||||
"A link to the user's LinkedIn profile": "A link to the user's LinkedIn profile",
|
||||
"A link to the user's Twitter profile": "A link to the user's Twitter profile",
|
||||
"A link to the user's Instagram profile": "A link to the user's Instagram profile",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"Monitoring and alerting made easy": "Monitoring and alerting made easy",
|
||||
"\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n": "\n 1. Login to your Heartbeat account\n 2. On the bottom-left, click on 'Admin Settings'\n 3. On the left panel, click on 'API Keys'\n 5. Click on 'Create API Key'\n 6. On the popup form, Enter the 'Label' to name the Key\n 7. Copy the API key and paste it below.\n",
|
||||
"Create User": "Create User",
|
||||
"Custom API Call": "自定义 API 呼叫",
|
||||
"Create a new user in a Heartbeat community": "Create a new user in a Heartbeat community",
|
||||
"Make a custom API call to a specific endpoint": "将一个自定义 API 调用到一个特定的终点",
|
||||
"Name": "名称",
|
||||
"Email": "电子邮件地址",
|
||||
"Roles": "角色",
|
||||
"Groups": "Groups",
|
||||
"Profile Picture": "Profile Picture",
|
||||
"Bio": "Bio",
|
||||
"Status": "状态",
|
||||
"LinkedIn": "LinkedIn",
|
||||
"Twitter": "Twitter",
|
||||
"Instagram": "Instagram",
|
||||
"Create introduction thread": "Create introduction thread",
|
||||
"Method": "方法",
|
||||
"Headers": "信头",
|
||||
"Query Parameters": "查询参数",
|
||||
"Body": "正文内容",
|
||||
"Response is Binary ?": "Response is Binary ?",
|
||||
"No Error on Failure": "失败时没有错误",
|
||||
"Timeout (in seconds)": "超时(秒)",
|
||||
"The user's full name": "The user's full name",
|
||||
"The user's email. Must be unique to the community": "The user's email. Must be unique to the community",
|
||||
"The role the user should have": "The role the user should have",
|
||||
"A list of the ids of the groups that the user should belong to.": "A list of the ids of the groups that the user should belong to.",
|
||||
"A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided": "A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided",
|
||||
"The user's bio": "The user's bio",
|
||||
"The user's status": "The user's status",
|
||||
"A link to the user's LinkedIn profile": "A link to the user's LinkedIn profile",
|
||||
"A link to the user's Twitter profile": "A link to the user's Twitter profile",
|
||||
"A link to the user's Instagram profile": "A link to the user's Instagram profile",
|
||||
"If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.": "If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.",
|
||||
"Authorization headers are injected automatically from your connection.": "授权头自动从您的连接中注入。",
|
||||
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
|
||||
"GET": "获取",
|
||||
"POST": "帖子",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "弹出",
|
||||
"DELETE": "删除",
|
||||
"HEAD": "黑色"
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
import { createCustomApiCallAction } from '@activepieces/pieces-common';
|
||||
import { createPiece, PieceAuth } from '@activepieces/pieces-framework';
|
||||
import { PieceCategory } from '@activepieces/shared';
|
||||
import { heartBeatCreateUser } from './lib/actions/create-user';
|
||||
|
||||
const markdownPropertyDescription = `
|
||||
1. Login to your Heartbeat account
|
||||
2. On the bottom-left, click on 'Admin Settings'
|
||||
3. On the left panel, click on 'API Keys'
|
||||
5. Click on 'Create API Key'
|
||||
6. On the popup form, Enter the 'Label' to name the Key
|
||||
7. Copy the API key and paste it below.
|
||||
`;
|
||||
|
||||
export const heartbeatAuth = PieceAuth.SecretText({
|
||||
displayName: 'API Key',
|
||||
description: markdownPropertyDescription,
|
||||
required: true,
|
||||
});
|
||||
|
||||
export const Heartbeat = createPiece({
|
||||
displayName: 'Heartbeat',
|
||||
description: 'Monitoring and alerting made easy',
|
||||
|
||||
auth: heartbeatAuth,
|
||||
minimumSupportedRelease: '0.30.0',
|
||||
logoUrl: 'https://cdn.activepieces.com/pieces/heartbeat.png',
|
||||
categories: [PieceCategory.COMMUNICATION],
|
||||
authors: ["kanarelo","kishanprmr","abuaboud"],
|
||||
actions: [
|
||||
heartBeatCreateUser,
|
||||
createCustomApiCallAction({
|
||||
auth: heartbeatAuth,
|
||||
baseUrl: () => 'https://api.heartbeat.chat/v0',
|
||||
authMapping: async (auth) => {
|
||||
return {
|
||||
Authorization: `Bearer ${auth.secret_text}`,
|
||||
};
|
||||
},
|
||||
}),
|
||||
],
|
||||
triggers: [],
|
||||
});
|
||||
@@ -0,0 +1,202 @@
|
||||
import {
|
||||
Property,
|
||||
createAction,
|
||||
} from '@activepieces/pieces-framework';
|
||||
import {
|
||||
AuthenticationType,
|
||||
HttpMethod,
|
||||
httpClient,
|
||||
propsValidation,
|
||||
} from '@activepieces/pieces-common';
|
||||
import { heartbeatAuth } from '../..';
|
||||
import { z } from 'zod';
|
||||
|
||||
export const heartBeatCreateUser = createAction({
|
||||
auth: heartbeatAuth,
|
||||
name: 'heartbeat_create_user',
|
||||
displayName: 'Create User',
|
||||
description: 'Create a new user in a Heartbeat community',
|
||||
props: {
|
||||
name: Property.ShortText({
|
||||
displayName: 'Name',
|
||||
description: "The user's full name",
|
||||
required: true,
|
||||
}),
|
||||
email: Property.ShortText({
|
||||
displayName: 'Email',
|
||||
description: "The user's email. Must be unique to the community",
|
||||
required: true,
|
||||
}),
|
||||
role_id: Property.Dropdown({
|
||||
auth: heartbeatAuth,
|
||||
displayName: 'Roles',
|
||||
description: 'The role the user should have',
|
||||
required: true,
|
||||
refreshers: [],
|
||||
options: async ({ auth }) => {
|
||||
if (!auth)
|
||||
return {
|
||||
disabled: true,
|
||||
options: [],
|
||||
placeholder: 'Please select a connection',
|
||||
};
|
||||
|
||||
const response = await httpClient.sendRequest<
|
||||
{
|
||||
id: string;
|
||||
name: string;
|
||||
}[]
|
||||
>({
|
||||
method: HttpMethod.GET,
|
||||
url: `https://api.heartbeat.chat/v0/roles`,
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
},
|
||||
authentication: {
|
||||
type: AuthenticationType.BEARER_TOKEN,
|
||||
token: auth.secret_text,
|
||||
},
|
||||
body: {},
|
||||
});
|
||||
|
||||
if (response.status === 200) {
|
||||
return {
|
||||
options: response.body.map((role) => ({
|
||||
label: role.name,
|
||||
value: role.id,
|
||||
})),
|
||||
disabled: false,
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
options: [],
|
||||
disabled: true,
|
||||
placeholder: 'Error loading roles.',
|
||||
};
|
||||
},
|
||||
}),
|
||||
group_ids: Property.MultiSelectDropdown({
|
||||
displayName: 'Groups',
|
||||
auth: heartbeatAuth,
|
||||
description:
|
||||
'A list of the ids of the groups that the user should belong to.',
|
||||
required: false,
|
||||
refreshers: [],
|
||||
options: async ({ auth }) => {
|
||||
if (!auth)
|
||||
return {
|
||||
disabled: true,
|
||||
options: [],
|
||||
placeholder: 'Error loading groups',
|
||||
};
|
||||
|
||||
const response = await httpClient.sendRequest<
|
||||
{
|
||||
id: string;
|
||||
name: string;
|
||||
}[]
|
||||
>({
|
||||
method: HttpMethod.GET,
|
||||
url: `https://api.heartbeat.chat/v0/groups`,
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
},
|
||||
authentication: {
|
||||
type: AuthenticationType.BEARER_TOKEN,
|
||||
token: auth.secret_text,
|
||||
},
|
||||
body: {},
|
||||
});
|
||||
|
||||
if (response.status === 200) {
|
||||
return {
|
||||
options: response.body.map((group) => ({
|
||||
label: group.name,
|
||||
value: group.id,
|
||||
})),
|
||||
disabled: false,
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
disabled: true,
|
||||
options: [],
|
||||
placeholder: 'Error loading groups',
|
||||
};
|
||||
},
|
||||
}),
|
||||
profile_picture: Property.ShortText({
|
||||
displayName: 'Profile Picture',
|
||||
description:
|
||||
'A Data URI scheme in the JPG, GIF, or PNG format. Ensure you use the proper content type (image/jpeg, image/png, image/gif) that matches the image data being provided',
|
||||
required: false,
|
||||
}),
|
||||
bio: Property.ShortText({
|
||||
displayName: 'Bio',
|
||||
description: "The user's bio",
|
||||
required: false,
|
||||
}),
|
||||
status: Property.ShortText({
|
||||
displayName: 'Status',
|
||||
description: "The user's status",
|
||||
required: false,
|
||||
}),
|
||||
linkedin: Property.LongText({
|
||||
displayName: 'LinkedIn',
|
||||
description: "A link to the user's LinkedIn profile",
|
||||
required: false,
|
||||
}),
|
||||
twitter: Property.LongText({
|
||||
displayName: 'Twitter',
|
||||
description: "A link to the user's Twitter profile",
|
||||
required: false,
|
||||
}),
|
||||
instagram: Property.LongText({
|
||||
displayName: 'Instagram',
|
||||
description: "A link to the user's Instagram profile",
|
||||
required: false,
|
||||
}),
|
||||
create_introduction_thread: Property.Checkbox({
|
||||
displayName: 'Create introduction thread',
|
||||
description:
|
||||
'If true and a value for bio is provided, an introduction thread for the user will be created in the channel designated for introductions in your community settings.',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
await propsValidation.validateZod(propsValue, {
|
||||
email: z.string().email(),
|
||||
linkedin: z.string().url().optional(),
|
||||
twitter: z.string().url().optional(),
|
||||
instagram: z.string().url().optional()
|
||||
});
|
||||
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.PUT,
|
||||
url: `https://api.heartbeat.chat/v0/users`,
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
},
|
||||
authentication: {
|
||||
type: AuthenticationType.BEARER_TOKEN,
|
||||
token: auth.secret_text,
|
||||
},
|
||||
body: {
|
||||
name: propsValue.name,
|
||||
email: propsValue.email,
|
||||
roleID: propsValue.role_id,
|
||||
groupIDs: propsValue.group_ids,
|
||||
profilePicture: propsValue.profile_picture,
|
||||
bio: propsValue.bio,
|
||||
status: propsValue.status,
|
||||
linkedin: propsValue.linkedin,
|
||||
twitter: propsValue.twitter,
|
||||
instagram: propsValue.instagram,
|
||||
createIntroductionThread: propsValue.create_introduction_thread,
|
||||
},
|
||||
});
|
||||
|
||||
return response.body;
|
||||
},
|
||||
});
|
||||
@@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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"]
|
||||
}
|
||||
Reference in New Issue
Block a user