# Catalog

## GraphQL partial SDLs

This is a graphql reference page. In the llms.txt variant, those components link to the shared partial SDL key list instead of trying to resolve inline GraphQL reference content.

Fetch all available partial SDL keys first:

```text
GET https://docs.commercetools.com/apis/rest/content/by-id?id=ctp:gql-il:returnTypesList
```

Then fetch the one or more relevant partial SDL with a key from that list by calling the same endpoint with a schema ID:

```text
GET https://docs.commercetools.com/apis/rest/content/by-id?id=ctp:gql-il:schema:<key>
```

The response body is a JSON object keyed by the requested content ID. For example, the key-list request returns a `ctp:gql-il:returnTypesList` field and a schema request returns a `ctp:gql-il:schema:<key>` field.

**Read Products and Categories with the Core Subgraph.**

### Queries

#### Get Product by ID, SKU, or slug

[fetch SDL for query product](#graphql-partial-sdls).

#### Query Products

[fetch SDL for query products](#graphql-partial-sdls).

#### Search Products

[fetch SDL for query search](#graphql-partial-sdls).

#### Query Categories

[fetch SDL for query categories](#graphql-partial-sdls).

#### Get Category by ID or slug

[fetch SDL for query category](#graphql-partial-sdls).

### Output types

#### Product

[fetch SDL for type Product](#graphql-partial-sdls).

#### Product Variant

[fetch SDL for type ProductVariant](#graphql-partial-sdls).

#### Discounted Price

[fetch SDL for type DiscountedPrice](#graphql-partial-sdls).

#### Asset

[fetch SDL for type Asset](#graphql-partial-sdls).

#### Asset Source

[fetch SDL for type AssetSource](#graphql-partial-sdls).

#### Selected Option

[fetch SDL for type SelectedOption](#graphql-partial-sdls).

#### Price Tier

[fetch SDL for type PriceTier](#graphql-partial-sdls).

#### Product Option

[fetch SDL for type ProductOption](#graphql-partial-sdls).

#### Product Option Value

[fetch SDL for type ProductOptionValue](#graphql-partial-sdls).

#### Attribute Label

[fetch SDL for type AttributeLabel](#graphql-partial-sdls).

#### Category

[fetch SDL for type Category](#graphql-partial-sdls).

#### Product Connection

[fetch SDL for type ProductConnection](#graphql-partial-sdls).

#### Product Edge

[fetch SDL for type ProductEdge](#graphql-partial-sdls).

#### Product Search Connection

[fetch SDL for type ProductSearchConnection](#graphql-partial-sdls).

#### Facet

[fetch SDL for type Facet](#graphql-partial-sdls).

#### Facet Option

[fetch SDL for type FacetOption](#graphql-partial-sdls).

#### Attribute Filter Operator

[fetch SDL for type AttributeFilterOperator](#graphql-partial-sdls).

#### Product Sort Field

[fetch SDL for type ProductSortField](#graphql-partial-sdls).

#### Search Query Mode

[fetch SDL for type SearchQueryMode](#graphql-partial-sdls).

### Input types

#### Product Filter

[fetch SDL for type ProductFilter](#graphql-partial-sdls).

#### Attribute Filter Input

[fetch SDL for type AttributeFilterInput](#graphql-partial-sdls).

#### Attribute Range Filter Input

[fetch SDL for type AttributeRangeFilterInput](#graphql-partial-sdls).

#### Product Sort

[fetch SDL for type ProductSort](#graphql-partial-sdls).

## Related pages

- [Area overview page with navigation](/commerce-integration-layer.md)
- [Previous page: Common types](/commerce-integration-layer/experience/common-types.md)
- [Next page: Cart](/commerce-integration-layer/experience/cart.md)
- [Search documentation and API specs](/search.md)