If you can do it through the UI, then you can do it through the API. The only thing the UI does is call the API on your behalf. I'm assuming that you've already done this through the UI, so that means the API can handle it.
Extensions can provide different functionality to Launch. This functionality usually comes in the form of data elements and rule components (rule components can be events, conditions, or actions). On the Launch team, we refer to data elements and rule components as delegates. The extension developer defines a schema for each delegate that the extension provides. When a Launch user saves that delegate, Launch attempts to validate the user-provided settings against the developer-provided schema.
When I said schema, I was referring to this developer-provided schema. But at the moment, I'm not aware of how you as a user would go about looking at that schema, so my suggestion is for you to perform the action you are interested in through the UI. But as you do this, you can open the developer tools for your browser (Chrome is most common), go to the network tab, and inspect the XHR request that the UI makes when you hit "Save". Assuming that you don't get a validation error when you save, then that XHR request will be a valid API call that passes the developer-provided schema for that delegate.
Then you'll know exactly what the API call should look like for you to make it directly against the API.
That all make sense?