It’s not clear to me how data set with setPluginData or getSharedPluginData are shared between users.
For example, User “A” puts some data into the Node with the plugin. Is those data available for all users of the plugin or only to User “A”?
This data is stored in the node itself so it is available to all users who have access to the document with this node. If the node with the data is still there of course.
Shared plugin data allows other plugins to access it. If you use non shared plugin data, only the plugin that wrote this data will have access to it.
It also depends on the logic of the plugin. For example, it can store the
user.id, and only show data to that user.
Thank you a lot for the clarification.
One more question. Am I right that plugin data will be available through public API whenever have user installs this plugin or not?
Yes, it is just like any other property stored on the node.
Saved plugins don’t affect this data (they don’t affect anything except what user sees in their saved plugins menu). You cannot “install” plugins in Figma — every plugin is available without installation.