Yeah, nice. Just as a suggestion for future reference/testing/development, I’ve often found it easiest and best to:
Create the transaction/record in the system manually via the standard UI
Get/extract the record via the REST API to your preferred output (i.e. JSON to a notepad application or to an Excel or CSV format)
Delete the record in the system manually via the standard UI
Import the extracted record data via the REST API and confirm creation etc.
Then repeat steps 3 and 4 above with a modified dataset until it meets requirements
As by doing so I’ve found it a lot easier to find/figure out any fields/data that may also need to be populated for the desired outcomes. While keeping in mind that in many cases, via the standard UIs, unexpected data can often be directly automatically populated at the UI level or via OnChange method calls during normal entry - which can be easily identified by re-extracting the imported record during iterations and comparing it to the extracted data from the record(s) created via manual entry via the UI.
Ideally, it’s generally desirable/best to confirm that the data imported via the REST APIs and integrations matches that of what it would have been if entered manually by a user via the standard user interfaces for functionality, consistency, and support reasons and the above process makes it easy to do so.
Yeah, good point. Definitely one of the best methods to find/detect variances and learn how and what the UI is calling. Along with a good comparison tool like WinMerge (free) or Beyond Compare to compare the request and response datasets.