Showing results for 
Search instead for 
Did you mean: 

Asynchronous API calls from Databricks

New Contributor II


I have to send thousands of API calls from a Databricks notebook to an API to retrieve some data.

Right now, I am using a sequential approach using the python request package. As the performance is not acceptable anymore, I need to send my API calls in parallel. I started changing my ingestion notebook, using the asyncio and aiohttp packages.

I am not an expert in these 2 packages but I keep having one error that I cannot expain: cannot be called from a running event loop

which means that there is already an event loop but there shouldn't be an existing event loop!

When I run

loop = asyncio.get_running_loop()

I get a running loop, even outside the main program. I know that Jupyter notebooks always have a running event loop, is it the same for Databricks?

Does anyone have some experience with these 2 packages in Databricks?

Is there a better way to handle asynchronous HTTP call from Databricks?


New Contributor II

You could try adding this:

import nest_asyncio


And in your code calling it like this:

Don't forget to install the nest_asyncio package.

New Contributor III

This worked for me - thanks, wasn't aware of this package.

FYI, nest_asyncio is included in the Databricks runtime by default since 10.4

New Contributor III

I also ran in to this error and cascode's response resolved it.

Of note, this error didn't pop for me when running the code on an all-purpose cluster, only on a new job cluster.

Not applicable

Hi @Paul Poco​ 

Hope all is well! Just wanted to check in if you were able to resolve your issue and would you be happy to share the solution or mark an answer as best? Else please let us know if you need more help. 

We'd love to hear from you.


Welcome to Databricks Community: Lets learn, network and celebrate together

Join our fast-growing data practitioner and expert community of 80K+ members, ready to discover, help and collaborate together while making meaningful connections. 

Click here to register and join today! 

Engage in exciting technical discussions, join a group with your peers and meet our Featured Members.