|
| 1 | +--- |
| 2 | +title: Bubble integration |
| 3 | +description: Learn how to integrate your Apify Actors with Bubble. This article guides you from installation through to automating your workflow in Bubble. |
| 4 | +sidebar_label: Bubble |
| 5 | +sidebar_position: 7 |
| 6 | +slug: /integrations/bubble |
| 7 | +--- |
| 8 | + |
| 9 | +**Learn how to integrate your Apify Actors with Bubble. This article guides you from installation through to automating your workflow in Bubble.** |
| 10 | + |
| 11 | +--- |
| 12 | + |
| 13 | +[Bubble](https://bubble.io/) is a no-code platform that allows you to build web applications without writing code. With the Apify integration for Bubble, you can easily connect your Apify Actors to your Bubble applications, enabling you to scrape data, process it, and display it in your Bubble app. |
| 14 | + |
| 15 | +## Prerequisites |
| 16 | + |
| 17 | +Before using the Apify integration with Bubble, you need: |
| 18 | + |
| 19 | +- An [Apify account](https://console.apify.com/) |
| 20 | +- A [Bubble account](https://bubble.io/) |
| 21 | +- A Bubble application where you want to use the integration |
| 22 | + |
| 23 | +## Get started |
| 24 | + |
| 25 | +The Apify plugin for Bubble allows you to run Actors, fetch data from datasets, manage key-value stores, and more, all without writing any code. |
| 26 | + |
| 27 | +## Demo Application |
| 28 | + |
| 29 | +We've created a comprehensive demo application that showcases various use cases of the Apify plugin for Bubble. This demo app includes examples of: |
| 30 | + |
| 31 | +- Scraping data from websites |
| 32 | +- Running Actors and displaying results |
| 33 | +- Managing Actor tasks |
| 34 | +- Working with webhooks |
| 35 | +- Interacting with key-value stores |
| 36 | +- Listing available Actors and tasks |
| 37 | + |
| 38 | +You can explore the demo app to see real-world implementations and get inspiration for your own projects. The demo app provides practical examples that you can adapt for your specific needs. |
| 39 | + |
| 40 | +## Step 1: Install the Apify plugin for Bubble |
| 41 | + |
| 42 | +To integrate Apify with your Bubble application, you first need to install the Apify plugin from the Bubble plugin marketplace. |
| 43 | + |
| 44 | + |
| 45 | + |
| 46 | +1. Go to your Bubble application dashboard. |
| 47 | +2. Navigate to the "Plugins" tab. |
| 48 | +3. Click the "Add plugins" button. |
| 49 | +4. Search for "Apify" in the plugin marketplace. |
| 50 | +5. Click on the Apify plugin and then click "Install". |
| 51 | + |
| 52 | +## Step 2: Use the Apify plugin |
| 53 | + |
| 54 | +After installing the plugin, it's ready to be used in your Bubble application. Unlike some other plugins, the Apify plugin doesn't require global configuration. Instead, you'll provide your API token each time you use an Apify action in your workflow: |
| 55 | + |
| 56 | + |
| 57 | + |
| 58 | +1. When setting up an Apify action in your workflow, you'll be prompted to enter your API token. |
| 59 | +2. You can find your API token in the Apify Console under **Settings > Integrations**. |
| 60 | +3. For security reasons, it's recommended to store your API token in a Bubble workflow's private field or a custom state that's not exposed to the frontend, rather than entering it directly in each action. |
| 61 | + |
| 62 | +## Step 3: Understanding Data Calls vs. Actions |
| 63 | + |
| 64 | +The Apify plugin for Bubble provides two types of API integrations: Data Calls and Actions. Understanding the difference is crucial for effective implementation: |
| 65 | + |
| 66 | +### Data Calls |
| 67 | + |
| 68 | +Data calls are used to retrieve information from Apify and display it in your Bubble application. These calls can be used as data sources for elements like repeating groups, inputs, or any component that displays data. Data calls don't modify anything - they only fetch and display information. |
| 69 | + |
| 70 | + |
| 71 | + |
| 72 | +The Apify plugin provides the following data calls: |
| 73 | + |
| 74 | +- **Dataset Operations** |
| 75 | + - Fetch Data From Dataset Text As Data |
| 76 | + - Fetch Data From Dataset File As Data |
| 77 | + - Fetch Data From Dataset Json As Data |
| 78 | + - List User Datasets |
| 79 | + |
| 80 | +- **Key-Value Store Operations** |
| 81 | + - List Key-Value Stores |
| 82 | + - List Store Keys |
| 83 | + - Get Record As File |
| 84 | + - Get Record As Image File |
| 85 | + |
| 86 | +- **Actor and Task Operations** |
| 87 | + - List Store Actors |
| 88 | + - List User Actors |
| 89 | + - List User Tasks |
| 90 | + - List Actor Runs |
| 91 | + - List Specific Actor Runs |
| 92 | + |
| 93 | +- **Web Scraping** |
| 94 | + - Scrape Single URL As File As Data |
| 95 | + - Scrape Single URL As Json As Data |
| 96 | + |
| 97 | +- **Webhook Management** |
| 98 | + - List Webhooks |
| 99 | + |
| 100 | +### Actions |
| 101 | + |
| 102 | +Actions are used to perform operations that change data or trigger processes. In Bubble, actions are used in workflows that are triggered by events like button clicks, page loads, or scheduled events. |
| 103 | + |
| 104 | + |
| 105 | + |
| 106 | +The Apify plugin provides the following actions: |
| 107 | + |
| 108 | +- **Dataset Operations** |
| 109 | + - Fetch Data From Dataset Text As Action |
| 110 | + - Fetch Data From Dataset File As Action |
| 111 | + |
| 112 | +- **Key-Value Store Operations** |
| 113 | + - Get Record As Text |
| 114 | + |
| 115 | +- **Actor and Task Operations** |
| 116 | + - Run Actor |
| 117 | + - Run Actor Task |
| 118 | + |
| 119 | +- **Web Scraping** |
| 120 | + - Scrape Single URL As File As Action |
| 121 | + - Scrape Single URL As Json As Action |
| 122 | + |
| 123 | +- **Webhook Management** |
| 124 | + - Create Webhook |
| 125 | + - Delete Webhook |
| 126 | + |
| 127 | +## Step 4: Use Apify in your Bubble application |
| 128 | + |
| 129 | +With the plugin installed, you can start using Apify in your Bubble application through the various data calls and actions provided. Here are some common ways to use the plugin: |
| 130 | + |
| 131 | +- Use data calls to display scraped data in your application |
| 132 | +- Set up workflows that trigger Apify Actors using actions |
| 133 | +- Create automated processes that fetch and process data regularly |
| 134 | + |
| 135 | +## Step 5: Example use cases |
| 136 | + |
| 137 | +Here are some examples of how you can use the Apify integration in your Bubble application: |
| 138 | + |
| 139 | +### Scraping data for your application |
| 140 | + |
| 141 | +Use Apify Actors to scrape data from websites and then display that data in your Bubble application. For example, you could scrape product information from e-commerce sites and display it in your own marketplace. |
| 142 | + |
| 143 | +1. Use the "Run Actor" action to trigger a scraping Actor |
| 144 | +2. Use the "Fetch Data From Dataset Json As Data" data call to display the results in a repeating group |
| 145 | + |
| 146 | +### Automating workflows |
| 147 | + |
| 148 | +Set up workflows in your Bubble application that trigger Apify Actors based on certain events. For example, you could run a scraper every time a user submits a form. |
| 149 | + |
| 150 | +1. Create a workflow triggered by a form submission |
| 151 | +2. Add the "Run Actor Task" action to start your scraping task |
| 152 | +3. Process the results using additional actions or workflows |
| 153 | + |
| 154 | +### Enriching user data |
| 155 | + |
| 156 | +Use Apify Actors to enrich your user data with additional information from external sources. For example, you could use an Actor to get social media profiles based on email addresses. |
| 157 | + |
| 158 | +1. Create a workflow that triggers when new user data is added |
| 159 | +2. Use the "Run Actor" action with appropriate parameters |
| 160 | +3. Store the enriched data back in your Bubble database |
| 161 | + |
| 162 | +## Summary of available features |
| 163 | + |
| 164 | +### Data Calls |
| 165 | +- Retrieve data from Apify datasets in various formats (text, file, JSON) |
| 166 | +- List available datasets, key-value stores, actors, and tasks |
| 167 | +- Get records from key-value stores |
| 168 | +- List actor runs and webhooks |
| 169 | +- Scrape web pages directly |
| 170 | + |
| 171 | +### Actions |
| 172 | +- Run Actors and Actor tasks |
| 173 | +- Fetch data from datasets |
| 174 | +- Get records from key-value stores |
| 175 | +- Scrape web pages |
| 176 | +- Manage webhooks |
| 177 | + |
| 178 | +## Troubleshooting |
| 179 | + |
| 180 | +Here are some common issues you might encounter when using the Apify plugin for Bubble: |
| 181 | + |
| 182 | +- **Authentication errors**: Make sure your API token is correct, in this format "Bearer <api_token>", and has the necessary permissions |
| 183 | +- **Data format issues**: When using JSON data, ensure it's properly formatted |
| 184 | +- **Performance concerns**: For large datasets, consider pagination or filtering data on the Apify side |
| 185 | +- **Missing Actors or tasks**: If you can't find your Actor or task in the dropdown, try running it at least once in the Apify Console |
| 186 | +- **Timeout errors**: For actions that take longer to complete, consider using asynchronous runs |
| 187 | + |
| 188 | +## Detailed implementation guide |
| 189 | + |
| 190 | +For a detailed guide on how to implement specific features using the Apify plugin for Bubble, including code examples and best practices, please refer to the next section of this documentation. |
| 191 | + |
| 192 | +If you have any questions or need help, feel free to reach out to us on our [Discord channel](https://discord.com/invite/jyEM2PRvMU). |
0 commit comments