Inconsistancies in `person_id` field in webhook / API calls

The choice of information to include in the body of a webhook call for an updated Deal seems a bit arbitrary, and diverges quite dramatically from the response of GET request to the deals/{id} endpoint.

One very curious choice is that of person_id being an array with a list of contact details for a direct GET request to a deal, but an integer when inspecting the body sent along with a webhook’s payload. I can’t imagine how person_id ended up being an array but this information is very much needed in the webhook’s payload when a Deal is updated.

Please consider adding the contact information for the Person connected to a Deal in this payload sent when a Deal is updated.

Continuing the discussion from Person email details in deal webhooks:

Yeah, it’s weird isn’t it… I’ve used this feature to build a OO version of the python pipedrive wrapper having nice stubs of the org and person.

The real bummer is that the Leads API is so inconsistent with the Deal API :frowning: the person_id in Leads is just an ID (same with Org), so I can’t load the stub…

These inconsistencies have made me give up on using Leads (just sticking to Deals).
(been trying to get answers from the pipedrive people for a while, and getting no answers).