Skip to main content
While it’s possible to look up archive provider columns using the NetServer documentation reference, it’s recommended to get and cache the columns using the API. There are 3 types of interesting archive information:
  • Archive columns
  • Archive restriction columns
  • Archive entities
They are obtained using the following format: archive{Descriptor}:{archiveProviderName}

CriteriaGroups

New Selection introduces the concept of criteria groups, where the criteria within each group are connected by AND, and groups are connected by OR. The database layout to support this has been in place for a long time and was used in an equivalent fashion for Saint Status definitions. There, each criteria group was in a separate tab in the user interface; in the new Filter screen groups are stacked vertically instead. APIs that only work with a simple ArchiveRestrictionInfo[] do not support the concept of multiple groups. Such methods will only return the first group, and on writing will delete any other groups. Examples are GetDynamicSelectionCriteria and SetDynamicSelectionCriteria; and similar methods in the Find agent. All these methods should be considered obsolete when applied to Selection and Find. Selection criteria should be fetched and stored using the GetDynamicSelectionCriteriaGroups and SetDynamicSelectionCriteriaGroups methods on the Selection agent. Using them will retrieve and save all groups, and avoid having to make assumptions about the StorageKey concept used in the Find agent methods. Contrast the differences in the two calls (the ts.Key is a selection ID).

Get archive columns

These columns are useful when specifying the desired columns when calling the Archive endpoint. The ExtraInfo property indicates whether a field can be used in the ORDER BY clause in an ArchiveOrderByInfo.
Selecting archive columns as such is only necessary when defining SELECT columns towards the Archive endpoint.

JSON query results

JSON
Whether getting columns or entities, the result is an array of MDOListItem. The structures do differ slightly between columns and entities.

Get archive restriction columns

Not all archive provider columns can be used as criteria. Therefore, use this method to obtain just the columns that are used to specify criteria.

Get archive RestrictionColmns result

Returned columns represent each primary entity and all of their available columns listed in the ChildItems property. Property definitions are listed later in this section, however, note that the ExtraInfo property when selecting RestrictionColumns specifies the field datatype. This is important because not all data types support the same operators, and ExtraInfo is used to obtain what operators are supported for the field. Selection criteria

JSON query results

JSON

Get archive entities

Only one Find archive provider returns more than one entity, ContactPersonDynamicSelectionV2 - contact and person. While this isn’t important to establish the CriteriaGroups, these routines are used in the final step when calling the Archive endpoint to get the results.

REST JSON results

JSON

MDOListItem array

Whether getting columns or entities, the results an array of MDOListItem. The structures do differ slightly between columns and entities.

Entity results

Column results