Hi nnikbin.
Very limited but I found a way.
First, create multiple bodies in the root component.

Then, execute the next script.
#fusion360 python
#Test Create SelectionSets
import adsk.core, adsk.fusion, traceback
def run(context):
ui = None
try:
app = adsk.core.Application.get()
ui = app.userInterface
des = adsk.fusion.Design.cast(app.activeProduct)
root = des.rootComponent
#Select the first body
ui.activeSelections.add(root.bRepBodies.item(0))
#Create SelectionSets
cmd = ui.commandDefinitions.itemById('CreateSelectionGroupCmd')
cmd.execute()
#Update SelectionSets
cmd = ui.commandDefinitions.itemById('UpdateSelectionGroupCmd')
cmd.execute()
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
After execution, a SelectionSets is created to select the first Body.

It seems that it is possible to call many commands of Fusion360 if doing it this way.
https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-d34065c0-b5b8-46f9-bd4c-36adfcdfda83
The executable command ID list can be written to a file by executing the following code.
#fusion360 python
#CommandID Write to File
import adsk.core, adsk.fusion, traceback
def run(context):
try:
app = adsk.core.Application.get()
ui = app.userInterface
cmds = [cmd.id for cmd in ui.commandDefinitions]
path = r'C:\temp\fusion360_commands_list.txt'
output = open(path, 'w')
output.writelines('\n'.join(cmds))
output.close()
except:
if _ui:
_ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))