Skip to content

Questions and Clarifications

Open questions and concerns about the inRiver export format that need clarification from Aperture Labs.

Data Structure Concerns

Issue: ChannelNode entities contain OutboundLinks arrays listing all products in that category.

Observed: Sample ChannelNode (50714) has 9 products in OutboundLinks array.

Concern:

  • Production categories could have thousands of products
  • Large OutboundLinks arrays could cause:
    • Memory issues when parsing
    • Slow processing times
    • Network transfer overhead
    • Difficulty with incremental updates

Questions:

  1. What is the expected maximum number of products per category?
  2. Are there categories with 1000+ products?
  3. Is there a pagination or chunking strategy for large categories?
  4. Would it be more efficient to:
    • Only include InboundLinks on Products (not OutboundLinks on ChannelNodes)?
    • Provide a separate ChannelNode-Product mapping file?
    • Paginate large OutboundLinks arrays?

Impact: E-commerce systems need to plan for memory and processing requirements based on maximum category sizes.

Status: ⏳ Awaiting response from Aperture Labs


Delivery and Updates

Delta Update Strategy

Question: How are deletions handled in delta updates?

Context: Technical spec mentions "Delta updates only" for entity exports.

✅ RESOLVED (April 15, 2026): Deletions are communicated via "Deleted": true flag on the entity record. Deleted products have null Attributes, empty Items/Resources/InboundLinks arrays. ETL should remove these products from the target system.

json
{"EntityTypeId": "Product", "EntityId": 647401, "Deleted": true}

Confirmed: All 1,788 empty products in Gemaire sample had Deleted: true. No false positives.

Remaining questions:

  1. How are removed category assignments (link deletions) communicated?
  2. Are item-level deletions handled the same way?

Status: ✅ Partially resolved


File Format

AttributeFile Frequency

Confirmed: Daily system-wide AttributeFile delivery

Questions:

  1. What time of day is the AttributeFile delivered?
  2. Should consumers wait for AttributeFile before processing entity updates?
  3. How are new attributes communicated mid-day if entities use them?

Status: ⏳ Awaiting response


Business Unit Organization

Sub-Business Unit File Separation

Question: Are inRiver exports separated by sub-business units?

Context: Watsco has business units with sub-units:

  • Baker Distributing (BK) - single unit
  • Gemaire (GM) - single unit
  • East Coast Metal Distributors (EC) - single unit
  • Carrier Enterprise with sub-units:
    • Carrier Enterprise Florida (CEFL)
    • Carrier Enterprise Mid-Atlantic (CEMA)
    • Carrier Enterprise Southeast (CESE)

✅ PARTIALLY RESOLVED (April 15, 2026): Gemaire BU-specific export received in gemaire/ subdirectory with its own JSONL files. This confirms BU-level separation exists.

Observations:

  • Gemaire export: 3,969 products (2,181 active + 1,788 deleted)
  • Naming convention differs from non-BU exports (no channel ID, includes milliseconds)
  • BU exports appear to be in separate directories

Remaining questions:

  1. Will all BUs follow the same directory/naming pattern?
  2. How are Carrier Enterprise sub-units handled?
  3. What determines the naming convention difference?

Status: ✅ Partially resolved


Last Updated: April 15, 2026
Contact: Brandon Spor (Aperture Labs)