# BUYProduct Class Reference

Inherits from | BUYObject : NSObject
Declared in | BUYProduct.h

## Overview

A BUYProduct is an individual item for sale in a Shopify shop.

### `productId`

The product ID

`@property (nonatomic, readonly, copy) NSNumber *productId`

#### Declared In

`BUYProduct.h`

### `title`

The name of the product. In a shop’s catalog, clicking on a product’s title takes you to that product’s page. On a product’s page, the product’s title typically appears in a large font.

`@property (nonatomic, readonly, copy) NSString *title`

#### Declared In

`BUYProduct.h`

### `handle`

The handle of the product. Can be used to construct links to the web page for the product

`@property (nonatomic, readonly, copy) NSString *handle`

#### Declared In

`BUYProduct.h`

### `vendor`

The name of the vendor of the product.

`@property (nonatomic, readonly, copy) NSString *vendor`

#### Declared In

`BUYProduct.h`

### `productType`

A categorization that a product can be tagged with, commonly used for filtering and searching.

`@property (nonatomic, readonly, copy) NSString *productType`

#### Declared In

`BUYProduct.h`

### `variants`

A list of BUYProductVariant objects, each one representing a slightly different version of the product.

`@property (nonatomic, readonly, copy) NSArray<BUYProductVariant*> *variants`

#### Declared In

`BUYProduct.h`

### `images`

A list of BUYImage objects, each one representing an image associated with the product.

`@property (nonatomic, readonly, copy) NSArray<BUYImage*> *images`

#### Declared In

`BUYProduct.h`

### `options`

Custom product property names like “Size”, “Color”, and “Material”. Products are based on permutations of these options. A product may have a maximum of 3 options. 255 characters limit each.

`@property (nonatomic, readonly, copy) NSArray<BUYOption*> *options`

#### Declared In

`BUYProduct.h`

### `htmlDescription`

The description of the product, complete with HTML formatting.

`@property (nonatomic, readonly, copy) NSString *htmlDescription`

#### Declared In

`BUYProduct.h`

### `available`

If the product is in stock (see each variant for their specific availability)

`@property (nonatomic, readonly, assign) BOOL available`

#### Declared In

`BUYProduct.h`

### `tags`

A categorization that a product can be tagged with, commonly used for filtering and searching. Each tag has a character limit of 255.

`@property (nonatomic, readonly, copy) NSSet<NSString*> *tags`

#### Declared In

`BUYProduct.h`

### `published`

The product is published on the current sales channel

`@property (nonatomic, readonly, assign) BOOL published`

#### Declared In

`BUYProduct.h`

### `createdAtDate`

The creation date for a product

`@property (nonatomic, readonly, copy) NSDate *createdAtDate`

#### Declared In

`BUYProduct.h`

### `updatedAtDate`

The updated date for a product

`@property (nonatomic, readonly, copy) NSDate *updatedAtDate`

#### Declared In

`BUYProduct.h`

### `publishedAtDate`

The publish date for a product

`@property (nonatomic, readonly, copy) NSDate *publishedAtDate`

#### Declared In

`BUYProduct.h`