So ultimatly I'm trying to create an order, with items (some with modifiers) and apply a payment through the API.
If you look at the POST /orders API it shows that to create an order you can add (amongst many things):
lineItems, lineItems.modifications, payments
However after a lot of trial and error (there are no error or warning messages), I found out that you cannot add lineItems when creating an order.
So I've set up a second API call to POST /orders/:orderId/bulk_line_items which contains the parameter
But it doesn't work (no error or warning messages). So now I have to do multiple calls to POST /line_items/:lineItemId/modifications - one for every individual line item in the order.
Additionally I have to do a POST orders/:orderId/payments to apply a payment to the original order.
So after many, many hours of trial and error and digging through the community I've figured out that I have to do a minimum of 4 network requests (more for each item in an order) to achieve what the documentation would have you believe you can achive in a single request.
Of course the functionality would be great to do this in one request, but for the moment I'd suggest removing the fields from the documentation that actually don't apply or are irrelevant.
There are a couple of questions related to this from a couple of years ago where this sort of functionality was logged. Do you have any updates on whether this is going to become avaialble?