Files
smoothschedule/activepieces-fork/packages/pieces/community/emailoctopus/src/index.ts
poduck 3aa7199503 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>
2025-12-18 22:59:37 -05:00

57 lines
2.1 KiB
TypeScript

import { createPiece } from "@activepieces/pieces-framework";
import { emailOctopusAuth } from "./lib/common/auth";
import { addOrUpdateContact } from "./lib/actions/add-or-update-contact";
import { unsubscribeContact } from "./lib/actions/unsubscribe-contact";
import { updateContactEmail } from "./lib/actions/update-contact-email";
import { addTagToContact } from "./lib/actions/add-tag-to-contact";
import { removeTagFromContact } from "./lib/actions/remove-tag-from-contact";
import { createList } from "./lib/actions/create-list";
import { findContact } from "./lib/actions/find-contact";
import { PieceCategory } from '@activepieces/shared';
import { emailBounced } from "./lib/triggers/email-bounced";
import { emailOpened } from "./lib/triggers/email-opened";
import { emailClicked } from "./lib/triggers/email-Clicked";
import { newContact } from "./lib/triggers/new-Contact";
import { contactUnsubscribes } from "./lib/triggers/contact-Unsubscribes";
import { createCustomApiCallAction } from "@activepieces/pieces-common";
import { emailOctopusApiUrl } from "./lib/common/client";
export const emailoctopus = createPiece({
displayName: "EmailOctopus",
description: 'Email marketing platform for list management, campaign sending, tagging & unsubscribes. Automate contact management and campaign engagement tracking.',
auth: emailOctopusAuth,
minimumSupportedRelease: '0.36.1',
logoUrl: "https://cdn.activepieces.com/pieces/emailoctopus.png",
categories: [PieceCategory.MARKETING],
authors: ['Pranith124'],
actions: [
addOrUpdateContact,
unsubscribeContact,
updateContactEmail,
addTagToContact,
removeTagFromContact,
createList,
findContact ,
createCustomApiCallAction({
auth:emailOctopusAuth,
baseUrl:()=>emailOctopusApiUrl,
authMapping:async (auth)=>{
return{
Authorization:`Bearer ${auth.secret_text}`
}
}
})
],
triggers: [
emailBounced,
emailOpened,
emailClicked,
newContact,
contactUnsubscribes
],
});