Hi HubSpot team,
I’m building a read-only public app (new developer platform, project-based, platform version 2026.09, OAuth, distribution: marketplace, required scopes: oauth, automation). App ID: 55373632.
What I see in two developer test accounts:
- Enterprise test account 149464563
- GET /automation/v4/flows returns 200 with only the flows that have NO property-editing actions (a flow with just a Delay is listed).
- Flows that contain an “Edit record” (set property) action are missing from the list. The 4 default ticket workflows are missing too.
- GET /automation/v4/flows/5027280062 returns 403: “Access denied. Flow must be accessible via external APIs and contain no sensitive properties unless appropriate sensitive data scopes are provided.” (correlationId 01a0f995-81cf-73d1-b08a-d92439486093)
- POST /automation/v4/flows/batch/read for the same ID returns 207 with FLOW_NOT_FOUND_BY_FLOW_ID.
- Same result on /automation/v4/2026-09-beta/flows and /automation/v4/2027-03-beta/flows. GET /automation/v3/workflows returns an empty list.
- Professional test account 149464751 (all hubs set to Professional)
- A new manually triggered contact workflow is listed while it is empty.
- As soon as I add one “Edit record → Job Title = A” action and turn it on (flow 5027281135), it disappears from GET /automation/v4/flows (results: ).
The properties used are standard, non-sensitive contact properties (Lifecycle stage, Lead status, Job title, Industry, City). Adding crm.objects.contacts.sensitive.read is rejected at deploy (“scope isn’t available to this app”).
Questions:
- What exactly makes a flow “accessible via external APIs”? Is there an account or workflow setting?
- Are flows with “Edit record” actions created in the current workflow editor intentionally excluded from the Workflows API for OAuth apps?
- If a sensitive-data scope is required even for non-sensitive properties, how can a marketplace app request access?
My app only needs read access to list which properties each workflow sets. Thank you!