Imported workflows not showing execution logs in self-hosted

Describe the problem/error/question

After importing workflows from a cloud-hosted n8n instance, webhook executions don’t appear (UI or DB) when the webhook is called from my own system (Whatsapp Flow). The webhook does respond (I see the response/payload come back to my system), but no execution is recorded.

If I call the exact same Production webhook URL from Postman, executions do appear in the Executions list and in the DB.
Newly created (non-imported) workflows on this instance also log executions normally.

So the discrepancy is: Postman → shows executions; my system → no executions, even though both get valid responses.

What I’ve tried

  • Per-workflow settings on the imported flows:

    • Save failed production executions = Save

    • Save successful production executions = Save

    • Save manual executions = Save

    • Save execution progress = Save (for debugging)

  • Instance env vars (Docker):

    • EXECUTIONS_DATA_SAVE_ON_SUCCESS=all

    • EXECUTIONS_DATA_SAVE_ON_ERROR=all

    • EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS=true

    • (also tried) EXECUTIONS_DATA_SAVE_ON_PROGRESS=true

  • Cleared all filters in Executions view (Mode/Status/Date = All).

  • Toggled imported workflows Inactive → Active to re-register webhooks.

  • Renamed the Webhook node Path to a unique value, saved, and re-activated.

  • “Nuke metadata” step: Select all → Copy nodes from the imported flow, Paste into a brand-new workflow, set a new unique path, Save, Activate.

  • DB checks:

    • execution_entity shows no new rows when the webhook is called by my system.

    • After a Postman call to the same Production URL, a row does appear in execution_entity.

  • Verified I’m calling the Production webhook URL (not test URL), and method matches (POST).

Any pointers on additional checks or known edge cases that would explain responses without executions only for certain clients would be appreciated.


What is the error message (if any)?

No error surfaced in n8n UI.
From my system’s perspective the webhook returns 2xx with the expected body; there’s simply no execution record created for those calls. When called from Postman, executions appear as expected.


Please share your workflow

Below is a minimal reproduction that shows the pattern on my instance. The real/imported flows are more complex, but this demonstrates the behavior.

Note: Path is a throwaway example; in my tests I also tried unique, random paths.

(If you need the full actual imported workflow, I can paste it as well, but the minimal example above reproduces the “client A logs, client B doesn’t” pattern on my side.)


Share the output returned by the last node

From both clients (Postman and my system) I see a 200 with JSON like:

{
  "source": "Imported-Webhook-Repro",
  "workflowId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
  "ok": true
}

Difference: Only Postman calls create an execution entry (UI + execution_entity).
Calls from my system return this same JSON but do not create an execution entry.


Information on your n8n setup

  • n8n version: 1.116.2

  • Database: Postgres

  • n8n EXECUTIONS_PROCESS setting (default: own/main): default

  • Running n8n via: Docker (self-hosted)

  • Operating system: Linux (Docker host)

Extra diagnostic details

  • Per-workflow settings set to Save (successful/failed/manual/progress).

  • Env vars set to force saving executions (listed above).

  • DB: execution_entity adds a row for Postman calls; no row appears for calls from my system.

  • Webhook registration: Toggled Active OFF→ON and changed Path to ensure uniqueness (still seeing the discrepancy).

  • URLs: Using Production URL; not using test URL.

  • Method: POST for all tests.