Contacts: why so many name fields in json

Looking at using contacts on my thirdparties, I made one and GET contacts using the API.

The json has at least 4 “name” fields, why?

    "name": null,
    "lastname": "Bendtsen",
    "firstname": "Jon",
    "fullname": null,

and 2 contact_id?

    "contacts_ids": null,
    "contact_id": null,

2 email fields

    "email": "bad@example.net",
    "mail": "bad@example.net",