ntfy
Send push notifications to any device using the ntfy pub/sub service.
Connect
Auth type: No credentials (none). Nothing to connect: the actions run without credentials.
- In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
- For every project in a workspace: Workspace settings, Integrations.
- Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.
Call it from a workflow
Pass the action name and its input. The call resolves with { success, output, error? }; a missing connection resolves with success false and the reason. See ctx.integrations.invoke and ctx.integrations.call.
// .workflow.js (native ctx)
export async function run(ctx) {
const res = await ctx.integrations.invoke("ntfy", "send_notification", {
"topic": "<topic>",
"message": "<message>"
});
if (!res.success) throw new Error(res.error);
ctx.log.info("ntfy answered", { output: res.output });
}// defineWorkflow module (@app/sdk ctx)
import { defineWorkflow } from "@app/sdk";
export default defineWorkflow({
id: "ntfy-send-notification",
name: "ntfy: Send Notification",
description: "Calls ntfy when a row is created.",
trigger: { type: "entity_event", entity: "tickets", event: "created" },
async run(ctx, event) {
const res = await ctx.integrations.call("ntfy", {
"action": "send_notification",
"topic": "<topic>",
"message": "<message>"
}) as { success: boolean; error?: string };
if (!res.success) throw new Error(res.error);
},
});curl -X POST "$APP_ORIGIN/__appbricx/connector-proxy/ntfy/send_notification" \
-H "Authorization: Bearer $APP_KEY" \
-H "content-type: application/json" \
-d '{"props":{"topic":"<topic>","message":"<message>"}}'Actions
send_notificationin catalog
Send Notification. Send a notification to ntfy
| Input | Type | Description |
|---|---|---|
topicrequired | text | The topic/channel to send the notification to, e.g. test1 |
titleoptional | text | The title of the notification |
messagerequired | long text | The message to send |
priorityoptional | text | The priority of the notification (1-5). 1 is lowest priority. |
tagsoptional | array | The tags for the notification. |
iconoptional | text | The absolute URL to your icon, e.g. https://example.com/communityIcon_xnt6chtnr2j21.png |
actionsoptional | long text | Add Action buttons to notifications, see https://docs.ntfy.sh/publish/#action-buttons |
clickoptional | text | You can define which URL to open when a notification is clicked, see https://docs.ntfy.sh/publish/#click-action |
delayoptional | text | Let ntfy send messages at a later date, e.g. 'tomorrow, 10am', see https://docs.ntfy.sh/publish/#scheduled-delivery |
custom_api_call
Custom API Call. Make a custom API call to a specific endpoint
| Input | Type | Description |
|---|---|---|
urlrequired | object (depends on other props) | url |
methodrequired | one of "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | "HEAD" | Method |
headersrequired | object | Authorization headers are injected automatically from your connection. |
queryParamsrequired | object | Query Parameters |
body_typeoptional | one of "none" | "json" | "form_data" | "raw" | Body Type |
bodyoptional | object (depends on other props) | Body |
response_is_binaryoptional | boolean | Enable for files like PDFs, images, etc. |
failsafeoptional | boolean | No Error on Failure |
timeoutoptional | number | Timeout (in seconds) |
followRedirectsoptional | boolean | Follow redirects |
Details
- Id
ntfy- Category
- Communication
- Tags
- push, notifications, open-source, self-hosted
- Package
@activepieces/piece-ntfy@0.2.4- Tier
- Community