Just to add to Breno's response
Update data - as mentioned is just your runtime variables and can be strings or ints or queues object etc. These can be Task variables or Flow variables. Task is local ie viewable and accessible only to the current task within the flow. Flow variable is global to the flow (not across flows) and available to all tasks in that flow. Once the flow completes, these variables are gone and not accessible from anywhere else, not by other flows and not by APIs.
Set Participant Data - These are custom attribute ie this will write a string value to the call meta data. Which can be accessed via the APIs or when viewing an Interaction.
Get participant data - Retrieve data that was Set previously. This is how you might pass variables from one flow to another for example.
------------------------------
Anton Vroon
------------------------------