function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
VladMoushkovVladMoushkov 

API returns invalid ID with three characters appended to it - what are they?

Hi there,

We are passing a value to SFDC as below, which is an incorrect / invalid value. When it is returned, three other characters are appended to it. We are wondering:

why they appear
what they are
are they perhaps linked to the Org ID somehow?
can they be ignored if we want to retry the ID?

Many thanks.


The sObject looks like this:

buffer[0].Any.ToArray()[12]
{Element, Name="campaigner_Campaign_External_ID__c"}
     base: {Element, Name="campaigner_Campaign_External_ID__c"}
     attributes: null
     Attributes: {System.Xml.XmlAttributeCollection}
     HasAttributes: false
     InnerText: "801g00000001kjQ"
     InnerXml: "801g00000001kjQ"
     IsContainer: true
     IsEmpty: false
     lastChild: {Text, Value="801g00000001kjQ"}
     LastNode: {Text, Value="801g00000001kjQ"}
     LocalName: "campaigner_Campaign_External_ID__c"
     Name: "campaigner_Campaign_External_ID__c"
     name: {System.Xml.XmlName}
     NamespaceURI: ""
     NextSibling: null
     NodeType: Element
     OwnerDocument: {Document}
     ParentNode: null
     Prefix: ""
     SchemaInfo: {System.Xml.XmlName}
     XmlName: {System.Xml.XmlName}
     XPLocalName: "campaigner_Campaign_External_ID__c"
     XPNodeType: Element

     I'm calling SforceService.create() with array of 8 sObjects (all with this external campaign id: 801g00000001kjQ)

     The result is array of 8 objects like this:

     sr[0]
{ConcepCampaignerIntegration.SalesforceProviders.sforce.SaveResult}
     errors:
{ConcepCampaignerIntegration.SalesforceProviders.sforce.Error[1]}
     errorsField:
{ConcepCampaignerIntegration.SalesforceProviders.sforce.Error[1]}
     id: null
     idField: null
     success: false
     successField: false


     The resulting error object:

     errors.ToArray()[0]
{ConcepCampaignerIntegration.SalesforceProviders.sforce.Error}
     fields: {string[1]}
     fieldsField: {string[1]}
     message: "SFDC Campaign: id value of incorrect type:
801g00000001kjQAAQ"
     messageField: "SFDC Campaign: id value of incorrect type:
801g00000001kjQAAQ"
     statusCode: FIELD_INTEGRITY_EXCEPTION
     statusCodeField: FIELD_INTEGRITY_EXCEPTION


     The problem is that request external Id is different from the Id stated in the exception:
     Request:    801g00000001kjQ
     Response:    801g00000001kjQAAQ


Ramu_SFDCRamu_SFDC
The 3 new characters is the 18 digit unique id for the same record for which you are passing the 15 digit id. Review the below post for more information on this

https://developer.salesforce.com/forums?id=906F00000008o29IAA