0

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.

Alexander
  • 19
  • 8

1 Answers1

1

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.

DjP
  • 308
  • 1
  • 6