> Portal Navigation:
> 
> - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version.
> - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages).
> - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`).
> - Top-level index of all portals: https://dev.wix.com/docs/llms.txt
> - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt

## Resource: Introduction

## Article: Introduction

## Article Link: https://dev.wix.com/docs/api-reference/wix-backoffice/dev-center-platform/components/components-catalog/introduction.md

## Article Content:

# About the App Extension Types API

The App Extension Types API lets you retrieve display metadata for component types that are available for apps. Use this metadata to understand which extension types can be shown to developers and how each type should be presented before creating or validating app components.

In Wix app documentation and the App Dashboard, components are referred to as **extensions**. The App Extension Types API returns metadata for component types, which correspond to extension types shown in the App Dashboard and other Wix app documentation.

With the App Extension Types API, you can retrieve:

- Component type identifiers.
- Display names and labels.
- Descriptions and learn-more links.
- Component type attributes, such as whether a type is singular, non-updatable, or non-deletable.
- Example component data when available.

## How the catalog relates to components

Each component has a type, such as a page or widget. Component types are defined by Wix and may have type-specific validation, enrichment, and display metadata.

Use the catalog before creating or validating components when you need to show available component types, explain type behavior, or prepare a component payload for a developer workflow.

## Component type attributes

Component type attributes describe basic rules enforced by the App Extensions API:

- **Singular:** Only one component of this type can exist per app.
- **Non-updatable:** The component's data can't be changed.
- **Non-deletable:** The component can't be deleted.

## Before you begin

It's important to note the following points before starting to code:

- Component types are defined by Wix. Use the catalog to retrieve display metadata for available types, not to create new component types.
- Not every component type returns example component data.
- The component `type` maps to the matching lower-case `ComponentData` oneof variant when creating or validating a component.

## Use cases

- [Discover component types before creating components](https://dev.wix.com/docs/api-reference/app-management/app-extensions/app-extension-types/sample-flows.md)

## Terminology

- **Extension:** Product-facing term for a component in Wix app documentation and the App Dashboard.
- **Component:** A versioned building block of an app, such as a page, widget, or webhook.
- **Component type:** The kind of component, such as a page or widget. Defined by Wix.
- **Display metadata:** Component type information used to present extension types to developers, such as display names, labels, descriptions, and learn-more links.

@sdk_package_setup