All objects in the API have an id
field indicating their logical identifier. Some objects may optionally also have a self
field that indicates a URL or canonical address for the object.
Parameter | Description |
---|---|
id | A string that identifies the object within the API. The id field will not be larger than 128 characters (in SQL it corresponds to a varchar(128) ). |
self | A URL that addresses the object within the API. The self field will not be larger than 255 characters (in SQL it corresponds to a varchar(255) ). |
These fields must always be treated as opaque strings - no guarantees are made about the internal structure of the id
or self
fields for an object.
The id
field is always defined by the API server and is guaranteed to be unique relative to the type
field - this means no two user objects will have the same id
field, but a user and a company may have the same value for their id
fields. . Some object types (such as User), also support client defined identifiers.
The company and user objects deserve special mention when it comes to identity for two reasons -
- They allow you send your own external identifiers -
email
anduser_id
for users andcompany_id
for companies. - The user
id
field is in some cases, aliased tointercom_user_id
. This is done to distinguish it from other identifiers in the API and to avoid confusion as to which object type anid
denotes.