Getting enriched product data onto Unilog product pages
How an enriched attribute moves from Unilog's CX1 PIM through approval workflow and workspace publishing to render in HTML on a live distributor product detail page.

Enriching a product record is only half the job — a spec, use-case, or identifier only earns its keep once it's visible on the live page. On Unilog's CX1 CIMM2 platform, that means understanding three separate layers: the PIM record where the attribute lives, the approval/publishing pipeline that moves it from draft to live, and the CMS/commerce template that decides whether and how it renders in the page's HTML. This guide walks through that path for a single attribute, distributor to distributor.
Where the attribute actually lives
CX1's built-in PIM stores product content as structured item records, not free text. Each item carries core fields (SKU, description, pricing references), taxonomy/category assignments, and a flexible data layer for custom attributes — Unilog's own PIM documentation describes this as a "flexible data module" that lets you "create custom data elements like attributes and fields unique to your products," on top of standard taxonomy management and data-quality tooling (Unilog PIM datasheet).
Two details matter for getting a specific attribute onto a page:
- Attribute-to-category binding. Attributes typically render per category (a "Voltage" attribute makes sense on electrical connectors, not on hand tools). If a new attribute isn't attached to the category/taxonomy node the item lives under, it can be populated in the PIM and still never surface on the storefront.
- Data layers. CX1 supports "data layers" that let you override or supplement individual attributes and descriptions for specific channels or audiences without touching the core record. If your enriched value is meant for one storefront or customer segment only, it likely belongs in a layer rather than the base item.
Unilog now markets the product as a single combined "CX1 CIMM2" offering rather than two distinct admin generations, but exact screen names and menu paths for attribute setup still vary by instance, version, and configuration. Confirm the current path with your Unilog account team or the in-app help before making changes in production.
Getting the attribute into the PIM record
There are three practical ways an enriched attribute value reaches the PIM:
- Manual entry in the PIM admin — fine for one-off corrections, painful at catalog scale.
- Bulk import, typically a spreadsheet/feed load that Unilog's Data Quality Management (DQM) module normalizes and validates into uniform values before it's usable.
- API Toolset — CX1 PIM's add-on API gives developers programmatic
GET,POST, andPATCHaccess to item, brand, and manufacturer data, plus control over taxonomy, approval workflows, and workspace publishing (Unilog CX1 PIM API Toolset datasheet). This is the integration point for any external enrichment source — a PIM sync job, middleware, or an enrichment service pushing updated attribute values on a schedule.
A representative (illustrative — confirm exact endpoint paths, auth, and payload schema against your API Toolset documentation) PATCH to update one attribute on an existing item looks like this:
{
"sku": "CONN-4820",
"attributes": [
{
"name": "Operating Temperature Range",
"value": "-40°F to 185°F",
"attributeGroup": "Electrical Specifications"
}
]
}
Because the API operates on the same item records the admin UI edits, a value pushed this way still has to pass through whatever approval workflow your instance has configured before it's eligible to publish.
From PIM record to published page
CX1 PIM includes an approval-workflow capability and a "workspace publishing" step as part of the API Toolset's core capabilities. Practically, this means an edited or newly added attribute usually sits in a draft/workspace state until someone (or an automated rule) approves it, and then a publish action pushes the workspace's contents live. If your enriched attribute shows up correctly in the PIM admin preview but not on the public site, the workspace hasn't been published yet — that's the first thing to check, before touching template code.
Once published, CIMM2's architecture treats the PIM as one of several "syndication points": the same approved record can feed the live storefront, an ERP, or a print/content feed simultaneously, which is the point of keeping enrichment in the PIM rather than hand-editing the page.
How it binds to the template and renders in HTML
The commerce/CMS module reads the published item record and renders it against a category-level product template. For an attribute to appear on the page, three things generally have to line up:
- It's assigned to an attribute group that the category's product template is configured to display (commonly as a specifications table, filter facet, or comparison row).
- It's flagged for storefront display (some fields exist for internal/ERP use only and are intentionally suppressed on the public page).
- The workspace has been published, per above.
On the rendered page, a typical specs-table output looks like ordinary server-rendered HTML — CIMM2/CX1 storefronts are template-driven, not a client-side SPA, so an attribute that's live should appear directly in the page source, not only after JavaScript executes:
<table class="product-specifications">
<tr>
<th>Operating Temperature Range</th>
<td>-40°F to 185°F</td>
</tr>
</table>
If your build layers on structured data, confirm with your implementation team whether the CX1 template already emits schema.org Product JSON-LD for that attribute (Unilog markets SEO/metadata control as part of the CX1 CIMM2 platform); if it doesn't, adding it is typically a template-level change, not a PIM-level one:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"sku": "CONN-4820",
"additionalProperty": {
"@type": "PropertyValue",
"name": "Operating Temperature Range",
"value": "-40 to 185 F"
}
}
</script>
How to validate
- View-source vs. rendered DOM. Load the live PDP, then use "View Page Source" (not just DevTools' Elements panel, which shows the post-JS DOM). If the attribute is present in the raw source, it's server-rendered and safe to assume search engines and simple crawlers see it too. If it only appears in Elements/Inspector but not View Source, something client-side is injecting it — flag that to your Unilog team, since it changes how discoverable the content is.
curlthe page directly and grep for the attribute name or value, which mirrors what a non-JS crawler retrieves:curl -s https://www.example-distributor.com/products/conn-4820 | grep -i "Operating Temperature"- Check the PIM admin preview against the live URL to confirm the workspace publish actually went out, not just that the record saved.
- Run the live URL through Google's Rich Results Test if you've added or changed JSON-LD, to confirm the markup parses and the property is recognized.
- Spot-check the category facet/filter panel, if the attribute is meant to be filterable — a value can render in the specs table but still be missing from search/facet configuration, which is a separate setup step.
Verified as of July 2026: platform terminology, module names, and API capabilities above are drawn from Unilog's published PIM datasheet and CX1 PIM API Toolset add-on sheet. Unilog does not publish a fully open developer/API reference, and exact admin menu paths, field names, and API schemas are version- and instance-specific — validate against your own CX1 admin and API Toolset documentation before implementation.
This whole path only pays off if the record entering the PIM is worth publishing in the first place. Anglera works upstream of exactly this pipeline: it continuously enriches product attributes, specs, use-cases, and identifiers, then pushes them into your PIM or commerce platform through the same kind of integration surface described above — so the workflow, publishing, and template steps in this guide have rich, accurate data to put in front of buyers and AI agents, not another manual data-entry backlog.
