Limits on updateinventoryfields in http-functions

I use updateinventoryfields in http-functions.

If I run it 60 or so times it works, if 200 it does not.
i use try-catch for errors, which the 200 gives “undefined”.
If i call it for 200 it only updates 100 or so and this is not consistent - 60 seems ok.
I use CURL and if i call it again it can be different.

Is there limit? and why is it unreliable?

Can i send a JSON to do the update?

Driving me spare?