Account API inconsistency json format

Hi Team!

GET v3/account/:id gives you an account. You can see the sourceId as top level attribute. Any account attribute is visible in the nested attributed attributes.

We want to update an account. PUT v3/accounts/:id and PATCH v3/accounts/:id only works on accounts from delimited file sources for some reason. However, we discovered that POST v3/accounts strangely does accept account updates. If we look at the input of POST v3/accounts we notice that the sourceId needs to be passed within the list of account attributes. This inconsistency is causing that we can’t easily do a GET, take the response, tweak it where necessary and then use the POST. We first need to relocate the sourceId attribute. See:
image

I would fix this by changing the behavior of the POST v3/accounts API, where the request body has the sourceId attribute as top level attribute (or even allow PUT and PATCH for any account).