---
title: "API: listVariants"
slug: "api-listvariants"
tags: ["ecommerce", "variants", "subscriptions"]
updated: 2024-11-04T16:57:39Z
published: 2024-11-04T16:57:39Z
canonical: "support.smarteru.com/api-listvariants"
---

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

# API: listVariants

- Starting June 1, 2022, SmarterU will require all API calls to POST to HTTPS. Any POST to HTTP will result in the SU:01 error (i.e., No POST data detected.).
- If you are viewing the help in a language other than English, please change your language to English before copying and pasting any code. All API attributes and functions are in English.
- Tags are required unless specified.

## Description

The listVariants method returns all [variants](/v1/docs/variants) for the provided [subscription](/v1/docs/subscriptions).

## Who Has Access

[Administrators and owners](https://support.smarteru.com/docs/user-profile-information#access-level) have access to the listVariants method.

## API Call XML Package

```markup
<SmarterU>
   <AccountAPI><![CDATA[]]></AccountAPI>
   <UserAPI><![CDATA[]]></UserAPI>
   <Method>listVariants</Method>
 
   <Parameters>
      <SubscriptionVariant>
         <SubscriptionID><![CDATA[]]></SubscriptionID>
      </SubscriptionVariant>
   </Parameters>
 
</SmarterU>
```

## SubscriptionVariant Tag Group

The SubscriptionVariant tag group is a container for the subscriptions.

```markup
<SubscriptionVariant>
   <SubscriptionID><![CDATA[]]></SubscriptionID>
</SubscriptionVariant>
```

The SubscriptionVariant tag contains the following.

### SubscriptionID

The subscription's system-generated identifier. This is the SubscriptionID returned by the [listSubscriptions](/v1/docs/api-listsubscriptions) method.

## API Response XML Package

The [API response XML package](/v1/docs/api-response-xml-package) will always include a Result, Info, and [Errors](/v1/docs/api-listvariants#error-codes) tag.

```markup
<SmarterU>
   <Result></Result>
   <Info>
      <Variants>
         <Variant>
            <Name>![CDATA[]]</Name>
            <VariantID>![CDATA[]]</VariantID>
            <Duration>![CDATA[]]</Duration>
            <DurationDays>![CDATA[]]</DurationDays>
            <DurationStart>![CDATA[]]</DurationStart>
            <DurationEnd>![CDATA[]]</DurationEnd>
            <SKU>![CDATA[]]</SKU>
            <eCommerce>![CDATA[]]</eCommerce>
            <Status>![CDATA[]]</Status>
         </Variant>
      </Variants>
   </Info>

   <Errors>
      <Error>
         <ErrorID></ErrorID>
         <ErrorMessage></ErrorMessage>
      </Error>
   </Errors>

</SmarterU>
```

The Variants tag is a container for the variants returned by the listVariants method. Each variant is contained in a Variant tag and may contain the following.

### Name

The [variant's name](/v1/docs/variant-main#name-required).

### VariantID

The variant's system-generated identifier. This is an internal identifier that is not accessible via the SmarterU interface.

### Duration

The [variant's duration type](/v1/docs/variant-duration#duration) (i.e., None (Unlimited in the SmarterU interface), Days, Date).

### DurationDays

The [variant's duration in days](/v1/docs/variant-duration#days). This only returns a value when [Duration](/v1/docs/api-listvariants#duration) is set to *Days*.

### DurationStart

The [variant's start date](/v1/docs/variant-duration#start-date). This only returns a value when [Duration](/v1/docs/api-listvariants#duration) is set to *Date*.

### DurationEnd

The [variant's end date](/v1/docs/variant-duration#end-date). This only returns a value when [Duration](/v1/docs/api-listvariants#duration) is set to *Date*.

### SKU

The [variant's SKU](/v1/docs/variant-main#sku-required-if-ecommerce-setting-is-enabled). The tag only exists when [eCommerce is enabled for the account](/v1/docs/account-settings#ecommerce).

### eCommerce

This tag only exists when eCommerce is enabled for the account.

Indicates whether [eCommerce is enabled for the variant](https://help.smarteru.com/variant-main-settings$setting_ecommerce):

- *0* - eCommerce is not enabled for the variant.
- *1* - eCommerce is enabled for the variant.

### Status

The [variant's status](/v1/docs/variant-main#status-required) (i.e., Active or Inactive).

### Example API Response XML Package

Below is an example of an API response XML package.

```markup
<SmarterU>
   <Result>Success</Result>
   <Info>
      <Variants>
         <Variant>
            <Name><![CDATA[14 Days]]></Name>
            <VariantID>16</VariantID>
            <Duration>Days</Duration>
            <DurationDays>14</DurationDays>
            <DurationStart></DurationStart>
            <DurationEnd></DurationEnd>
            <SKU>ADV-4014</SKU>
            <eCommerce>0</eCommerce>
            <Status>Active</Status>        
         </Variant>

         <Variant>
            <Name><![CDATA[1 Year]]></Name>
            <VariantID>979</VariantID>
            <Duration>Days</Duration>
            <DurationDays>365</DurationDays>
            <DurationStart></DurationStart>
            <DurationEnd></DurationEnd>
            <SKU>ADV-4014</SKU>
            <eCommerce>0</eCommerce>
            <Status>Active</Status>        
         </Variant>

      </Variants>
   </Info>
   <Errors>

   </Errors>
</SmarterU>
```

## Error Codes

| Error Code | Message |
| --- | --- |
| LV:02 | The required permissions are not met to call the listVariants method |

## Related

- [Account: Settings](/account-settings.md)
- [API: listSubscriptionLearningModules](/api-listsubscriptionlearningmodules.md)
- [API: listSubscriptions](/api-listsubscriptions.md)
- [Subscriptions](/subscriptions.md)
- [Variants](/variants.md)
