Before starting, I would like to say that I prefer to work with JavaScript with the great Toolbox plugin and “run javascript” action for frontend workflows or “server script” action for backend API workflow, instead of Bubble to manipulate JSONs because Bubble expressions and Types can have a lot of unexpected side effects with JSONs … But if you prefer to keep using Bubble expressions and type, here are some things to check:
-
Have you tried to select the actual Type of things returned by the plugin in action of step 4 “read json Get list of Experiences” instead of basic Type “text” ?
it could be named like “JSON Manipulator’s JSON” or something similar (refer to plugin documentation) in the Type of things dropdown in Bubble Editor for your step 5 in the 1st API wf AND for your input type “experience_item” in your 2nd API wf
-
Also you can have issues trying to pass JSON as texts with double quotes (") inside the texts for JSON values that can break the format of the JSON, and then you get null values instead of text.
Valid text for JSON: “This is a valid example without quotes”
Invalid text for JSON: “This is not a “valid” example because of quotes”
=> you can try to escape these double quotes using :find and replace operator or :formatted as JSON safe (be careful with this one that automatically adds the double quotes at the beginning and end of the string)
-
Also, be careful about lists of texts stored as one text in Bubble that can add extra spaces before and after commas !
=> [one, two, three] can become “one , two , three” => you can use the :join with operator to be sure to know how list text items are actually joined in texts
-
Also, be careful about how Bubble expressions work: in your 2nd API wf step 5, the :find and replace operators are applied to each list item element and not to the list, they actually remove the “[” and “]” from the items inside the list (Bubble has its own format for lists, they are not treated as usual JSON) so they are useless here…
…:each item…
The :each item prefix is added to a List operator when the operator acts on an item in the List rather than the List itself. This prefix does not change any functionality, it is merely there to clarify the intended behavior of the selected operator.
Anyway : after running these API workflows, inspect server logs for each action step to see the input value and try to identify which steps are returning correct or incorrect values.
I think you should understand better how Bubble deals with lists and the different operator on lists and their elements because you are using them in the wrong way to get the result you expect…
=> read Bubble documentation for list operators more carefully 