I'm using the Salesforce PHP Toolkit, when I create a record in a custom object the ID which is returned has AA2 appended to the end of the ID. Upserting Contact (existing) Array ( [0] => stdClass Object ( [id] => a00i0000009cDXNAA2 [success] => 1 ) )

I'm on a developer account, and using basic samples from their samples page, slightly modified to add a new record to my custom object.

http://wiki.apexdevnet.com/page/PHP_Toolkit_20.0_Upsert_Sample_(Partner) to create records.

The page displaying the custom object entry is accessible using either the ID I see in salesforce or with AA2 appended, which is the same as returned by Salesforce.

Is this normally how ID's are returned from Salesforce API?


1 Answer 1


The AA2 is appended to the standard 15 character ID to make it case insensitive.

E.g. a00i0000009cDXN and a00i0000009cDXNAA2 are the same ID in Salesforce. The former is case sensitive and the later is case insensitive. Case insensitive ID's are useful for some applications where the casing may not be correctly maintained (Excel).

See What are Salesforce ID's composed of? for details of how these extra (optional) three trailing characters encode the casing of the prior 15 characters.

You must log in to answer this question.

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