I have been using Alteryx Designer/Server for sometime with clients manually logging into to the server front end to run workflows.
We now have a new client who wants to leverage the Gallery API to programmatically execute workflows / retrieve result sets. The workflow in question takes a number of parameters (interface tools) to request things like the Project IDs, last run times etc and which the client can happily incorporate into their API calls. This is all setup and working when running the report manually via the Server front end.
Their recent request is for us to throw an error should they submit a call WITHOUT providing one of the parameters (e,g. not passing ProjectiD). In my workflow I check for the number of project IDs (using a formula tool to parse comma separated lists) and then, should it be empty / 0, use an error tool to output a related error.
This is all well and good from the front end however when using the API this requires the client to make a call to https://{MyURL}/api/v1/workflows/{appID}/jobs to first start the job running and then to place a call to the actual jobid (e.g. https://{MyURL}/api/v1/workflows/{JobID} in order to understand as to whether there was an error or not.
Tl;dr - Is it possible in the initial call to https://{MyURL}/api/v1/workflows/{appID}/jobs to enforce / check for "mandatory" parameters (interface tool) and respond accordingly WITHOUT having to place a follow up call to the actual JobID
It is important to note that currently we are using Alteryx 2018 but are looking to upgrade to a later version asap, if this is a newer feature it could be further justification for the upgrade.
Thank you for your time,
Kieron