Everything you need to know about exporting and importing GoHighLevel workflows with Porter.
.porter.json file downloads to your computerExports are non-destructive — your workflow is unchanged. You can export as many times as you like.
{{REPLACE_WITH_YOUR_SECRET}}{{REPLACE_WITH_YOUR_URL}}This means exported workflows are safe to share without leaking credentials.
.porter.json fileSome things may need manual attention after import:
Imported workflows start in draft state. Publish manually when you've reviewed everything.
This means Porter's content script hasn't loaded on the current page. This usually happens the first time you use Porter after installing it. Simply refresh the GHL page (F5 or Cmd+R) and click the Porter icon again.
Porter uses your existing GHL session to communicate with GoHighLevel's API. If you see this error, your session may have expired or Porter hasn't observed any GHL API traffic yet.
Fix: Refresh the GHL page and interact with it briefly (e.g. click around in the workflow builder), then try again. If the problem persists, log out of GHL and log back in.
Errors like "Failed to fetch workflow: 401" or "403" usually mean your GHL session has expired. Refresh the page and try again. If you get a 500 error, GHL's servers may be temporarily unavailable — wait a moment and retry.
Trigger creation uses a separate API endpoint and can occasionally fail even when the workflow actions import successfully. If triggers fail, you'll need to recreate them manually in the GHL workflow builder. The success message will tell you how many triggers succeeded and how many need manual setup.
The workflow actions and logic are imported faithfully, but GHL's visual layout is generated automatically and may arrange nodes differently. The functionality is identical — only the visual positioning may differ. Try clicking "Format" in GHL's workflow builder to tidy up the layout.
Porter detects workflows by reading the page URL. Make sure you're in the workflow builder (the visual editor), not the workflow list or settings page. The URL should contain /workflow/ followed by the workflow ID.
Porter is a Chrome extension that communicates directly with GoHighLevel's own REST API — the same API that the GHL workflow builder itself uses when you view or save a workflow.
Porter uses your existing GHL session. When you're logged into GHL, your browser sends a session token with every API request. Porter reads this token (read-only — it never modifies requests) and uses it to make the same API calls the workflow builder makes. Your credentials are never stored on disk.
Exported files use the .porter.json extension. They contain the workflow's actions, triggers, settings, and metadata in a portable format. Secrets and webhook URLs are automatically stripped and replaced with placeholder values.
Email us at steven@greymatter.solutions and we'll get back to you as soon as possible.