Python plugin customize output schema

How do I customize the output schema for a Python 3 plugin step?

That editing must be intended by the plugin author, since not only do the default output steps have a description “Sample output result1 (delete or edit)” but also when I click the Edit button for the Output section…

image

I see:

Power Users Only You can edit the JSON Output Schema by editing it below. This could have an impact on variables used in following steps, so please use with care!

Where is that editing possible? I don’t see any JSON to edit. I’ve even used browser dev tools to see if I can figure out where “below” is, but nada.

Using the dialog below, it’s possible to add new outputs, delete and rename existing ones, as well as change the data type, but how do I edit the description?

image

I suppose I could export the .icon file, edit the output variable descriptions in a text editor, and reload it, but I don’t think that’s what is intended here.

I’ve never been able to edit the output as a JSON, just through the GUI either modifying what is there or adding additional variables. From what I’ve seen though this does not modify the actual output, it is just a JSON template of the returned data for use in following Steps.

1 Like

Huh. Thanks. Reasonable to say it looks like it should be possible though. As I note above, it’s strongly implied more than once in the UI.

Maybe @tyler_terenzoni knows…?

Editing of the output is only possible through the GUI referenced above as @brandon_mcclure stated.

This only involves editing of the output variable names and types though. The descriptions are not editable.

The way this works in practice is you would write your python function to return whatever data you would like to use later in the workflow. You would then use the GUI to update the output of the step to match your returned data from the python function. You can just delete the default values using that GUI. From there, in later steps your new output variables will be available in the variable picker.

1 Like

Thanks. Maybe I was putting 2+2 together and getting 5. It just seems odd to me that the default is two output variables, each with a description like “Sample output result (delete or edit)” which can’t actually be edited. Not a big problem though.