Products

Products are the sellable catalog items that you expose to guests. A product combines a unit type, rate configuration, target inventory goals, and optional services into one offer that can be used in your booking flows.

Products sit under Product Groups. Product groups define shared commercial controls, while products represent the individual offers within those groups.

Key Concepts

Product composition

A product combines:

  • A unit type (unitType)

  • A product group (productGroup)

  • A rate (rate) with interval and rate calendars

  • Target inventory settings (targetUnitCount, targetOccupancyPercentage)

  • Optional and included services

Product types

CatalogProductProductTypeEnum defines the product category:

Value
Description

MULTI_FAMILY

Product configured for multi-family use cases

SHORT_STAY

Product configured for short stay use cases

STUDENT

Product configured for student use cases

Rate intervals

CatalogRateIntervalEnum controls the pricing interval:

Value
Description

MONTHLY

Monthly pricing

NIGHTLY

Nightly pricing

WEEKLY

Weekly pricing

GraphQL API

Types

Product

Field
Type
Description

id

ID!

Product identifier

targetUnitCount

Int!

Target number of units for this product

targetOccupancyPercentage

Float!

Target occupancy percentage for this product

productGroup

ProductGroup!

Product group the product belongs to

productGroupId

ID!

Product group identifier, deprecated in favor of productGroup.id

unitType

UnitType

Unit type linked to the product

rate

ProductRate

Rate linked to the product

services

ProductServiceConnection!

Services currently selected for the product

eligibleServices

ServiceConnection!

Services that can be added to the product

allocatedUnits

AllocatedUnitConnection!

Units allocated to the product

ProductRate

Field
Type
Description

id

ID!

Product rate identifier

interval

CatalogRateIntervalEnum!

Rate interval (MONTHLY, NIGHTLY, WEEKLY)

productId

ID

Related product identifier

ProductService

Field
Type
Description

id

ID!

Product service identifier

service

Service!

Referenced service

serviceOffering

CatalogProductServiceOfferingEnum!

Whether the service is included or optional

createdAt

ISO8601DateTime!

Creation timestamp

updatedAt

ISO8601DateTime!

Last update timestamp

Queries

Get a product

List products in a product group

Mutations

Create a product

Required fields for product in CreateProductMutationInput:

Field
Type

name

String!

productGroupId

ID!

productType

CatalogProductProductTypeEnum!

targetUnitCount

Int!

unitTypeId

ID!

rate

CreateRateInput!

Update a product

Required fields for UpdateProductMutationInput:

Field
Type

productId

ID!

product

ProductUpdateInput!

Delete a product

Required fields for DeleteProductMutationInput:

Field
Type

productId

ID!

Tip: The Catalog product namespace also supports service management (addServices, removeService, updateService) and unit allocation (allocateUnits, unallocateUnits), plus rate updates through catalog.rate.update.

MCP Tools

If you use MCP, these tools are relevant:

See Tools for setup and full tool coverage.

Relationships

  • A product belongs to a Product Groups

  • A product references a Unit Types

  • A product includes rate information that works with Pricing

  • Product details are used as part of the Flow booking flow

Last updated