Ok so I didn't manage to solve this directly, but I did accomplish my intent behind this quesion. The intent behind this was to pre-populate a field collection from another node on a node create form with an ajax call. I'm still not sure how you alter the fields in a field collection on a form and I'll leave this question open in case anyone knows, however if you're looking to pre-populate field collections onto a node, then this blog post has an answer: http://drupal.cocomore.com/blog/field-collections-exposed And I posted an example using ajax to do this in an answer to this question (where I think it's more relevant): http://drupal.stackexchange.com/questions/142287/how-to-create-pre-populate-multiple-field-collection-fields-on-an-ajax-cal/142318#142318