Q:

How to get ID's of the records in Cross-reference field using Web API in RSA Archer?

I need to get the ID's of the records in a cross-reference field using Web API. Is there an API method to solve this type of task? Or at least I want to know, how to get the value of a specific field?
There are many different methods described in the documentation for operating with list fields (such as GetValuesListValue) and I wonder if there a same way to solve my task. 
I can use ExecuteSeach method, but it isn't very convenient.

A:

Alexander, you can either use the REST or Webservices APIs.
REST APIs
Using the Get content by id, /api/core/content/*contentid*
Then you can pass OData to just get the field (id) contents by passing the following in the body
{"Value":"?$filter=FieldId eq '*field id of cross-reference field*'"}
Webservices APIs
You can call the /ws/record.asmx GetRecordById passing the following
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetRecordById xmlns="http://archer-tech.com/webservices/">
      <sessionToken>session token</sessionToken>
      <moduleId>int</moduleId>
      <contentId>int</contentId>
    </GetRecordById>
  </soap:Body>
</soap:Envelope>

Then you'd have to iterate through the returned XML to get the field contents.

