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,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Kundenzufriedenheit messen und steigern",
|
||||
"Trigger Wootric Survey": "Wootric-Umfrage auslösen",
|
||||
"Trigger a survey from Wootric": "Eine Umfrage von Wootric auslösen",
|
||||
"Emails": "E-Mails",
|
||||
"Survey Immediately": "Umfrage sofort",
|
||||
"End user emails, where you want the survey to be received": "Endbenutzer-E-Mails, wo die Umfrage empfangen werden soll",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Geben Sie \"true\" zur Umfrage sofort ein, um Prüfungen zu umgehen, ansonsten \"falsch\""
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Medir y mejorar la felicidad del cliente",
|
||||
"Trigger Wootric Survey": "Encuesta sanguinaria de activación",
|
||||
"Trigger a survey from Wootric": "Activar una encuesta desde Wootric",
|
||||
"Emails": "Correos",
|
||||
"Survey Immediately": "Encuesta inmediatamente",
|
||||
"End user emails, where you want the survey to be received": "Correos de usuario final, donde quieres que la encuesta sea recibida",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Introduzca \"verdadero\" para la encuesta inmediatamente para eludir las comprobaciones, de lo contrario \"falso\""
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Mesurer et améliorer le bonheur des clients",
|
||||
"Trigger Wootric Survey": "Déclencher Wootric Survey",
|
||||
"Trigger a survey from Wootric": "Déclencher une enquête de Wootric",
|
||||
"Emails": "E-mails",
|
||||
"Survey Immediately": "Enquête immédiate",
|
||||
"End user emails, where you want the survey to be received": "Emails de l'utilisateur final, où vous voulez que l'enquête soit reçue",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Entrez \"true\" pour l'enquête immédiatement pour contourner les vérifications, sinon \"false\""
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "顧客の幸せを測定し、向上させる",
|
||||
"Trigger Wootric Survey": "トリガーWootric Survey",
|
||||
"Trigger a survey from Wootric": "Wootric からアンケートをトリガーする",
|
||||
"Emails": "E-mail",
|
||||
"Survey Immediately": "すぐにアンケートする",
|
||||
"End user emails, where you want the survey to be received": "アンケートを受信したいユーザーのメールを終了します。",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "チェックをバイパスするにはすぐにアンケートに「true」を入力してください。そうでない場合は「false」を入力してください"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Meet en verhoog het klantgeluk",
|
||||
"Trigger Wootric Survey": "Trigger Wootrisch Survey",
|
||||
"Trigger a survey from Wootric": "Trigger een enquête van Wootric",
|
||||
"Emails": "E-mails",
|
||||
"Survey Immediately": "Onmiddellijk onderzoek",
|
||||
"End user emails, where you want the survey to be received": "Einde gebruikerse-mails, waar u de enquête wilt ontvangen",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Voer \"true\" in om direct te onderzoeken om controles te omzeilen, anders \"false\""
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Medir e melhorar a felicidade do cliente",
|
||||
"Trigger Wootric Survey": "Ativar Pesquisa Wootric",
|
||||
"Trigger a survey from Wootric": "Acionar uma pesquisa no Wootric",
|
||||
"Emails": "e-mails",
|
||||
"Survey Immediately": "Pesquisa imediatamente",
|
||||
"End user emails, where you want the survey to be received": "Fim de email de usuário, onde você quer que a pesquisa seja recebida",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Digite \"true\" para a pesquisa imediatamente para ignorar as verificações, caso contrário \"false\""
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"Wootric": "Вурическая",
|
||||
"Measure and boost customer happiness": "Измерьте и ускорьте счастье клиента",
|
||||
"Trigger Wootric Survey": "Триггер Wootric Survey",
|
||||
"Trigger a survey from Wootric": "Запустить опрос из Wootric",
|
||||
"Emails": "Письма",
|
||||
"Survey Immediately": "Опрос немедленно",
|
||||
"End user emails, where you want the survey to be received": "Электронная почта конечного пользователя, где вы хотите получить опрос",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Введите \"true\", чтобы немедленно пропустить проверки, в противном случае \"false\""
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Measure and boost customer happiness",
|
||||
"Trigger Wootric Survey": "Trigger Wootric Survey",
|
||||
"Trigger a survey from Wootric": "Trigger a survey from Wootric",
|
||||
"Emails": "Emails",
|
||||
"Survey Immediately": "Survey Immediately",
|
||||
"End user emails, where you want the survey to be received": "End user emails, where you want the survey to be received",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Enter \"true\" to survey immediately to bypass checks, otherwise \"false\""
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"Wootric": "Wootric",
|
||||
"Measure and boost customer happiness": "Measure and boost customer happiness",
|
||||
"Trigger Wootric Survey": "Trigger Wootric Survey",
|
||||
"Trigger a survey from Wootric": "Trigger a survey from Wootric",
|
||||
"Emails": "Emails",
|
||||
"Survey Immediately": "Survey Immediately",
|
||||
"End user emails, where you want the survey to be received": "End user emails, where you want the survey to be received",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Enter \"true\" to survey immediately to bypass checks, otherwise \"false\""
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Measure and boost customer happiness": "Measure and boost customer happiness",
|
||||
"Trigger Wootric Survey": "Trigger Wootric Survey",
|
||||
"Trigger a survey from Wootric": "Trigger a survey from Wootric",
|
||||
"Emails": "电子邮件",
|
||||
"Survey Immediately": "Survey Immediately",
|
||||
"End user emails, where you want the survey to be received": "End user emails, where you want the survey to be received",
|
||||
"Enter \"true\" to survey immediately to bypass checks, otherwise \"false\"": "Enter \"true\" to survey immediately to bypass checks, otherwise \"false\""
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
import { createPiece, PieceAuth } from '@activepieces/pieces-framework';
|
||||
import { createWootricSurvey } from './lib/actions/create-survey';
|
||||
import { OAuth2GrantType } from '@activepieces/shared';
|
||||
|
||||
export const WOOTRIC_API_URL = 'https://api.wootric.com';
|
||||
export const WOOTRIC_IMAGE_URL =
|
||||
'https://assets-production.wootric.com/assets/wootric-is-now-inmoment-250x108-85cb4900c62ff4d33200abafee7d63372d410abc5bf0cab90e80a07d4f4e5a31.png';
|
||||
|
||||
export const wootricAuth = PieceAuth.OAuth2({
|
||||
required: true,
|
||||
grantType: OAuth2GrantType.CLIENT_CREDENTIALS,
|
||||
authUrl: '',
|
||||
tokenUrl: `${WOOTRIC_API_URL}/oauth/token`,
|
||||
scope: [],
|
||||
});
|
||||
|
||||
export const wootric = createPiece({
|
||||
displayName: 'Wootric',
|
||||
description: 'Measure and boost customer happiness',
|
||||
|
||||
auth: wootricAuth,
|
||||
minimumSupportedRelease: '0.30.0',
|
||||
logoUrl: WOOTRIC_IMAGE_URL,
|
||||
authors: ["abuaboud"],
|
||||
actions: [createWootricSurvey],
|
||||
triggers: [],
|
||||
});
|
||||
@@ -0,0 +1,47 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { wootricAuth, WOOTRIC_API_URL } from '../../';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
|
||||
export const sendSurvey = async (surveyRequestPayload: object) => {
|
||||
const EMAIL_SURVEY = `${WOOTRIC_API_URL}/v1/email_survey`;
|
||||
return await httpClient.sendRequest({
|
||||
method: HttpMethod.POST,
|
||||
url: EMAIL_SURVEY,
|
||||
body: surveyRequestPayload,
|
||||
});
|
||||
};
|
||||
|
||||
export const createWootricSurvey = createAction({
|
||||
name: 'trigger_wootric_survey',
|
||||
auth: wootricAuth,
|
||||
displayName: 'Trigger Wootric Survey',
|
||||
description: 'Trigger a survey from Wootric',
|
||||
props: {
|
||||
emails: Property.Array({
|
||||
displayName: 'Emails',
|
||||
description: 'End user emails, where you want the survey to be received',
|
||||
required: true,
|
||||
defaultValue: [],
|
||||
}),
|
||||
surveyImmediately: Property.Checkbox({
|
||||
displayName: 'Survey Immediately',
|
||||
description:
|
||||
'Enter "true" to survey immediately to bypass checks, otherwise "false"',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run(context) {
|
||||
const { surveyImmediately, emails } = context.propsValue;
|
||||
const { access_token } = context.auth;
|
||||
|
||||
const surveyRequestPayload = {
|
||||
emails: emails,
|
||||
survey_immediately: surveyImmediately,
|
||||
access_token: access_token,
|
||||
};
|
||||
|
||||
const surveyResponse = await sendSurvey(surveyRequestPayload);
|
||||
|
||||
return surveyResponse.body;
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user