In our environment, we have two custom Course objects, one's identifier is Course__c the other is hed__Course__c. (Don't ask me why, it's just how it is.)

The one I am focused on is Course__c. Course__c has a look up field that looks to another Course__c, this is for linking translated courses. In my object manager, everything looks correct, the field says the field name is Course__c.

However, when I go to assign this value through the API, I get the error Course: id value of incorrect type.

Double checking on this, through the lightning portal, I attempted to add the course field manually, it is searching for hed__Course__c, not Course__c. And when I select Add New it gives me the form to create a hed__Course__c.

Why would Salesforce get confused on this? The two objects have different names, just the same label... Seems like a bug to me

  • 3
    The field API name can be Course__c while the field looks up to, well, anything. You need to look at the field detail in Object Manager and click through the link to the looked-up object. You'll find it's hed__Course__c unless you've got some kind of other customization confusing things.
    – David Reed
    Commented Feb 14, 2019 at 0:29

1 Answer 1


Check Course__c.Course__c Lookup Field Definition via Setup> Object Manager > Course > Search fields for "Course"

Ensure that the field actually looks up to the Course__c and not the hed_Course__c object. Chances are the labels for both objects are similar and whoever created the Course__c.Course__c Lookup field accidentally linked to hed_Course__c and not Course__c object.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .