Skype consumer shut down on May 5, 2025 — integrations targeting personal Skype accounts no longer work. For most Bubble builders, the practical path is using skype: URI deep links (zero credentials, any Bubble plan) for click-to-call and click-to-chat buttons. The enterprise Bot Framework path requires Azure App Registration, a client_credentials OAuth token, and a scheduled token refresh — and now primarily targets Skype for Business on-premises, a rare scenario. Microsoft Teams is the recommended migration.
| Fact | Value |
|---|---|
| Tool | Skype |
| Category | Communication |
| Method | Bubble API Connector |
| Difficulty | Intermediate |
| Time required | 30 minutes (deep links) or 3 hours (Bot Framework) |
| Last updated | July 2026 |
Skype Is Largely Shut Down — Here Is What Still Works
If you found this page searching for how to integrate Bubble with Skype, the first thing you need to know is that Microsoft shut down the consumer version of Skype on May 5, 2025. All consumer Skype accounts (personal accounts used for video calls, messaging, and screen sharing) were migrated to Microsoft Teams Free or deactivated. Any integration targeting consumer Skype accounts — sending messages, making calls programmatically — no longer works.
Skype for Business Online (the Microsoft 365 hosted version) also reached end-of-life on July 31, 2021. Microsoft migrated Skype for Business Online users to Microsoft Teams at that time. The only remaining 'Skype for Business' deployment that still exists is Skype for Business Server — an on-premises enterprise installation that some large organizations continue to operate. This is a rare, specialized enterprise scenario.
So what actually works today for Bubble builders who see 'Skype integration' in their requirements?
Path 1 — Deep Links (any Bubble plan, zero credentials): The skype: URI scheme still works on devices that have Skype for Business Client or the old Skype desktop app installed. A link like skype:username?call opens the client and initiates a call. This is useful for 'Contact us on Skype' buttons on company websites where you know your users or team have the app installed. No API credentials needed — just a URL in a Bubble link or workflow.
Path 2 — Bot Framework (enterprise only): If your client has an on-premises Skype for Business Server deployment and wants a bot integration, this uses the Microsoft Bot Framework REST API with an Azure App Registration. The token setup is similar to Microsoft Teams integration and requires a scheduled Backend Workflow for token refresh. Given how rare this scenario is, most Bubble builders should redirect this requirement to Teams.
Path 3 — Migrate to Teams: Microsoft Teams is the recommended successor to Skype. It uses the same Azure OAuth infrastructure, has a far richer API (Graph API + Bot Framework), supports bots, channels, meetings, and file sharing, and has tens of millions of active enterprise users. The Bubble Teams integration is more complex to set up than Skype deep links, but it is a live platform with active API support.
Integration method
Two paths: (1) skype: URI deep links — zero credentials, any Bubble plan, click-to-call/chat buttons. (2) Microsoft Bot Framework API Connector with Azure OAuth token — enterprise Skype for Business only, requires paid Bubble plan for token refresh Backend Workflow.
Prerequisites
- Clarity on which 'Skype' is meant: consumer Skype (shut down May 2025), Skype for Business Online (end-of-life July 2021), or Skype for Business Server on-premises (still operational, enterprise only)
- For deep links: any Bubble plan — no credentials required
- For Bot Framework: an Azure account at portal.azure.com with permission to register App Registrations
- For Bot Framework: an Azure Bot Service set up with the Skype for Business channel enabled — requires access to a live Skype for Business Server deployment
- The API Connector plugin by Bubble installed if using the Bot Framework path (Plugins tab → Add plugins → search 'API Connector')
- A Bubble app on Starter plan ($32/month) or higher for the Bot Framework token refresh Backend Workflow
Step-by-step guide
Assess Which Skype Path Applies to Your Project
Before building anything in Bubble, determine which Skype scenario you are actually dealing with. This step can save hours of wasted setup. Ask these questions: 1. Is this for consumer Skype (personal accounts, free video calls)? If yes — this integration is no longer possible. Consumer Skype shut down May 5, 2025. There is no API, no active user accounts to message, and no programmatic integration path. The recommendation is to use Microsoft Teams (the official Microsoft successor) or another platform (Zoom, Google Meet, Webex) depending on the use-case. 2. Is this for 'Skype for Business Online' (the Microsoft 365 cloud version)? If yes — this also shut down, on July 31, 2021. Users were migrated to Microsoft Teams. The integration recommendation is Microsoft Teams via Graph API. 3. Is this for Skype for Business Server on-premises (a self-hosted enterprise deployment)? If yes — this is still operational and the Bot Framework path applies. This is rare: typically large enterprises in regulated industries (government, finance, healthcare) that have not migrated to Teams. Confirm with the client's IT team that they are running an on-premises Skype for Business Server before proceeding. 4. Is the use-case just 'open Skype on click' (a contact button)? If yes — use deep links (Step 2). No credentials or API needed. For the majority of Bubble builders, the answer is either 'use Teams instead' or 'use deep links for basic contact buttons'. Only proceed to the Bot Framework steps if you have confirmed an active Skype for Business Server deployment.
Pro tip: If your client or stakeholder says 'we use Skype', ask specifically: 'Is this the free Skype app (blue S icon) or Skype for Business (part of Microsoft Office)?' and 'Are you actively using it right now, and can you receive calls on it?' Consumer Skype users have been redirected to Teams since May 2025 — they may be using Teams without realizing it.
Expected result: You have confirmed which Skype scenario applies. Most builders will skip to Step 2 (deep links) or pivot to the Microsoft Teams integration page instead.
Add Skype Deep Link Buttons (The Quick-Win Path)
For click-to-call or click-to-chat functionality, the skype: URI scheme works on any device that has a Skype client installed — Skype for Business desktop client on Windows/Mac, or any remaining Skype desktop app installations on older systems. The URI format is: - Click-to-call: skype:username?call - Click-to-chat: skype:username?chat - Video call: skype:username?call&video=true Replace 'username' with the actual Skype username or Skype ID of the person you want to reach. In Bubble, implement this in two ways: Option A — Link element: Select a Link element on your page. In the Destination field, choose 'External URL'. Type the skype: URI directly: skype:support.agent?chat. Style it as a button using Bubble's visual editor. Option B — Workflow action: Add a button element. In its workflow, add the action 'Go to external website' (found under 'Navigation'). Set the URL to the skype: URI. If the URL should be dynamic (different agent per context), use a text expression that builds the URI: 'skype:' + Input username's value + '?chat'. Note: This opens the Skype application on the user's device. On mobile, it opens the Skype mobile app if installed. On desktop, it opens the Skype desktop app. If Skype is not installed, most browsers show a dialog asking if the user wants to look for an app to handle the link. There is no fallback within the browser — if you need a web-based alternative, display a regular contact form or redirect to Teams.
1{2 "skype_uri_examples": {3 "click_to_call": "skype:username?call",4 "click_to_chat": "skype:username?chat",5 "video_call": "skype:username?call&video=true",6 "call_phone_number": "skype:+12125551234?call"7 },8 "bubble_implementation": {9 "link_element_destination": "External URL",10 "url_value": "skype:<username>?chat"11 }12}Pro tip: If your support agent's Skype username might change, store it as an App Option (App data → Options sets) rather than hardcoding it in the URL. This lets you update the contact username without modifying the workflow.
Expected result: Clicking the Skype button on a device with Skype for Business Client installed opens the client and initiates the action. On devices without a Skype client, a browser dialog appears. No Bubble credentials or API configuration needed.
Register an Azure App for Bot Framework (Enterprise Skype for Business Only)
This step applies only if you have confirmed an active Skype for Business Server on-premises deployment. If not, skip to Step 5 or use the Microsoft Teams integration instead. Open the Azure portal at portal.azure.com and navigate to 'Azure Active Directory' → 'App registrations' → 'New registration'. Name the application (e.g., 'Bubble Skype Bot'), select 'Accounts in this organizational directory only', and leave the Redirect URI blank for the client_credentials flow. Click Register. After registration, note the Application (client) ID and Directory (tenant) ID from the app overview page. Navigate to 'Certificates & secrets' → 'New client secret'. Add a description, select an expiry, and click Add. Copy the secret Value immediately — it is shown only once. Now navigate to 'Azure Bot Services' in the Azure portal (search for 'Azure Bot' in the top search bar). Create a new Azure Bot: select your subscription, resource group, and enter a bot handle. For 'Microsoft App ID', use the app you just registered. Under 'Channels', add the 'Skype for Business' channel and configure it with your on-premises Skype for Business Server's connection details (provided by your organization's IT team). Note the Bot Framework endpoint assigned to your bot — this is the base URL for the Bot Connector API calls. The token endpoint for client_credentials flow is: https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token This token endpoint is specific to Bot Framework service accounts — it differs from standard Azure AD tenant token endpoints.
Pro tip: RapidDev has configured Bot Framework integrations for enterprise clients with on-premises Skype for Business deployments. This setup requires close coordination with the client's IT team for the Skype for Business Server connection parameters. If you hit roadblocks with the channel configuration, a free scoping call at rapidevelopers.com/contact can help — this is not a standard API setup.
Expected result: An Azure App Registration exists with client_id and client_secret. An Azure Bot Service is created with the Skype for Business channel configured. You have the bot's token endpoint URL and the scope for Bot Framework API access.
Add API Connector Calls for Bot Framework Token and Message Send
In your Bubble app, open Plugins → API Connector. Click 'Add another API' and name it 'Bot Framework Auth'. Add a call named 'Get Bearer Token'. Method: POST, URL: https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token. Use as: Action. Body parameters: - grant_type: client_credentials (static) - client_id: your Azure App client ID (static or dynamic) - client_secret: [client_secret] — dynamic, mark as Private - scope: https://api.botframework.com/.default (static) For Initialize: provide your real client_id and client_secret. A successful response returns access_token and expires_in (3600 seconds). Detect the access_token field. Add a second API group named 'Bot Connector'. Add a shared header: Authorization: Bearer [access_token] — mark as Private and Dynamic (the token value will be injected at runtime). Add a call named 'Send Message'. Method: POST. URL: https://smba.trafficmanager.net/apis/v3/conversations/[conversation_id]/activities. Use as: Action. Body: { 'type': 'message', 'text': '[message_text]' } The conversation_id is the critical piece: in Bot Framework, you can only send proactive messages to users who have previously interacted with the bot (initiated a conversation). The conversation_id is obtained from the bot receiving an initial message from the user. You cannot proactively message an arbitrary Skype for Business user without first having a conversation ID for them. For Initialize on Send Message: you need a real conversation_id from an actual bot interaction. This makes initialization dependent on having a working Skype for Business Server connection and a user who has messaged the bot. If you are in early setup, skip initialization and manually define the expected response fields.
1{2 "token_call": {3 "method": "POST",4 "url": "https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token",5 "body": {6 "grant_type": "client_credentials",7 "client_id": "<azure_app_client_id>",8 "client_secret": "<client_secret -- PRIVATE>",9 "scope": "https://api.botframework.com/.default"10 }11 },12 "send_message_call": {13 "method": "POST",14 "url": "https://smba.trafficmanager.net/apis/v3/conversations/[conversation_id]/activities",15 "headers": {16 "Authorization": "Bearer [access_token -- PRIVATE]"17 },18 "body": {19 "type": "message",20 "text": "[message_text -- dynamic]"21 }22 }23}Pro tip: The Bot Framework token endpoint uses 'botframework.com' as the tenant ID in the URL — this is intentional and different from your Azure tenant ID. Do not replace it with your actual tenant ID or the token request will fail with an invalid tenant error.
Expected result: Two API groups configured: 'Bot Framework Auth' with the token fetch call (returning access_token on initialization), and 'Bot Connector' with the Send Message call. The client_secret is marked Private.
Build the Token Refresh Backend Workflow
Bot Framework Bearer tokens expire every 3,600 seconds. Without a refresh mechanism, your integration stops working after an hour. Build a scheduled Backend Workflow to refresh the token before expiry. First, enable Backend Workflows: Settings → API → enable 'This app exposes a Workflow API'. This requires Bubble Starter plan ($32/month) or higher. Create a Bubble data type named 'BotToken' with fields: access_token (text), expires_at (date). Create a Backend Workflow named 'refresh-bot-token'. Steps: 1. Search for BotToken records where expires_at is less than 'Current date/time + 10 minutes'. If found, skip the token fetch (token still valid for more than 10 minutes). If not found or expired, proceed. 2. Call the 'Get Bearer Token' API action. 3. Delete all existing BotToken records (there should only be one). 4. Create a new BotToken record: access_token = API result's access_token, expires_at = Current date/time + 3550 seconds. Schedule this workflow to run every 50 minutes using 'Schedule a recurring event'. When triggering the Send Message workflow, first fetch the BotToken record to get the current access_token, then pass it as the Authorization header parameter in the Send Message call. This keeps the token management entirely server-side. Note: if you also need conversation_ids stored (to know which users the bot can proactively message), create a separate data type 'BotConversation' with fields user_identifier (text) and conversation_id (text). These IDs are obtained when the bot receives its first message from each user in the Skype for Business client.
Pro tip: The single-record BotToken pattern (delete all, create one) is simpler than updating an existing record in Bubble when dealing with a singleton credential. It avoids the edge case of a failed token fetch leaving a stale record that appears valid by timestamp but has an expired token value.
Expected result: The 'refresh-bot-token' Backend Workflow creates and maintains a fresh BotToken record. The scheduled recurring event fires every 50 minutes. Checking the BotToken data type in Bubble's Data tab shows a record with a future expires_at date.
Evaluate the Microsoft Teams Migration Path
If you have reached this step and are feeling uncertain about the complexity of the Skype for Business Bot Framework path — or if the client's requirements can be met by Teams — this step covers the migration evaluation. Microsoft Teams uses the same Azure OAuth infrastructure as Bot Framework but with Graph API (https://graph.microsoft.com/v1.0) for most operations. Teams has an actively maintained REST API, official Microsoft documentation, and a large developer community. The key capabilities that mirror typical Skype use-cases: - Sending messages to Teams channels: POST /teams/{teamId}/channels/{channelId}/messages - Creating Teams meetings: POST /me/onlineMeetings (returns joinUrl) - Bot messaging via Bot Framework: same architecture as above, but targeting a Teams channel instead of Skype for Business For the Bubble integration, Teams is more complex than Skype deep links but covers far more capability and is not deprecated. The auth model requires either a Bot token (similar to Webex's permanent Bot token, simpler) or Graph API OAuth (full user-level access, similar to GoToWebinar's flow). If the original requirement was 'show a contact button that opens Skype' — deep links in Step 2 address this. If the requirement was 'send automated messages to users on Skype' — Microsoft Teams is the correct target platform today. There is no consumer Skype to send messages to. For the Microsoft Teams integration details, see the related integration below. The setup there (Azure Bot registration, API Connector, channel configuration) is analogous to what you would build for Bot Framework but targets a live, fully-supported platform.
Pro tip: When communicating the Skype situation to clients, frame it proactively: 'Skype consumer shut down in May 2025 and Microsoft migrated everyone to Teams. We can build the same notification/communication features in Teams, which is actively supported and has more users. Let me show you the Teams integration path instead.' Most clients appreciate the honest context.
Expected result: You have made an informed decision: either the deep link path (Step 2) meets the requirement, the Bot Framework path (Steps 3-5) applies to a confirmed Skype for Business Server deployment, or the project is redirected to Microsoft Teams integration.
Common use cases
Click-to-Call and Click-to-Chat Deep Link Buttons
Add 'Call on Skype' or 'Chat on Skype' buttons to your Bubble app using the skype: URI scheme. When clicked on a device with Skype for Business Client installed, the button opens the client and initiates the action. Useful for internal company tools where the team is known to use Skype for Business, or legacy support contact pages that have not yet migrated to Teams.
Add a 'Contact Support on Skype' button to the Help page. When clicked, open the URL skype:supportagent.username?chat in an external window. The button should display a Skype icon and the text 'Chat on Skype' using a Link element with the URL set to the skype: URI.
Copy this prompt to try it in Bubble
Skype for Business Bot Notifications (Enterprise On-Premises)
For organizations running Skype for Business Server on-premises, build a Bubble bot that sends proactive messages to specific users using the Microsoft Bot Framework Connector API. This covers internal alerting scenarios — for example, posting a compliance notification to a specific employee's Skype for Business client when an action is taken in the Bubble app.
When an admin marks a compliance review item as 'Requires Attention' in Bubble, trigger a Backend Workflow that fetches a Bot Framework Bearer token from Azure, then posts a proactive message via the Bot Connector API to the employee's Skype for Business conversation ID, notifying them to review the item.
Copy this prompt to try it in Bubble
Redirect Legacy Skype Integration to Microsoft Teams
Evaluate whether an existing or planned Skype integration should be migrated to Microsoft Teams. Teams supports the same Bot Framework infrastructure, has an active REST API via Microsoft Graph, and serves the same enterprise user base. For most Bubble projects, a Teams integration provides all the capabilities of what was planned for Skype, with ongoing platform support.
If the use-case is sending team alerts or building a bot for enterprise communication, use the Microsoft Teams integration via Graph API instead of Skype. Teams supports posting messages to channels, creating meetings, managing memberships, and receiving webhook events — all available via Microsoft Graph API from Bubble's API Connector.
Copy this prompt to try it in Bubble
Troubleshooting
Skype deep links (skype:username?call) do not work in the browser
Cause: The user's device does not have a Skype application installed, or consumer Skype is no longer active (shut down May 5, 2025) and the link cannot connect to an active account.
Solution: For consumer Skype accounts: these no longer exist as active accounts after May 2025. Deep links for consumer Skype will not reach anyone. For Skype for Business: the user must have the Skype for Business desktop client installed (part of Microsoft Office installations). On mobile, the Skype for Business mobile app must be installed. If neither is present, the browser shows an 'unable to open' dialog. Consider adding a fallback: display a Teams link or a contact form when the user's browser does not recognize the skype: URI scheme.
Bot Framework token request returns 400 or 401 with 'Invalid client'
Cause: The client_id or client_secret is incorrect, or the token endpoint URL uses the wrong tenant (your Azure tenant ID instead of 'botframework.com').
Solution: Verify the token endpoint URL is exactly: https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token — the tenant must be 'botframework.com', not your Azure tenant ID. Check that client_id matches the Application (client) ID from the Azure App Registration overview page. Re-copy the client_secret from Azure → App registrations → Certificates & secrets (create a new one if the existing one's Value is no longer visible).
Send Message returns 401 Unauthorized even with a freshly fetched token
Cause: The Bearer token has expired (3,600 second lifetime) or the access_token value stored in BotToken is stale.
Solution: Check the BotToken record in Bubble's Data tab — look at the expires_at field. If it is in the past, the token has expired. Manually trigger the 'refresh-bot-token' Backend Workflow to force a refresh. Then verify your Send Message workflow is fetching the current BotToken record's access_token, not a hardcoded or previously-stored value. If the refresh workflow itself is failing, check Bubble's Logs tab for the error from the token endpoint.
'Workflow API is not enabled' when trying to create Backend Workflows for token refresh
Cause: The Bubble app is on the Free plan, which does not include Backend Workflows, or the Workflow API toggle is not enabled.
Solution: Upgrade to Bubble Starter plan ($32/month) for Backend Workflow support. After upgrading, go to Settings → API and enable 'This app exposes a Workflow API'. The Backend Workflows section will then appear in the left panel. For the deep link path only, you do not need Backend Workflows — the skype: URI deep link works on the Free plan.
Bot cannot send proactive messages to a Skype for Business user who has not messaged the bot first
Cause: Bot Framework requires a conversation_id to send proactive messages, and conversation_ids can only be obtained when a user initiates a conversation with the bot. There is no way to look up a Skype for Business user's conversation_id without prior contact.
Solution: This is a fundamental Bot Framework limitation — proactive messaging to arbitrary users is not supported. Two options: (1) Design the flow so users initiate contact with the bot first (e.g., they message the bot when they install it or log in), storing the returned conversation_id in Bubble for future proactive sends. (2) Use Microsoft Teams instead, which has Graph API endpoints that allow proactive messaging with simpler user targeting via their Teams user ID.
Best practices
- Always clarify 'which Skype' at the start of any project that mentions Skype integration. Consumer Skype is gone (May 2025), Skype for Business Online is gone (July 2021), and only on-premises Skype for Business Server remains — a rare enterprise scenario. Getting this wrong costs the project significant rework time.
- For contact buttons, use the deep link path (skype:username?chat) rather than building Bot Framework infrastructure — it requires zero credentials, works on any Bubble plan, and takes 5 minutes to implement. Reserve the Bot Framework path for genuine programmatic messaging requirements on confirmed Skype for Business Server deployments.
- For the Bot Framework path, always mark the client_secret as Private in Bubble's API Connector. The Azure client secret provides access to your Azure tenant's bot resources — exposing it would allow unauthorized parties to send messages through your bot identity.
- Store Bot Framework tokens in a Bubble data type with an expires_at field set to 50 minutes from the fetch time, and schedule the refresh Backend Workflow every 50 minutes. Do not fetch a new token on every message send — the token endpoint has its own rate limits, and unnecessary fetches waste Bubble WU and add latency.
- For new projects where Skype communication is a requirement, present Microsoft Teams as the recommended platform before beginning Skype integration work. Teams has the same enterprise audience, a live API, Microsoft support, and far more active development. Proposing Teams upfront positions you as a strategic advisor rather than just an implementer.
- If implementing deep links, test them on the specific devices your users will use. skype: URIs behave differently on iOS (requires Skype app installed), Android (same), Windows (requires Skype for Business client or desktop app), and Mac. Do not assume the link works everywhere — document which platforms it is tested on.
- Set privacy rules in Bubble's Data tab on any data type that stores Bot Framework tokens or conversation IDs. These values provide access to your bot's messaging capabilities — the 'Everyone else can see' option should be off on these types, accessible only by Backend Workflows with server-side privileges.
- Monitor the Bot Framework token refresh in Bubble's Logs tab weekly during the first month after deployment. A failed refresh that goes unnoticed results in all bot messages failing silently when the token expires. Set up a simple alert: if BotToken's expires_at is more than 2 hours in the past, send yourself an email notification.
Alternatives
Teams is Microsoft's recommended replacement for Skype — same Azure OAuth infrastructure but with a live, actively-supported API, Graph API for user-level operations, and tens of millions of enterprise users. For any project that was targeting Skype for messaging or bot features, Teams is the correct migration path.
Zoom serves the video conferencing use-case that many builders associate with Skype. A Zeroqode plugin for Bubble simplifies Zoom meeting creation and scheduling. For consumer-facing video call scheduling (not enterprise messaging), Zoom is more practical than trying to use remaining Skype infrastructure.
Webex is an enterprise communication platform with a permanent Bot token (no OAuth flow), active API support, and a similar Space-based messaging model to Skype for Business. For enterprise clients who need a Skype-like messaging bot without Microsoft's ecosystem, Webex is simpler to integrate with Bubble than the Bot Framework path.
Frequently asked questions
Can I still integrate Bubble with Skype after the May 2025 shutdown?
Partially. Consumer Skype (personal accounts) is completely shut down — no integration is possible for that user base. The skype: URI deep link scheme still works on devices with Skype for Business client or legacy Skype desktop app installed. The Microsoft Bot Framework path works for enterprise Skype for Business Server on-premises deployments, which are rare. For most Bubble projects, the answer is to use Microsoft Teams instead.
What happened to Skype accounts when consumer Skype shut down?
Microsoft migrated consumer Skype users to Microsoft Teams Free accounts in May 2025. Users who had Skype contacts were offered a Teams account with those contacts imported. Some users' message history was exported. New Skype accounts can no longer be created. The Skype.com domain now redirects to Microsoft Teams downloads. For Bubble integration purposes, the target audience is no longer reachable via Skype's API.
What is the easiest way to add a Skype contact button to Bubble?
Use a Link element or 'Go to external website' workflow action with the skype: URI scheme: skype:username?call for click-to-call or skype:username?chat for click-to-chat. This works on any Bubble plan, requires no credentials or API configuration, and opens the Skype for Business client on the user's device if installed. This is the appropriate implementation for a 'Contact us on Skype' button for enterprise support teams.
Should I migrate a planned Skype integration to Microsoft Teams?
For most new projects: yes. If the use-case involves sending automated messages to users, building a notification bot, or scheduling communication sessions, Microsoft Teams offers the same enterprise audience with an actively supported API. If the use-case is just a 'call us on Skype' button for an existing team that uses Skype for Business Server, the deep link path covers it without migration. Assess based on the end users' actual platform and the depth of API functionality needed.
Does the Bot Framework Skype integration require a paid Bubble plan?
For the outbound message sending only (calling the Bot Connector API from a workflow action): you can use the Free plan if the trigger is client-side. For the required token refresh (Bearer tokens expire every hour), a Backend Workflow is needed — this requires Bubble Starter plan ($32/month) or higher. Without the token refresh, the integration will stop working after one hour. The deep link path (skype: URIs) works on any Bubble plan and requires no credentials.
Can Bubble send messages to any Skype for Business user proactively?
No. Bot Framework requires a conversation_id that can only be obtained when a user first messages your bot. You cannot proactively reach an arbitrary Skype for Business user just by knowing their username or email — they must initiate contact with the bot first, and your system stores the resulting conversation_id for future proactive sends. This is a Bot Framework architectural constraint, not a Bubble limitation.
Talk to an Expert
Our team has built 600+ apps. Get personalized help with your project.
Book a free consultation