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,11 @@
|
||||
import * as path from 'path'
|
||||
import { BrowserCheck } from 'checkly/constructs'
|
||||
|
||||
new BrowserCheck('webhook-should-return-response-check', {
|
||||
name: 'Webhook Should Return Response',
|
||||
frequency: 30, // every 30 minutes
|
||||
locations: ['eu-west-1'],
|
||||
code: {
|
||||
entrypoint: path.join(__dirname, 'webhook-should-return-response.spec.ts')
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,49 @@
|
||||
import { test, expect } from '../../../fixtures';
|
||||
|
||||
test.describe('Webhooks', () => {
|
||||
test('should handle webhook with return response', async ({ page, flowsPage, builderPage }) => {
|
||||
test.setTimeout(120000);
|
||||
|
||||
await flowsPage.waitFor();
|
||||
|
||||
await flowsPage.newFlowFromScratch();
|
||||
|
||||
await builderPage.selectInitialTrigger({
|
||||
piece: 'Webhook',
|
||||
trigger: 'Catch Webhook'
|
||||
});
|
||||
|
||||
const webhookInput = page.locator('input.grow.bg-background');
|
||||
const webhookUrl = await webhookInput.inputValue();
|
||||
const runVersion = Math.floor(Math.random() * 100000);
|
||||
const urlWithParams = `${webhookUrl}/sync?targetRunVersion=${runVersion}`;
|
||||
|
||||
await builderPage.testTrigger();
|
||||
|
||||
await page.context().request.get(urlWithParams);
|
||||
await page.waitForTimeout(5000);
|
||||
|
||||
await builderPage.addAction({
|
||||
piece: 'Webhook',
|
||||
action: 'Return Response'
|
||||
});
|
||||
|
||||
//clear
|
||||
await page.locator('div.cm-activeLine.cm-line').fill(
|
||||
''
|
||||
);
|
||||
|
||||
await page.locator('div.cm-activeLine.cm-line').fill(
|
||||
'{"targetRunVersion": "{{trigger[\'queryParams\'][\'targetRunVersion\']}}"}'
|
||||
);
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
await builderPage.publishFlow();
|
||||
|
||||
const response = await page.context().request.get(urlWithParams);
|
||||
const body = await response.json();
|
||||
|
||||
expect(body.targetRunVersion).toBe(runVersion.toString());
|
||||
});
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user