<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: OAuth scopes issue while setting up my public app in APIs &amp; Integrations</title>
    <link>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1192407#M83967</link>
    <description>&lt;P&gt;Hi &lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/537570"&gt;@RubenBurdin&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;I want to make sure I’ve understood the split between &lt;STRONG&gt;public&lt;/STRONG&gt; and &lt;STRONG&gt;private&lt;/STRONG&gt; apps correctly, and check if my approach makes sense, based on what is currently possible in HubSpot:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Public app →&lt;/STRONG&gt; client installs via OAuth link. This should handle everything that &lt;EM&gt;is supported in public apps today&lt;/EM&gt;, namely:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Creating properties for standard objects (contacts, companies, deals) — e.g. our “8 custom properties” that we add in every client portal.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating and managing records (contacts, companies, deals).&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating lists and list memberships.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating views.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating tasks.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating email templates.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating meetings.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;That way, I can push out a consistent “standard manifest” across all client portals via the public app.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Private app →&lt;/STRONG&gt; since pipelines and custom objects/schemas aren’t available to public apps yet, I’d handle those per client using a private app. That would cover:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Creating pipelines and pipeline stages.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating pipeline popups.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating custom objects and schemas.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;My current thinking for the workflow is:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;Client installs the public app first.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;For the &lt;STRONG&gt;custom schema step&lt;/STRONG&gt; (pipelines, pipeline popups, custom objects), either:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Client invites me temporarily as Super Admin (no paid seat needed), or&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Client generates a one-time private app token with minimal scopes, pastes it into my setup screen, I provision the custom schemas, and they revoke it after.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;That way, clients never have to code or configure APIs themselves, but I can still apply our&lt;I&gt;&amp;nbsp;&lt;/I&gt;full&amp;nbsp;standard setup.&lt;/P&gt;</description>
    <pubDate>Sat, 23 Aug 2025 13:18:05 GMT</pubDate>
    <dc:creator>PBallerscheff</dc:creator>
    <dc:date>2025-08-23T13:18:05Z</dc:date>
    <item>
      <title>OAuth scopes issue while setting up my public app</title>
      <link>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1190796#M83866</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;I’m running into an OAuth scopes issue while setting up my public app, and I could use some guidance.&lt;/P&gt;&lt;P&gt;Here are the details:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Scopes added in my HubSpot public app:&lt;BR /&gt;&lt;A class="" href="https://www.loom.com/i/3d2b35f4296741a8886af73bb9d73468" target="_new" rel="noopener"&gt;https://www.loom.com/i/3d2b35f4296741a8886af73bb9d73468&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Scopes defined in my code (SCOPES list):&lt;BR /&gt;&lt;A class="" href="https://www.loom.com/i/25f8beed8e234e98ab9eb89c79000ce0" target="_new" rel="noopener"&gt;https://www.loom.com/i/25f8beed8e234e98ab9eb89c79000ce0&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Hosting &amp;amp; Redirect URL:&lt;BR /&gt;Hosted on Render → &lt;A class="" href="https://hubspot-einrichtung.onrender.com/" target="_new" rel="noopener"&gt;https://hubspot-einrichtung.onrender.com/&lt;BR /&gt;Redirect URI: &lt;/A&gt;&lt;A class="" href="https://hubspot-einrichtung.onrender.com/oauth/callback" target="_new" rel="noopener"&gt;https://hubspot-einrichtung.onrender.com/oauth/callback&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Error when testing installation in my developer’s test account:&lt;BR /&gt;&lt;A class="" href="https://www.loom.com/i/92ad817c8fa647cab86663e286c85dbf" target="_new" rel="noopener"&gt;https://www.loom.com/i/92ad817c8fa647cab86663e286c85dbf&lt;BR /&gt;(&lt;EM&gt;“Die Autorisierung ist fehlgeschlagen, weil die angegebenen Bereiche nicht ausreichend sind.”)&lt;/EM&gt;&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;My user setup:&lt;BR /&gt;Super Admin&lt;BR /&gt;Sales Enterprise Trial + Service Enterprise Trial&lt;BR /&gt;&lt;A class="" href="https://www.loom.com/i/0ef0b7bb8a5546c6882188b652b0cf32" target="_new" rel="noopener"&gt;https://www.loom.com/i/0ef0b7bb8a5546c6882188b652b0cf32&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;HR /&gt;&lt;H3&gt;My Goal&lt;/H3&gt;&lt;P&gt;I want to create a &lt;STRONG&gt;public app that helps us set up client HubSpot accounts according to our schema more quickly. That means:&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Creating &lt;STRONG&gt;deals, contacts, companies, lists&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Defining and editing &lt;STRONG&gt;custom properties and objects&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Eventually managing &lt;STRONG&gt;deal stages/pipelines via API&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Later connecting all data to &lt;STRONG&gt;Supabase for persistence&lt;/STRONG&gt;&lt;/P&gt;&lt;HR /&gt;&lt;H3&gt;The Issue&lt;/H3&gt;&lt;P&gt;Even though I have aligned the scopes in both the HubSpot developer app and my code, the install still fails with the &lt;EM&gt;“scopes not sufficient” error.&lt;/EM&gt;&lt;/P&gt;&lt;HR /&gt;&lt;H3&gt;My Questions&lt;/H3&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;Do my current scopes cover everything needed for my use case (objects, custom schemas, lists, etc.)?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Which additional scopes are required for &lt;STRONG&gt;deal stages and pipeline management?&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Is there a way to debug whether the &lt;STRONG&gt;test account itself lacks access to the requested scopes, even with Super Admin + Enterprise Trial?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Any help or guidance would be hugely appreciated &lt;span class="lia-unicode-emoji" title=":folded_hands:"&gt;🙏&lt;/span&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Wed, 20 Aug 2025 06:11:05 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1190796#M83866</guid>
      <dc:creator>PBallerscheff</dc:creator>
      <dc:date>2025-08-20T06:11:05Z</dc:date>
    </item>
    <item>
      <title>Re: OAuth scopes issue while setting up my public app</title>
      <link>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1191144#M83884</link>
      <description>&lt;P&gt;Hey, &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/980720"&gt;@PBallerscheff&lt;/a&gt;&lt;/SPAN&gt; &lt;span class="lia-unicode-emoji" title=":waving_hand:"&gt;👋&lt;/span&gt; One quick quesiton, in your Public App scopes, can you select the `crm.schemas.custom.write` scope? — Jaycee&lt;/P&gt;</description>
      <pubDate>Wed, 20 Aug 2025 17:34:23 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1191144#M83884</guid>
      <dc:creator>Jaycee_Lewis</dc:creator>
      <dc:date>2025-08-20T17:34:23Z</dc:date>
    </item>
    <item>
      <title>Re: OAuth scopes issue while setting up my public app</title>
      <link>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1191345#M83895</link>
      <description>&lt;P&gt;Hi Jaycee! I am not able to select that option.&lt;BR /&gt;&lt;BR /&gt;&lt;A href="https://www.loom.com/i/d10ccf7336a7407caf0453a2cf103ed1" target="_blank"&gt;https://www.loom.com/i/d10ccf7336a7407caf0453a2cf103ed1&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;What do I need to do in order for that to be an option?&lt;/P&gt;</description>
      <pubDate>Thu, 21 Aug 2025 06:09:18 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1191345#M83895</guid>
      <dc:creator>PBallerscheff</dc:creator>
      <dc:date>2025-08-21T06:09:18Z</dc:date>
    </item>
    <item>
      <title>Re: OAuth scopes issue while setting up my public app</title>
      <link>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1192272#M83951</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/980720"&gt;@PBallerscheff&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;First thing: the “scopes not sufficient” error usually means the scopes your app is asking for in the URL don’t exactly match what you’ve enabled in the App settings.&lt;/P&gt;
&lt;P&gt;Even a small mismatch (extra space, missing scope) can trigger that. HubSpot’s doc on scopes is useful here: (&lt;A href="https://developers.hubspot.com/docs/guides/apps/authentication/scopes" target="_blank"&gt;https://developers.hubspot.com/docs/guides/apps/authentication/scopes&lt;/A&gt; )&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For pipelines and deal stages, you’ll need crm.objects.deals.write plus crm.objects.schemas.write to manage pipeline definitions. The tricky part is that some scopes, like crm.schemas.custom.write, only show up for private apps today&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;They’re not yet available for public apps, which explains why you couldn’t select it. HubSpot confirms this here: (&lt;A href="https://developers.hubspot.com/docs/guides/apps/authentication/oauth-quickstart-guide" target="_blank"&gt;https://developers.hubspot.com/docs/guides/apps/authentication/oauth-quickstart-guide&lt;/A&gt; )&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;To debug, install the app again but capture the full URL you’re redirected to. Check the scope= parameter against your developer app’s selected scopes. If the requested scope isn’t toggled in the developer UI, HubSpot will block the install even if your test account is Enterprise + Super Adminn&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Practically, your current set should let you create deals, contacts, companies, and lists. But schema edits for custom objects are the sticking point you may need to test those via a private app until HubSpot exposes the scope for public ones.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And as a side note, since you mentioned connecting Supabase later: some teams sidestep these scope headaches by using a sync platform that handles OAuth, tokens, and retries in the background. Something like Stacksync keeps HubSpot and Supabase aligned in real-time without managing scopes manually.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope this helps.&lt;/P&gt;</description>
      <pubDate>Fri, 22 Aug 2025 21:19:34 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1192272#M83951</guid>
      <dc:creator>RubenBurdin</dc:creator>
      <dc:date>2025-08-22T21:19:34Z</dc:date>
    </item>
    <item>
      <title>Re: OAuth scopes issue while setting up my public app</title>
      <link>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1192407#M83967</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/537570"&gt;@RubenBurdin&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;I want to make sure I’ve understood the split between &lt;STRONG&gt;public&lt;/STRONG&gt; and &lt;STRONG&gt;private&lt;/STRONG&gt; apps correctly, and check if my approach makes sense, based on what is currently possible in HubSpot:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Public app →&lt;/STRONG&gt; client installs via OAuth link. This should handle everything that &lt;EM&gt;is supported in public apps today&lt;/EM&gt;, namely:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Creating properties for standard objects (contacts, companies, deals) — e.g. our “8 custom properties” that we add in every client portal.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating and managing records (contacts, companies, deals).&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating lists and list memberships.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating views.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating tasks.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating email templates.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating meetings.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;That way, I can push out a consistent “standard manifest” across all client portals via the public app.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Private app →&lt;/STRONG&gt; since pipelines and custom objects/schemas aren’t available to public apps yet, I’d handle those per client using a private app. That would cover:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Creating pipelines and pipeline stages.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating pipeline popups.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Creating custom objects and schemas.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;My current thinking for the workflow is:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;Client installs the public app first.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;For the &lt;STRONG&gt;custom schema step&lt;/STRONG&gt; (pipelines, pipeline popups, custom objects), either:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Client invites me temporarily as Super Admin (no paid seat needed), or&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Client generates a one-time private app token with minimal scopes, pastes it into my setup screen, I provision the custom schemas, and they revoke it after.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;That way, clients never have to code or configure APIs themselves, but I can still apply our&lt;I&gt;&amp;nbsp;&lt;/I&gt;full&amp;nbsp;standard setup.&lt;/P&gt;</description>
      <pubDate>Sat, 23 Aug 2025 13:18:05 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/APIs-Integrations/OAuth-scopes-issue-while-setting-up-my-public-app/m-p/1192407#M83967</guid>
      <dc:creator>PBallerscheff</dc:creator>
      <dc:date>2025-08-23T13:18:05Z</dc:date>
    </item>
  </channel>
</rss>

