Additional fields are stored in additionalInfo attribute.
This attribute is available for :

  • Candidate
  • Contact
  • Company
  • Job order
  • Project
  • Placement
  • Match
  • Publication
  • User

The data format is a dictionary.
Here is an example of how to fetch additionalInfo data for a specific Candidate record.

GET /CREmployee/52619?show=additionalInfo HTTP/1.1
Host:api.carerix.com
Authorization:****

HTTP/1.1 200 OK
Content-Type:application/xml

<?xml version="1.0" encoding="UTF-8"?>
<CREmployee id="52619">
<additionalInfo>
<NSDictionary>
<_4474>a</_4474>
<_4487>1</_4487>
<_4488>2</_4488>
<_4489>3</_4489>
<_4490>2014-10-02T12:00:00Z+0200</_4490>
<_4492>
<NSArray>4479</NSArray>
</_4492>
<_4493>4478</_4493>
<_4494>
<NSArray>4479</NSArray>
</_4494>
<_4495>4479</_4495>
<_4504>4501</_4504>
<_4963>4</_4963>
</NSDictionary>
</additionalInfo>
</CREmployee>

Understanding additionalInfo format

Each line in this field has key-value pair (<_4474>a</_4474>). The key is _4474 and value is a. The key is a CRDataNode.id less the underscore '_', in our case it is 4474. It refers to a record from where the application gets the UI label abba' from. This applies to all basic fields: text, textarea, date, number, etc.

Example:

GET /CRDataNode/4474 HTTP/1.1
Host:api.carerix.com
Authorization:****


HTTP/1.1 200 OK
Content-Type:application/xml

<?xml version="1.0" encoding="UTF-8"?>
<CRDataNode id="4474">
<creationDate>2013-08-20 10:09:53</creationDate>
<dataNodeID>4474</dataNodeID>
<deleted>0</deleted>
<exportCode>testend</exportCode>
<isDefault>0</isDefault>
<isHidden>0</isHidden>
<isSystem>0</isSystem>
<modificationDate>2013-08-20 10:14:17</modificationDate>
<notActive>0</notActive>
<notes>{AttributeLabel = Rijbewijs; }</notes>
<sortOrder>20</sortOrder>
<value>abba</value>
<type>
<CRNodeType id="247" />
</type>
</CRDataNode>

However, additionalInfo might also contain complex fields like checkboxes (single or multi) and comboboxes (single or multi). Let's consider this section from the above additionalnfo data

<_4492>
<NSArray>4479</NSArray>
</_4492>

Using "4492" as CRDataNode.id we could lookup the label for this additional field. The value of this field is stored in <NSArray>4479</NSArray>, which indicates to us that this is a complex field with 1 or more values. We are interested in "4479" bit. Again, it refers to CRDataNode.id that we can use to lookup the value it represents.

GET /CRDataNode/4479 HTTP/1.1
Host:api.carerix.com
Connection:Keep-Alive
Authorization:****


HTTP/1.1 200 OK
Content-Type:application/xml

<?xml version="1.0" encoding="UTF-8"?>
<CRDataNode id="4479">
<creationDate>2013-08-24 07:43:53</creationDate>
<dataNodeID>4479</dataNodeID>
<deleted>0</deleted>
<exportCode>addinf</exportCode>
<isDefault>0</isDefault>
<isHidden>0</isHidden>
<isSystem>0</isSystem>
<listType>addinf</listType>
<modificationDate>2013-08-24 07:44:14</modificationDate>
<notActive>0</notActive>
<sortOrder>20</sortOrder>
<value>list item 2</value>
<type>
<CRNodeType id="258" />
</type>
</CRDataNode>
Did this answer your question?