Edit field only updates the the passed value and erases other fields

HI Everyone,

I was just testing the contact API [Mautic 3.3.3] and found out this in the Edit endpoint.

When I create a new contact with say this JSON

{
    "lastname":"testln",
    "email":"testpost@example.com",
    "firstname":"testfn",
}

It creates new contact and everything is good,

But when I use edit api, api/contacts/ID/edit

with only 1 field to update for example

{
    "lastname":"testln_updated",
}

It updates the last name but makes email and firstname empty.

    "firstname": {
                        "id": "2",
                        "label": "First Name",
                        "alias": "firstname",
                        "type": "text",
                        "group": "core",
                        "object": "lead",
                        "is_fixed": "1",
                        "properties": "a:0:{}",
                        "default_value": null,
                        "value": "",
                        "normalizedValue": ""
                    },

I tried overwriteWithBlank true and false with same outcome.

Is this how it should work or is it a Bug ?

The behaviour mentioned here that Edit field only updates the the passed value and erases other fields is behaviour of http “PUT” method, you have to use “PATCH” method if you need to update only given value and keep all other fields as it is.
Please refer Mautic Developer Documentation