Webhook problem

Description

I’m suffering with an outgoing webhook that should trigger a workflow in activepieces.
Rocket is running in docker on a cloud Server.

What works:
:white_check_mark: Webhook fires in Test-Mode (ap-URL/test ) and test is registered in AP
:white_check_mark: Regular ap-URL (without /test) recognizes the trigger when the URL is called via CURL from within the docker-container
:white_check_mark: Rocket-Log shows the that regular webhook fires (prepare_outgoing_request)

BUT
:cross_mark: The ap-worklow ist not triggered, so it seems rocket.chat is not sending the request.

I have no more any idea what else to check…

Server Setup Information

  • Version of Rocket.Chat Server:
  • Operating System: Linux
  • Deployment Method:
  • Number of Running Instances:
  • DB Replicaset Oplog:
  • NodeJS Version:
  • MongoDB Version:
  • Proxy:
  • Firewalls involved:

Any additional Information

Script:
class Script {
prepare_outgoing_request({ request, url }) {
const payload = {
token: request.token || “TOKEN”,
bot: request.bot || false,
channel_id: request.channel_id || “CHANNEL”,
channel_name: request.channel_name || “channel”,
message_id: request.message_id || “MSG123”,
timestamp: request.timestamp || new Date().toISOString(),
user_id: request.user_id || “USER123”,
user_name: request.user_name || “user”,
text: request.text || “”,
siteUrl: request.siteUrl || {LINK…}s…
};
console.log(‘Sending payload:’, JSON.stringify(payload));
return {
url: url,
method: “POST”,
headers: { “Content-Type”: “application/json” },
data: payload
};
}
}

Logs

?

Information required

Also if you have long logs use something like pastebin.

They just clutter the post & cause endless annoying scrolling (I read a lot of stuff on mobile).

Licence type eg CE/Starter/Pro : STARTER
Number of users: 2
Server hardware: VPS
Version of Rocket.Chat Server: 7.8.1
Operating System: Ubuntu
Deployment Method: docker
Number of Running Instances:
DB Replicaset Oplog: ?
NodeJS Version:
MongoDB Version: 6.0

See post and link below for logs.

Use pastebin, and paste a link, not the log itself.

Eg.

Having had a read I’d go back to basics and use things exactly as per this page

Don’t try adding text files which you seem to be doing ?

[{“_id”:“FILE789”,“name”:“test.txt”,“type”:“text/plain”,“size”:5,“format”:“”}],“attachments”:

I think that is meant to be just text? Yup - it possibly could be a file, but KISS.

I also see that this appear to show you are posting to another local IP? But you also get a 200 code?

{“level”:35,“time”:“2025-07-20T05:10:05.440Z”,“pid”:1,“hostname”:“CONTAINER123”,“name”:“API”,“method”:“POST”,“url”:“{LINK…}://localhost/api/v1/rooms.mediaConfirm/CHANNEL/FILE789”,“userId”:“USER123”,“userAgent”:“Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0”,“length”:“35”,“host”:“example-com”,“referer”:“{LINK…}s…example-com/channel/channel”,“remoteIP”:“192.168.1.1”,“status”:200,“responseTime”:161}

Is this another local container or a remote host?

I’d suggest keeping it as absolutely simple as possible to start. As few parameters as possible.

Your remote server should tell you if you get a connection and what is happening.

You might want to tell us a bit more about your setup, remote hosts etc. Clearly we don’t have the full picture here.

(I am no guru so trying to pick through the basics)