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,67 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { retuneAuth } from '../../index';
|
||||
import { HttpMethod, httpClient } from '@activepieces/pieces-common';
|
||||
|
||||
export const askChatbot = createAction({
|
||||
auth: retuneAuth,
|
||||
name: 'ask_chatbot',
|
||||
displayName: 'Ask Chatbot',
|
||||
description: 'Sends a message to an existing thread with a chatbot.',
|
||||
props: {
|
||||
thread: Property.Dropdown({
|
||||
auth: retuneAuth,
|
||||
displayName: 'Thread',
|
||||
description: 'The thread you want to send the message to.',
|
||||
required: true,
|
||||
refreshers: [],
|
||||
options: async ({ auth }) => {
|
||||
if (!auth) {
|
||||
return {
|
||||
disabled: true,
|
||||
options: [],
|
||||
placeholder: 'Please connect your account first',
|
||||
};
|
||||
}
|
||||
const options = await httpClient.sendRequest({
|
||||
url: `https://retune.so/api/chat/${(auth).props.chatId}/threads`,
|
||||
method: HttpMethod.POST,
|
||||
headers: {
|
||||
'X-Workspace-API-Key': (auth).props.apiKey,
|
||||
},
|
||||
body: {},
|
||||
});
|
||||
|
||||
return {
|
||||
options: options.body['threads'].map((item: any) => {
|
||||
return {
|
||||
label: item.name ?? item.id,
|
||||
value: item.id,
|
||||
};
|
||||
}),
|
||||
};
|
||||
},
|
||||
}),
|
||||
message: Property.ShortText({
|
||||
displayName: 'Message',
|
||||
description: 'The message you want to send.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { thread, message } = propsValue;
|
||||
|
||||
const response = await httpClient.sendRequest({
|
||||
url: `https://retune.so/api/chat/${auth.props.chatId}/response`,
|
||||
method: HttpMethod.POST,
|
||||
headers: {
|
||||
'X-Workspace-API-Key': auth.props.apiKey,
|
||||
},
|
||||
body: {
|
||||
threadId: thread,
|
||||
input: message,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as any).response.value;
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user