Great question — answering as the UphillTech team:
This isn't really helpful to fix the problem, but I contacted support from UPS on the weight missing from the API responses and they sent me this reply: Thank you for your response. At this time not all options available within the OAuth Tracking API to show information. In future enhancements the information will be available. So they don't have all the fields implemented yet. Update: Seems like they got the extra fields working now. Weight is in the response at trackResponse->shipment[i]->package[i]->weight and the destination postal code is part of an array of addresses in trackResponse->shipment[i]->package[i]->packageAddress then you loop over those to find one with type="DESTINATION"...
Full answer by bguebert: https://stackoverflow.stackexchange.com/a/76812535 (CC BY-SA 4.0).
Need it done for your business? UphillTech.