API Custom Fields Returning NULL Values w/ Data Populated

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.

It looks like this is an incomplete request/response; the URL doesn’t include the Contact ID, for instance, and the response payload is just a subset of the full record.

Regardless, if you suspect a defect to be affecting the request, please file a ticket with our API Support team at Get Support - Keap Developer Portal as they can both investigate production data and converse more directly via email.