diff --git a/packages/backend/src/apps/changedetection/actions/create-watch/index.js b/packages/backend/src/apps/changedetection/actions/create-watch/index.js new file mode 100644 index 00000000..3d65c6eb --- /dev/null +++ b/packages/backend/src/apps/changedetection/actions/create-watch/index.js @@ -0,0 +1,29 @@ +import defineAction from '../../../../helpers/define-action.js'; + +export default defineAction({ + name: 'Create a watch', + key: 'createWatch', + description: 'Creates a new change detection watch for a specific website.', + arguments: [ + { + label: 'URL', + key: 'url', + type: 'string', + required: true, + variables: true, + description: 'Url you want to monitor', + }, + ], + + async run($) { + const url = $.step.parameters.url; + + const body = { + url, + }; + + const response = await $.http.post('/v1/watch', body); + + $.setActionItem({ raw: response.data }); + }, +}); diff --git a/packages/backend/src/apps/changedetection/actions/index.js b/packages/backend/src/apps/changedetection/actions/index.js new file mode 100644 index 00000000..9fd2f538 --- /dev/null +++ b/packages/backend/src/apps/changedetection/actions/index.js @@ -0,0 +1,3 @@ +import createWatch from './create-watch/index.js'; + +export default [createWatch]; diff --git a/packages/backend/src/apps/changedetection/index.js b/packages/backend/src/apps/changedetection/index.js index 89fbe8b4..7ed77fdf 100644 --- a/packages/backend/src/apps/changedetection/index.js +++ b/packages/backend/src/apps/changedetection/index.js @@ -2,6 +2,7 @@ import defineApp from '../../helpers/define-app.js'; import addAuthHeader from './common/add-auth-header.js'; import auth from './auth/index.js'; import setBaseUrl from './common/set-base-url.js'; +import actions from './actions/index.js'; export default defineApp({ name: 'Changedetection', @@ -14,4 +15,5 @@ export default defineApp({ primaryColor: '3056d3', beforeRequest: [setBaseUrl, addAuthHeader], auth, + actions, }); diff --git a/packages/docs/pages/apps/changedetection/actions.md b/packages/docs/pages/apps/changedetection/actions.md new file mode 100644 index 00000000..6662a4dd --- /dev/null +++ b/packages/docs/pages/apps/changedetection/actions.md @@ -0,0 +1,12 @@ +--- +favicon: /favicons/changedetection.svg +items: + - name: Create a watch + desc: Creates a new change detection watch for a specific website. +--- + + + + diff --git a/packages/docs/pages/guide/available-apps.md b/packages/docs/pages/guide/available-apps.md index 73931c57..7c8e5a33 100644 --- a/packages/docs/pages/guide/available-apps.md +++ b/packages/docs/pages/guide/available-apps.md @@ -3,6 +3,7 @@ The following integrations are currently supported by Automatisch. - [Carbone](/apps/carbone/actions) +- [Changedetection](/apps/changedetection/actions) - [Datastore](/apps/datastore/actions) - [DeepL](/apps/deepl/actions) - [Delay](/apps/delay/actions) diff --git a/packages/docs/pages/public/favicons/changedetectionio.svg b/packages/docs/pages/public/favicons/changedetectionio.svg new file mode 100644 index 00000000..378fc45c --- /dev/null +++ b/packages/docs/pages/public/favicons/changedetectionio.svg @@ -0,0 +1 @@ + \ No newline at end of file