Velo Execution Time

Question:
Is there a max execution time killing off my custom process running in the background? If so what’s the exact limit, can it be manually increased when starting this specific backend process to ensure it runs fully?

Product:
Wix Block (embedded on a Site with hundreds of contacts)

What are you trying to achieve:
I’ve made a Wix Block that, when embedded to a site allows an admin to synchronize Contacts & Labels data from Wix with an external system through a series of API calls to get the remote info and either update with the latest info from Wix or create what is missing remotely.

There’s a App Dashboard page with a Sync button that triggers this async process in my backend. The process goes as follows (everything is async btw):

  1. Get remote Labels info (I need to have an idea of the names already in use over there because it might collide with existing names and cause failure later on)
  2. Get the latest Wix Labels info
  3. Retrieve excluded Labels from a Wix Collection (I let my user exclude some labels they dont want synced in a Settings table like old labels or system labels that are not pertinent to this use-case)
  4. Save all the Labels I will have to synchronize to a Wix Collection (a mappings table that contains Wix Label key and its displayName and eventually the remote system’s own Id)
  5. Read that collection and loop through each line to make as many API calls to either create or update the mapped Label.
  6. Once labels are all present remotely, I load Wix Contacts (that are approved Site Members) and will, for each, check if their email or phone already exist remotely and then either create or update that Contact over the remote system.

When testing in the Wix Block editor, given my small test contacts volume, it runs entirely to the end. However, on my client’s website, there’s hundreds of contacts so the whole process last quite a few minutes and it eventually just… dies. Logging stops registering like the process just got terminated by some execution time limit after a while.

What have you already tried:
Couldn’t find information regarding execution time limits in Velo. I’m going to try to look for ways to split the process, maybe schedule it in segments or something… Feel free to point me towards suggestions!

Additional information:
The external system I’m dealing with does not expose bulk-action APIs, I only have the basic CRUD for individual elements & List functions to fetch all the info of a specific category of objects.