Hi @j.han97 .
I'm not sure if this is the correct way to exit, but I think it's done.
# Fusion360API Python script
import traceback
import adsk.fusion
import adsk.core
def run(context):
ui: adsk.core.UserInterface = None
try:
app: adsk.core.Application = adsk.core.Application.get()
ui = app.userInterface
exitApplication()
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
def exitApplication():
app: adsk.core.Application = adsk.core.Application.get()
# close all doc
docs = [doc for doc in app.documents]
[doc.close(False) for doc in docs[::-1]]
# close asset
app.executeTextCommand(u'NuCommands.CloseAssetCmd')
# Exit Application
app.executeTextCommand(u'NuCommands.ExitApplicationCmd')