# Data Overview

Akeneo exposes a rich set of catalog management entities through its API. In Coupler.io, each entity is available as a separate source you can add to a data flow — either individually or combined using Join, Append, or Aggregate transformations.

## Entities at a glance

| Entity            | Best used for                                             |
| ----------------- | --------------------------------------------------------- |
| Products          | Catalog exports, content audits, channel readiness checks |
| Categories        | Category tree analysis, hierarchy mapping                 |
| Families          | Understanding product structure and completeness rules    |
| Family variants   | Variant management, size/color/model breakdowns           |
| Attributes        | Attribute audits, PIM governance reporting                |
| Attribute groups  | Grouping and display order analysis                       |
| Association types | Mapping cross-sell and up-sell relationships              |
| Channels          | Channel coverage and publishing scope                     |
| Locales           | Market and language coverage reporting                    |
| Currencies        | Pricing scope by market                                   |
| Measure families  | Unit consistency checks across attributes                 |

## Products

#### Core product fields

| Field          | Description                                                                    |
| -------------- | ------------------------------------------------------------------------------ |
| `identifier`   | Unique product SKU or code                                                     |
| `family`       | The family this product belongs to                                             |
| `categories`   | List of categories the product is assigned to                                  |
| `enabled`      | Whether the product is active                                                  |
| `created`      | Date the product record was created                                            |
| `updated`      | Date the product record was last modified                                      |
| `associations` | Linked products (cross-sells, up-sells, substitutions)                         |
| `values`       | All attribute values for this product (name, description, price, images, etc.) |

## Categories

#### Category fields

| Field    | Description                          |
| -------- | ------------------------------------ |
| `code`   | Unique category identifier           |
| `parent` | Parent category code (null for root) |
| `labels` | Localized category labels by locale  |

## Families and family variants

#### Family fields

| Field                | Description                                  |
| -------------------- | -------------------------------------------- |
| `code`               | Unique family identifier                     |
| `attributes`         | List of attributes belonging to this family  |
| `attribute_as_label` | Which attribute is used as the product label |
| `attribute_as_image` | Which attribute is used as the main image    |
| `labels`             | Localized family names                       |

#### Family variant fields

| Field                    | Description                               |
| ------------------------ | ----------------------------------------- |
| `code`                   | Unique variant identifier                 |
| `family`                 | Parent family code                        |
| `variant_attribute_sets` | Axes and attributes at each variant level |
| `labels`                 | Localized variant labels                  |

## Attributes and attribute groups

#### Attribute fields

| Field         | Description                                           |
| ------------- | ----------------------------------------------------- |
| `code`        | Unique attribute identifier                           |
| `type`        | Data type (text, number, boolean, image, price, etc.) |
| `group`       | Attribute group this attribute belongs to             |
| `localizable` | Whether the value varies by locale                    |
| `scopable`    | Whether the value varies by channel                   |
| `labels`      | Localized attribute names                             |

## Channels, locales, and currencies

#### Channel fields

| Field           | Description                         |
| --------------- | ----------------------------------- |
| `code`          | Unique channel identifier           |
| `currencies`    | Currencies enabled for this channel |
| `locales`       | Locales enabled for this channel    |
| `category_tree` | Root category used by this channel  |

## Common entity combinations

* **Products + Families** — Join on `family` code to enrich product records with family-level attribute rules
* **Products + Categories** — Join on category codes to build a full hierarchy view of your catalog
* **Attributes + Attribute groups** — Join to produce a complete attribute map with grouping context
* **Channels + Locales + Currencies** — Join to document full market coverage per channel
* **Products from multiple Akeneo instances** — Use Append to combine catalogs from different environments (e.g., staging vs. production)

## Use cases by role

{% tabs %}
{% tab title="Ecommerce managers" %}

* Export the full product catalog to Google Sheets for content review and bulk editing planning
* Track which products are enabled vs. disabled across categories
* Identify products missing key attributes before a channel launch
  {% endtab %}

{% tab title="Data analysts" %}

* Join Products with Families and Attributes in BigQuery to build a normalized product data model
* Aggregate product counts by category, family, or channel for catalog health dashboards in Looker Studio
* Use Append to compare catalog state across time by running periodic snapshots
  {% endtab %}

{% tab title="Content teams" %}

* Pull product `values` (descriptions, names, images) into Google Sheets for copywriting workflows
* Send product data to Claude or ChatGPT via an AI destination to generate or improve product descriptions at scale
* Filter by locale to review translated content completeness per market
  {% endtab %}
  {% endtabs %}

## Platform-specific notes

* Product `values` are returned as nested objects — each attribute value is keyed by attribute code, locale, and channel scope
* Localizable and scopable attributes will have multiple entries in `values` — one per locale/channel combination
* The `associations` field in Products contains arrays of associated product identifiers grouped by association type
* Akeneo Community Edition may have rate limits that affect large catalog exports — see the Common Issues article for guidance
* Family variants define the axes (e.g., color, size) but the actual variant product models are returned as part of the Products entity
