Automations

API Access to Workflow Execution Logs, Audit Logs, and Error Events (James Hurst)
## The Ask Expose workflow execution logs, audit logs, and workflow error events through the public REST API (PIT-authenticated). Currently these are UI-only — no programmatic access exists. ### Specific endpoints requested: GET /workflows/{workflowId}/executions — List execution history with filters (status: active/completed/failed, contactId, dateRange, pagination) GET /audit/search — Query audit log entries by module, action type, date range, and user Webhook event: workflow.action.failed — Real-time webhook trigger when any workflow action fails, including: workflow name/ID, action step name, contact ID, error message, timestamp ## Why This Matters Agency operators managing multiple sub-accounts have no way to programmatically monitor workflow health. We are forced to manually click into each workflow, check the Execution Logs tab, and visually scan for red error highlights. That does not scale. Here is what we would build with API access: Automated error alerting — A script that checks for failed workflow actions across all sub-accounts every hour and sends a Slack/SMS alert: "Workflow Contact Us Form failed on step Send Welcome Email for contact John Smith at 2:15 PM. Error: invalid email address." Cross-workflow health dashboards — Aggregate execution stats (success rate, failure rate, avg completion time) across all workflows in a location. Right now you can only see one workflow at a time in the UI. Audit trail integrations — Pipe audit log data into external compliance/logging systems (Datadog, Supabase, custom dashboards). The 60-day retention limit in the UI means audit data is permanently lost after 2 months — API access would let agencies archive it. Proactive CRM monitoring — Detect when a workflow silently fails (e.g., a welcome email never sent, a tag never applied) before the customer notices. Right now errors go undetected unless someone happens to check. ## Current Workarounds (and why they fall short) Email error notifications — GHL sends error emails, but they are unstructured prose. Parsing emails for monitoring is fragile and slow. Adding webhook steps to every error branch — Works but requires manually editing every workflow step. For an account with 20+ workflows and 100+ action steps, this is days of work and creates maintenance overhead. ## The Opportunity Unlock a new category of monitoring/observability marketplace apps Differentiate HighLevel for agencies managing 10+ sub-accounts at scale Reduce support tickets from "my workflow broke and I did not know for 3 days" Enable the same programmatic access pattern that already exists for contacts, conversations, and pipelines Let agencies archive audit data beyond the 60-day UI retention window ## Related Requests "In Depth Audit Logs" (ideas board — Reporting category) "Audit Logs — Custom Fields" (ideas board — CRM category) This would be a game-changer for any agency running automations at scale.
0
·
Bug
Edit/update existing Stored Secret Keys for "Custom Webhook" workflow action
This is absolutely essential for any long term use of the custom webhook action in GHL workflows. I don't build new workflows in GHL because of this missing feature. If for example i have 10 workflows that use this custom webhook action I will most likely have 30+ different custom webhook actions across all of them. The purpose of saving secret keys to GHL is to be able to reuse them easily, keep them private and secure, and to easily update them all at once if a key/token needs to be rotated or expires. In it's current state, when I rotate API keys i have to go into every single workflow and make sure I manually find every single action that uses the old key and update each one hoping that I don't miss any. Today the only management of these keys is the ability to add a new key or delete an old key. I replaced GHL workflows with a different software that allows me to do this and I build all of my workflows there. If for example the other software (n8n) behaved the same way as GHL does with key management, every time that I rotated a key (expired, key compromised, enforced key rotation policy, etc.) I would have to go in and manually update 73 different workflow actions one by one. This key rotation process would only get worse with every additional workflow that I build. GHL UI workflows are not useable or sustainable for large scale growth and integration with APIs and custom webhooks in their current state
0
·
Bug
{{appointment.start_time}} needs time zone added
Expectation: when an appointment is booked, {{appointment.start_time}} (and other similar time-related fields) for use in workflows includes the time zone so it is clear to the client when their appointment is when they receive confirmation emails and reminder/emails and texts generated through workflows, regardless of where they happen to be physically (in the time zone where they booked the appointment, in a different time zone than where they booked the appointment (i.e., the time zone of the business), etc.). Problem: Because GHL autodetects time zone of the client when they are booking an appointment, it is causing confusion. This autodetection is using the assumption that the client will attend the appointment in the time zone in which they booked the appointment. It is not taking into account appointments that are for the physical location of the business that were booked in a different time zone. This issue has already caused problems/confusion with appointments several times. Example: Client booked an appointment with the business (which is on Central time) while they were in the Mountain time zone. They then returned to the Central time zone when the appointment was to occur, but all of the reminders that were being sent from the workflow were for Mountain time without specifying the time zone. The client appointment was supposed to be at 2:45 pm Central, but everything they were being sent said that it was 1:45 pm Central, which thus lead to confusion. If this is not fixed: this problem causes loss of revenue, confusion, and business reputation problems. This is unacceptable. Also, I realize that there are a couple of other tickets that touch on this, but the acceptance criteria is less direct.
1
·
Bug
Load More