---
title: "VariantGroups"
description: "VariantGroups"
url: "https://www.contentstack.com/docs/developers/sdks/content-management-sdk/dot-net/reference/variantgroups"
product: "Contentstack"
doc_type: "guide"
audience:
  - developers
  - admins
version: "current"
last_updated: "2026-09-06"
---

# VariantGroups

## VariantGroups

Variants in Contentstack provides an overview of variant groups and linked content types, which are used for content personalization. Linking content types to variant groups allows you to create entry variants.

## Find

The Find Variant Groups returns a list of all variant groups linked to your stack.

```
using Contentstack.Management.Core;
using Contentstack.Management.Core.Models;

ContentstackClient client = new ContentstackClient("<AUTHTOKEN>");
ContentstackResponse contentstackResponse = client.Stack("<API_KEY>").VariantGroups().Find();
```

Query parameter collection

## FindAsync

The FindAsync Variant Groups returns a list of all variant groups linked to your stack.

```
using Contentstack.Management.Core;
using Contentstack.Management.Core.Models;

ContentstackClient client = new ContentstackClient("<AUTHTOKEN>");
ContentstackResponse contentstackResponse = await client.Stack("<API_KEY>").VariantGroups().Find();
```

Query parameter collection

## LinkContentTypes

The LinkContentTypes method allows you to link content types to your variant group.

```
using Contentstack.Management.Core;
using Contentstack.Management.Core.Models;

ContentstackClient client = new ContentstackClient("<AUTHTOKEN>");
List<string> contentTypeUids = new List<string> { "content_type_uid_1", "content_type_uid_2" };
ContentstackResponse contentstackResponse = client.Stack("<API_KEY>").VariantGroups("<VARIANT_GROUP_UID>").LinkContentTypes(contentTypeUids);
```

List of content type UIDs to be linked to the variant group

Query parameter collection

## LinkContentTypesAsync

The LinkContentTypesAsync method allows you to link content types to your variant group.

```
using Contentstack.Management.Core;
using Contentstack.Management.Core.Models;

ContentstackClient client = new ContentstackClient("<AUTHTOKEN>");
List<string> contentTypeUids = new List<string> { "content_type_uid_1", "content_type_uid_2" };
ContentstackResponse contentstackResponse = await client.Stack("<API_KEY>").VariantGroups("<VARIANT_GROUP_UID>").LinkContentTypesAsync(contentTypeUids);
```

List of content type UIDs to be linked to the variant group

Query parameter collection

## UnlinkContentTypes

The UnlinkContentTypes method allows you to unlink content types to your variant group.

```
using Contentstack.Management.Core;
using Contentstack.Management.Core.Models;

ContentstackClient client = new ContentstackClient("<AUTHTOKEN>");
List<string> contentTypeUids = new List<string> { "content_type_uid_1", "content_type_uid_2" };
ContentstackResponse contentstackResponse = client.Stack("<API_KEY>").VariantGroups("<VARIANT_GROUP_UID>").UnlinkContentTypes(contentTypeUids);
```

List of content type UIDs to be linked to the variant group

Query parameter collection

## UnlinkContentTypesAsync

The UnlinkContentTypesAsync method allows you to unlink content types to your variant group.

```
using Contentstack.Management.Core;
using Contentstack.Management.Core.Models;

ContentstackClient client = new ContentstackClient("<AUTHTOKEN>");
List<string> contentTypeUids = new List<string> { "content_type_uid_1", "content_type_uid_2" };
ContentstackResponse contentstackResponse = await client.Stack("<API_KEY>").VariantGroups("<VARIANT_GROUP_UID>").UnlinkContentTypesAsync(contentTypeUids);
```

List of content type UIDs to be linked to the variant group

Query parameter collection

## VariantGroups | .NET Management SDK | Contentstack

VariantGroups link content types for content personalization, letting you create entry variants in the .NET Management SDK.