Bubble API data cleaning and record update

I have 200k data in bubble.io app and my goal is to have partial search work on one of the id columns.

For example product column has ID “002ABCDEF”
[
{
“name”: “Apple iPhone XS”,
“product_reference”: “002ABCDEF”
},
{
“name”: “Apple iPhone XS Max”,
“product_reference”: “001GHIJKL”
}
]

The problem is, if a user searches for “ABCDEF” or “GHIJKL”, they won’t find anything.

What I am looking for is to make a new column or change the current column to contains all the possible suffixes for product_reference

[
{
“name”: “Apple iPhone XS”,
“product_reference”: “002ABCDEF”,
“product_reference_suffixes”: [“02ABCDEF”, “2ABCDEF”, “ABCDEF”, “BCDEF”, “CDEF”, “DEF”, “EF”, “F”]
},
{
“name”: “Apple iPhone XS Max”,
“product_reference”: “001GHIJKL”,
“product_reference_suffixes”: [“01GHIJKL”, “1GHIJKL”, “GHIJKL”, “HIJKL”, “IJKL”, “JKL”, “KL”, “L”]
}
]

Please advise

Hey Ari,

Possibly use the Text Extract step a few times to create those suffixes, you can use the offset from beginning of text option, so that you can create a column that ignores the first character, then the first 2 characters, then 3, 4, 5, and so on.

Thank @brian this seems to a workable solution. installing multiple TextExtract and then combining them into another column: comma-delimited.

I see that the Bubble.io tile is in beta: Do you recommend this two be a patch job to update the record in Bubble DB? There is approximately 200K rows of data.

Is there limitations on Parabola API to schedule a job like this? (bubble.io allows 1000 rows of bulk data updates)

  • API export from bubble.io, run workflow
  • API import back to bubble.io with a unique identifier to update record

PATCH is probably what you want if you are updating, as it is safer than a PUT call.

The only limits are those imposed by Bubble’s own API, so you will want to build around those. Our only limitation is 1 hour max of run time before the step stops, and the API Export will go row by row, making 1 API call per row, and will not proceed to the next row until the current one has finished.

2 Likes

@brian how is it possible to set the Parabola call to export 1000 rows at a time without losing track of last exported row? Like does the process end after one hour and I have to restart it?

That’s not possible right now. You will need to either get it done in an hour, or break it into chunks that will finish in under an hour, and run it chunk by chunk.