> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superoffice.com/llms.txt
> Use this file to discover all available pages before exploring further.

# NSCriteriaInformation

> Carrier for criteria information. It contains all the search criteria - that is, ArchiveRestrictionInfo - objects, including a  column specification. In addition, it contains the same criteria expressed as an archive, with an array of ArchiveColumnInfo specifications and a set of ArchiveRow rows. The rows of the archive form a subset of the restriction array.

Carrier for criteria information. It contains all the search criteria - that is, ArchiveRestrictionInfo - objects, including a  column specification. In addition, it contains the same criteria expressed as an archive, with an array of ArchiveColumnInfo specifications and a set of ArchiveRow rows. The rows of the archive form a subset of the restriction array.

## Constructors

### NSCriteriaInformation()

```crmscript theme={null}
NSCriteriaInformation
```

Initializes a new instance of the NSCriteriaInformation class.

## Methods

## GetCriteriaArchiveColumns()

```crmscript theme={null}
NSArchiveColumnInfo[] GetCriteriaArchiveColumns()
```

**Returns:** [CRMScript.NetServer.NSArchiveColumnInfo](CRMScript.NetServer.NSArchiveColumnInfo)\[] - Array of ColumnInfo column specifications.

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveColumnInfo[] criteriaArchiveColumns = thing.GetCriteriaArchiveColumns();
```

## GetCriteriaArchiveRows()

```crmscript theme={null}
NSArchiveListItem[] GetCriteriaArchiveRows()
```

**Returns:** [CRMScript.NetServer.NSArchiveListItem](CRMScript.NetServer.NSArchiveListItem)\[] - Array of archive list items (the service layer carrier for archive rows).

<Note>
  These are the criteria, represented as archive rows.
</Note>

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveListItem[] criteriaArchiveRows = thing.GetCriteriaArchiveRows();
```

## GetRestrictionGroups()

```crmscript theme={null}
NSArchiveRestrictionGroup[] GetRestrictionGroups()
```

**Returns:** [CRMScript.NetServer.NSArchiveRestrictionGroup](CRMScript.NetServer.NSArchiveRestrictionGroup)\[] - Array of restriction groups, including the default first group of restrictions.

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveRestrictionGroup[] restrictionGroups = thing.GetRestrictionGroups();
```

## GetRestrictions()

```crmscript theme={null}
NSArchiveRestrictionInfo[] GetRestrictions()
```

**Returns:** [CRMScript.NetServer.NSArchiveRestrictionInfo](CRMScript.NetServer.NSArchiveRestrictionInfo)\[] - Array of NSArchiveRestrictionInfo restriction specifications (for the first group if there are more than one).

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveRestrictionInfo[] restrictions = thing.GetRestrictions();
```

## SetCriteriaArchiveColumns(NSArchiveColumnInfo\[])

```crmscript theme={null}
Void SetCriteriaArchiveColumns(NSArchiveColumnInfo[] criteriaArchiveColumns)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveColumnInfo[] criteriaArchiveColumns;
thing.SetCriteriaArchiveColumns(criteriaArchiveColumns);
```

## SetCriteriaArchiveRows(NSArchiveListItem\[])

```crmscript theme={null}
Void SetCriteriaArchiveRows(NSArchiveListItem[] criteriaArchiveRows)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

<Note>
  These are the criteria, represented as archive rows.
</Note>

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveListItem[] criteriaArchiveRows;
thing.SetCriteriaArchiveRows(criteriaArchiveRows);
```

## SetRestrictionGroups(NSArchiveRestrictionGroup\[])

```crmscript theme={null}
Void SetRestrictionGroups(NSArchiveRestrictionGroup[] restrictionGroups)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveRestrictionGroup[] restrictionGroups;
thing.SetRestrictionGroups(restrictionGroups);
```

## SetRestrictions(NSArchiveRestrictionInfo\[])

```crmscript theme={null}
Void SetRestrictions(NSArchiveRestrictionInfo[] restrictions)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSCriteriaInformation thing;
NSArchiveRestrictionInfo[] restrictions;
thing.SetRestrictions(restrictions);
```


## Related topics

- [NSFindAgent](/en/automation/crmscript/reference/CRMScript.NetServer.NSFindAgent.md)
- [Namespace CRMScript.NetServer](/en/automation/crmscript/reference/CRMScript.NetServer.md)
- [Get Criteria Information](/en/api/reference/restful/agent/find_agent/get-criteria-information.md)
- [Get Criteria Information With Context](/en/api/reference/restful/agent/find_agent/get-criteria-information-with-context.md)
- [Save Restrictions And Get Criteria Information](/en/api/reference/restful/agent/find_agent/save-restrictions-and-get-criteria-information.md)
- [Get Specified Criteria Information With Defaults](/en/api/reference/restful/agent/find_agent/get-specified-criteria-information-with-defaults.md)
