This is not my area of experience, but is it feasible to capture all raw tracking data from the client devices and then just pass it on to the API?
Is there any indirection that would avoid having to walk the traffic over my own network?
Obviously you then pay the bandwidth, but it’s likely negligible compared to your app traffic. As a bonus you’ll probably circumvent adblockers.
If you want to avoid traffic forwarding, but keep flexibility over the endpoint, you can override the init of the sdk to first query your server for which endpoint to use. That way if the third party service goes down, you just need to change the config on the server.