XLM-RPC PHP Contact Fields and Custom Fields

I have noticed that XLM-RCP PHP API doesn’t use the normal field names like FirstName — it decided to make things fun and use completely different names like “given_name”.
Example:
$contact_data = array(
‘given_name’ => $fname,
);

I need an extensive list of every single XLM-RCP PHP API contact field name (Address fields, phone number fields, etc.)

Also, how do I find the custom field id number to use in XLM-RCP PHP API?
Example:
‘custom_fields’ => array (
array(
‘id’ => 10,
‘content’ => ‘Sara’
),
)

I’m not sure which SDK you’re using; the primary PHP SDK ( GitHub - infusionsoft/infusionsoft-php: PHP client library for the Infusionsoft API.) shouldn’t have alternate casing.
$infusionsoft->contacts('xml')->add(array('FirstName' => 'John', 'LastName' => 'Doe'));

The custom field Ids will be different for each application instance, based on how it’s configured. The DataFormField table is what holds those values: xml-rpc - Keap Developer Portal / Table Schema Documentation - Keap Developer Portal