We’re doing some testing with the KEAP API endpoints, and we’re having an issue returning vales for the Custom Fields even those we’ve set them with a previous POST request.
If we add the Parameter to return the custom fields in our GET, none of the custom fields returned as expected or with values. The result we do get back, doesn’t correlate with what we’re expecting per say. There is an array “custom_fields” but the values being returned in ID is an integer (not a string), and the Content is always NULL.
URL: https://api.infusionsoft.com/crm/rest/v1/contacts?optional_properties=custom_fields
GET RESPONSE EXAMPLE
“custom_fields”: [
{
“id”: 2,
“content”: null
},
{
“id”: 6,
“content”: null
},
{
“id”: 8,
“content”: null
},
{
“id”: 10,
“content”: null
},
{
“id”: 12,
“content”: null
},
{
“id”: 14,
“content”: null
},
{
“id”: 16,
“content”: null
},
{
“id”: 18,
“content”: null
},
{
“id”: 20,
“content”: null
},
{
“id”: 22,
“content”: null
},
{
“id”: 24,
“content”: null
},
{
“id”: 26,
“content”: null
},
{
“id”: 28,
“content”: null
}
]
}
POST PAYLOAD EXAMPLE
{
“id”: 0,
“company”: null,
“email_opted_in”: true,
“email_status”: “SingleOptIn”,
“date_created”: “2024-10-28T18:57:40.000+0000”,
“last_updated”: “2024-10-28T18:57:40.000+0000”,
“email_addresses”: [{
“email”: “info2@nethealth.com”,
“field”: “EMAIL1”
}
],
“addresses”: ,
“phone_numbers”: [{
“number”: “(212) 555-1212”,
“extension”: null,
“field”: “PHONE1”,
“type”: null
}
],
“given_name”: “Chad”,
“family_name”: “Test2”,
“middle_name”: null,
“owner_id”: null,
“custom_fields”:[{
“content”:“_nextappointmentdate”,
“id”: “20241029”
}]}
The client has advised that all of their custom fields have been created in their KEAP instance and should be available through the APIs.