# Scheduler Meetings

**URL:** <https://community.hubspot.com/t/scheduler-meetings/143751>\
**Category:** APIs & Integrations\
**Tags:** python\
**Created:** [December 5, 2025, 7:03pm UTC](https://community.hubspot.com/t/scheduler-meetings/143751 "2025-12-05T19:03:31Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![ZevThreadly](https://avatars.discourse-cdn.com/v4/letter/z/3ab097/32.png) [@ZevThreadly](https://community.hubspot.com/u/ZevThreadly)\
**Post date:** [December 5, 2025, 7:03pm UTC](https://community.hubspot.com/t/scheduler-meetings/143751/1 "2025-12-05T19:03:31Z")

</div>

**Background:** Threadly is an app for Slack that allows users to broadcast/blast messages to multiple channels at once, and also includes action buttons to drive users towards CTAs, forms, and more.

**Issue:** We’re working on a HubSpot integration where a user can send out a message and include an action to their calendar. The message button opens a modal where the invitee fills out their info, selects a date and time, etc.

The meeting schedule changes and availability calls work fine, however, when we try and make a POST to the booking endpoint, we get this error. Can somoene please advise? It appears from other posts in this forum that others are successful.

`{'status': 'error', 'message': "The scope needed for this API call isn't available for public use. If you have questions, contact support or post in our developer forum.", 'correlationId': 'ac9c1918-5a53-4dd4-9687-e09e4789305e', 'links': {'support': 'https://help.hubspot.com/', 'forum': 'https://community.hubspot.com/t5/APIs-Integrations/bd-p/integrations'}, 'category': 'MISSING_SCOPES'}`

The access token has the following oauth scope:

And here’s the call:

```lia-code-sample
def book_hubspot_meeting(
 slug,
 first_name,
 last_name,
 email,
 start_time,
 duration,
 timezone,
 guest_emails=None,
 locale="en-us",
 likely_available_user_ids=None,
 hubspot_access_token=None
):
 """
 Book a HubSpot meeting using the Meetings API.

 Args:
 slug (str): Meeting link slug (e.g., "menelson")
 first_name (str): First name of the attendee
 last_name (str): Last name of the attendee
 email (str): Email address of the attendee
 start_time (int): Start time in milliseconds UTC (e.g., 1726059600000)
 duration (int): Duration in milliseconds (e.g., 1800000 for 30min)
 timezone (str): Timezone string (e.g., "America/New_York")
 guest_emails (list): Additional guest emails (optional)
 locale (str): Locale, default "en-us"
 likely_available_user_ids (list): List of likely available user IDs (optional)
 hubspot_access_token (str): OAuth Access token for HubSpot. If not provided, will look for environ HUBSPOT_ACCESS_TOKEN

 Returns:
 dict: Response from HubSpot API.
 """
 if hubspot_access_token is None:
 hubspot_access_token = os.environ.get("HUBSPOT_ACCESS_TOKEN")
 if not hubspot_access_token:
 raise ValueError("Missing HubSpot Access Token.")

 url = "https://api.hubapi.com/scheduler/v3/meetings/meeting-links/book"
 headers = {
 "Authorization": f"Bearer {hubspot_access_token}",
 "Content-Type": "application/json",
 }
 params = {
 "timezone": timezone
 }

 data = {
 "slug": slug,
 "firstName": first_name,
 "lastName": last_name,
 "email": email,
 "startTime": int(start_time),
 "duration": int(duration),
 "timezone": timezone,
 "locale": locale,
 "guestEmails": guest_emails if guest_emails is not None else [],
 "likelyAvailableUserIds": likely_available_user_ids if likely_available_user_ids is not None else [],
 }

 response = requests.post(url, headers=headers, params=params, json=data)
 try:
 return response.json()
 except Exception:
 return {"error": "Failed to parse HubSpot response", "status_code": response.status_code, "text": response.text}

```

 ![163256i88F8386FA2F980F1.png](https://d2qpr2jzcazej7.cloudfront.net/original/3X/0/b/0b314d9958ab858ea53ce5b3ea85d578d87a3ec5.png)

---

<div class="post-metadata">

**Author:** ![stassey](https://d10pqhm3lwygmk.cloudfront.net/user_avatar/community.hubspot.com/stassey/32/36_2.png) [@stassey](https://community.hubspot.com/u/stassey)\
**Post date:** [December 5, 2025, 8:01pm UTC](https://community.hubspot.com/t/scheduler-meetings/143751/2 "2025-12-05T20:01:01Z")

</div>

Hi @ZevThreadly  
Welcome to the Community!

I see your receiving the error ‘The scope needed for this API call isn’t available for public use’ in your response. I found a couple of similar Community posts that you may find helpful in trouble shooting this!

- [https://community.hubspot.com/t5/APIs-Integrations/The-scope-needed-for-this-API-call-isn-t-available-for-public/m-p/905368](https://community.hubspot.com/t5/APIs-Integrations/The-scope-needed-for-this-API-call-isn-t-available-for-public/m-p/905368)
- [https://community.hubspot.com/t5/APIs-Integrations/Getting-quot-The-scope-needed-for-this-API-call-isn-t-available/m-p/995417](https://community.hubspot.com/t5/APIs-Integrations/Getting-quot-The-scope-needed-for-this-API-call-isn-t-available/m-p/995417)

I’d also like to tag in some of our Top Contributors to see if they have any tips on this -- @GRajput, @SteveHTM, @evaldas, @RubenBurdin

-- Do you have any suggestions for @ZevThreadly

Thank you!

Sam, Community Manager

##
