# XLM-RPC PHP Contact Fields and Custom Fields

**URL:** <https://integration.keap.com/t/xlm-rpc-php-contact-fields-and-custom-fields/79332>\
**Category:** API Q&A\
**Created:** [August 28, 2020, 5:36pm UTC](https://integration.keap.com/t/xlm-rpc-php-contact-fields-and-custom-fields/79332 "2020-08-28T17:36:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Abe\_Kashiwagi1](https://avatars.discourse-cdn.com/v4/letter/a/74df32/32.png) [@Abe\_Kashiwagi1](https://integration.keap.com/u/Abe_Kashiwagi1)\
**Post date:** [August 28, 2020, 5:36pm UTC](https://integration.keap.com/t/xlm-rpc-php-contact-fields-and-custom-fields/79332/1 "2020-08-28T17:36:40Z")

</div>

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’  
),  
)

---

<div class="post-metadata">

**Author:** ![TomScott](https://sea1.discourse-cdn.com/flex019/user_avatar/integration.keap.com/tomscott/32/67_2.png) [@TomScott](https://integration.keap.com/u/TomScott)\
**Post date:** [August 28, 2020, 6:57pm UTC](https://integration.keap.com/t/xlm-rpc-php-contact-fields-and-custom-fields/79332/2 "2020-08-28T18:57:54Z")

</div>

I’m not sure which SDK you’re using; the primary PHP SDK ( [GitHub - infusionsoft/infusionsoft-php: PHP client library for the Infusionsoft API.](https://github.com/infusionsoft/infusionsoft-php)) 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](https://developer.infusionsoft.com/docs/xml-rpc/#data-query-a-data-table) / [Table Schema Documentation - Keap Developer Portal](https://developer.infusionsoft.com/docs/table-schema/)
