Skip to main content

DPCModel

Version: v19.0.0

Stored entity

Partition key pk, sort key sk

Overview

DPC Model - Complete DynamoDB structure

Fields

FieldTypeRequiredDefaultDescription
pkstr
skstr
typestr
dpc_schema_versionstr
idstr
dpc_numberstr
created_atstr
updated_atstr
is_system_wideboolFalse
tenant_idstr
part_typestr
part_type_idstr
more_precise_part_typestr
more_precise_part_type_idstr
part_numbersList[PartNumber][]
superseded_part_numbersList[PartNumber][]
interchangeable_part_numbersList[PartNumber][]
weight_gfloat
height_mmfloat
length_mmfloat
width_mmfloat
is_deletedboolFalse
deleted_atstr
is_universal_fitmentboolFalse
part_attributesList[PartAttribute][]
fitmentList[Fitment][]
interchangeable_partsList[InterchangeablePart][]
imagesList[Image][]
applicable_regionsList[ApplicableRegion][]
dpc_sourceDPCSourceEnum
additional_notesstr
titlestr
images_statusDPCImagesStatus

Embedded models

Models embedded in the fields above — shown inline; they have no separate page.

PartNumber — v2.0.0
FieldTypeRequiredDefaultDescription
part_numberstr
part_number_cleanstr

Change history

  • v2.0.0 · 2025-10-24 · Olaniyi Ajayi · Removed field is_primary (breaking).; Removed field manufacturer (breaking).; Removed field number (breaking).; Added required field part_number.; Added required field part_number_clean. (bd5ef3280)
  • v1.0.0 · 2025-10-02 · Olaniyi Ajayi · Initial version. (310a3b54d)
PartAttribute — v4.0.0
FieldTypeRequiredDefaultDescription
value`strboolintfloat`
value_typeValueTypeEnum (STRING, FLOAT, INTEGER, BOOLEAN)Value Type Enum for attributes
display_namestr
created_atstr
updated_atstr

Change history

  • v4.0.0 · 2025-12-22 · Olaniyi Ajayi · Field value type changed: str → Union[str, bool, int, float] (breaking). (72439152a)
  • v3.0.0 · 2025-10-24 · Olaniyi Ajayi · Removed field id (breaking).; Removed field name (breaking).; Removed field values (breaking).; Added optional field created_at.; Added required field display_name.; Added optional field updated_at.; Added required field value.; Added required field value_type. (bd5ef3280)
  • v2.0.0 · 2025-10-17 · Olaniyi Ajayi · Removed field created_at (breaking).; Removed field description (breaking).; Removed field updated_at (breaking). (d69979131)
  • v1.0.0 · 2025-10-02 · Olaniyi Ajayi · Initial version. (310a3b54d)
InterchangeablePart — v3.0.0
FieldTypeRequiredDefaultDescription
idstr
dpc_idstr
dpc_numberstr
interchange_sourceInterchangeSourceEnum (SATURN, TENANT, DISMANTLY_RESEARCHED)SATURNInterchange source.
is_exact_interchangebool
relationship_typeInterchangeRelationshipTypeEnum (DIRECT_SUBSTITUTE, CONDITIONAL_SUBSTITUTE, DIRECTIONAL_SUBSTITUTE, COMPONENT_FULFILLMENT)Interchange relationship type.
substitution_directionInterchangeSubstitutionDirectionEnum
display_notestr
check_notesList[str]
created_atstr
updated_atstr

Change history

  • v3.0.0 · 2026-05-17 · Cian (shared account) · Removed field notes (breaking).; Removed field part_type (breaking).; Removed field part_type_id (breaking).; Added required field check_notes.; Added optional field display_note.; Added required field dpc_id.; Added optional field interchange_source.; Added required field relationship_type.; Added optional field substitution_direction.; Field created_at became required (breaking).; Field created_at default changed: Field(default_factory=lambda : datetime.now(timezone.utc).isoformat()) → None.; Field is_exact_interchange became required (breaking).; Field is_exact_interchange default changed: False → None.; Field updated_at became required (breaking).; Field updated_at default changed: Field(default_factory=lambda : datetime.now(timezone.utc).isoformat()) → None. (1ee3bc2c6)
  • v2.0.0 · 2025-10-24 · Olaniyi Ajayi · Removed field is_in_exact_interchange (breaking).; Added optional field is_exact_interchange.; Field dpc_number type changed: Optional[str] → str (breaking).; Field dpc_number became required (breaking).; Field id became required (breaking).; Field id default changed: Field(default_factory=lambda : str(uuid4())) → None. (bd5ef3280)
  • v1.0.0 · 2025-10-02 · Olaniyi Ajayi · Initial version. (310a3b54d)
Image — v1.0.0
FieldTypeRequiredDefaultDescription
urlstr
orderint
is_privateboolFalse

Change history

  • v1.0.0 · 2025-10-02 · Olaniyi Ajayi · Initial version. (310a3b54d)
ApplicableRegion — v2.2.0
FieldTypeRequiredDefaultDescription
country_codeCountryCodeEnum (NZ, AUS, SA, US, GB, JP, IND, DNK)Country Code Enum for applicable regions
created_atstr

Change history

  • v2.2.0 · 2026-06-07 · Cian (shared account) · Field country_code enum value SA added. (01a5f766a)
  • v2.1.0 · 2025-11-07 · Cian (shared account) · Field country_code enum value DNK added.; Field country_code enum value IND added. (3d5227b6d)
  • v2.0.0 · 2025-11-05 · Cian (shared account) · Field country_code enum value UK removed (breaking).; Field country_code enum value GB added. (364e097e2)
  • v1.0.0 · 2025-10-24 · Olaniyi Ajayi · Initial version. (bd5ef3280)

APIs / Triggers

TriggerEndpoint / SourceDetailHandler
APIPOST /src/dpc_post.py

Change history

v19.0.0 · 2026-05-21 · Cian (shared account) · 5dc069f60

Refactor DPC models and update interchangeable parts handling for improved compatibility and clarity. Introduce new utility functions for ISO datetime parsing and nested row management in validation processes.

  • Field interchangeable_parts type changed: List[DPCInterchangeablePart] → List[InterchangeablePart] (breaking).
v18.0.0 · 2026-05-17 · Cian (shared account) · bc3538fd9

Add interchange group GET endpoint

  • Field interchangeable_parts type changed: List[InterchangeablePart] → List[DPCInterchangeablePart] (breaking).
v17.0.0 · 2026-05-21 · Cian (shared account) · 1769b7342

Refactor DPC models and update interchangeable parts handling for improved compatibility and clarity. Introduce new utility functions for ISO datetime parsing and nested row management in validation processes.

  • Field interchangeable_parts type changed: List[DPCInterchangeablePart] → List[InterchangeablePart] (breaking).
v16.0.0 · 2026-05-17 · Cian (shared account) · 1ee3bc2c6

Add interchange group GET endpoint

  • Field interchangeable_parts type changed: List[InterchangeablePart] → List[DPCInterchangeablePart] (breaking).
v15.2.0 · 2026-05-09 · Cian (shared account) · abf653e48

Consolidate image processing into deterministic handlers

  • Added optional field images_status.
v15.1.0 · 2026-03-13 · genius-autos-dev · 7234c1087

Add more precise part type fields to DPC models and update related functions

  • Added optional field more_precise_part_type.
  • Added optional field more_precise_part_type_id.
v15.0.0 · 2026-03-11 · Cian (shared account) · 8abd4a54a

Add DPCStockLimit model and related functions for stock limit management

  • Removed field stock_limit (breaking).
v14.0.0 · 2026-03-11 · Cian (shared account) · aba260abe

Add interchangeable_part_numbers field to DPC models and update related functions

  • Removed field applicable_years (breaking).
  • Removed field model_aliases (breaking).
  • Removed field month_from (breaking).
  • Removed field month_to (breaking).
  • Removed field veh_make (breaking).
  • Removed field veh_make_id (breaking).
  • Removed field veh_make_model (breaking).
  • Removed field veh_model (breaking).
  • Removed field veh_model_id (breaking).
  • Removed field vehicle_attributes (breaking).
  • Removed field year_from (breaking).
  • Removed field year_to (breaking).
  • Added optional field interchangeable_part_numbers.
  • Added optional field stock_limit.
v13.0.0 · 2026-03-07 · Clifford Usidamen · 7c5f4ca1e

added dpc and vehicle images

  • Removed field stock_limit (breaking).
  • Added optional field applicable_years.
  • Added optional field model_aliases.
  • Added optional field month_from.
  • Added optional field month_to.
  • Added optional field veh_make.
  • Added optional field veh_make_id.
  • Added optional field veh_make_model.
  • Added optional field veh_model.
  • Added optional field veh_model_id.
  • Added optional field vehicle_attributes.
  • Added optional field year_from.
  • Added optional field year_to.
v12.0.0 · 2026-03-06 · Cian (shared account) · 1808b0b9a

refactor(dpc): split put lambdas and migrate fitment-first schema

  • Removed field applicable_years (breaking).
  • Removed field model_aliases (breaking).
  • Removed field month_from (breaking).
  • Removed field month_to (breaking).
  • Removed field veh_make (breaking).
  • Removed field veh_make_id (breaking).
  • Removed field veh_make_model (breaking).
  • Removed field veh_model (breaking).
  • Removed field veh_model_id (breaking).
  • Removed field vehicle_attributes (breaking).
  • Removed field year_from (breaking).
  • Removed field year_to (breaking).
v11.1.0 · 2026-03-06 · Cian (shared account) · e6e7eb19b

feat(dpc): add custom/system-wide update contracts

  • Added optional field stock_limit.
v11.0.0 · 2026-02-21 · Cian (shared account) · ebc6ae8ef

Decouple ebay fitments into EBAY_FITMENT records

  • Removed field ebay_fitments (breaking).
v10.0.0 · 2026-02-21 · Cian (shared account) · 361b064be

Update ebay_fitments type annotations to List[EbayFitment] and change logging level from info to warning in dpc_post.py for improved clarity and error handling.

  • Field ebay_fitments type changed: list → List[EbayFitment] (breaking).
v9.1.0 · 2026-01-26 · Cian (shared account) · bfd9298b6

feat(models): Add title field to DPC models and update build functions

  • Added optional field title.
v9.0.0 · 2025-12-22 · Olaniyi Ajayi · 72439152a

fx

  • Field ebay_fitments type changed: List[EbayFitment] → list (breaking).
v8.0.0 · 2025-11-04 · Cian (shared account) · a27e5f27a

fx

  • Field month_from type changed: Optional[str] → Optional[int] (breaking).
  • Field month_to type changed: Optional[str] → Optional[int] (breaking).
  • Field year_from type changed: Optional[str] → Optional[int] (breaking).
  • Field year_to type changed: Optional[str] → Optional[int] (breaking).
v7.0.0 · 2025-11-03 · Olaniyi Ajayi · aeeedac4f

pricing fx

  • Removed field supersedded_part_numbers (breaking).
  • Added optional field superseded_part_numbers.
  • Field ebay_fitments type changed: list → List[EbayFitment] (breaking).
v6.0.0 · 2025-10-30 · Cian (shared account) · 662787d9a

Revert "Dev v5"

  • Removed field superseded_part_numbers (breaking).
  • Added optional field supersedded_part_numbers.
  • Field ebay_fitments type changed: List[EbayFitment] → list (breaking).
v5.0.0 · 2025-10-30 · Olaniyi Ajayi · 086cd860d

fx

  • Removed field supersedded_part_numbers (breaking).
  • Added optional field superseded_part_numbers.
v4.0.0 · 2025-10-29 · Your Name · 4deeb48c2

fx

  • Field ebay_fitments type changed: list → List[EbayFitment] (breaking).
v3.1.0 · 2025-10-29 · Olaniyi Ajayi · fba40b748

fx

  • Added optional field ebay_fitments.
v3.0.0 · 2025-10-24 · Olaniyi Ajayi · bd5ef3280

updated dpc model

  • Removed field dpc_id (breaking).
  • Removed field height (breaking).
  • Removed field height_metric (breaking).
  • Removed field is_reported (breaking).
  • Removed field length (breaking).
  • Removed field length_metric (breaking).
  • Removed field oem_part_numbers (breaking).
  • Removed field pricing (breaking).
  • Removed field superseded_part_numbers (breaking).
  • Removed field weight (breaking).
  • Removed field weight_metric (breaking).
  • Removed field width (breaking).
  • Removed field width_metric (breaking).
  • Added optional field applicable_regions.
  • Added optional field applicable_years.
  • Added optional field dpc_source.
  • Added optional field height_mm.
  • Added required field id.
  • Added optional field length_mm.
  • Added optional field model_aliases.
  • Added optional field supersedded_part_numbers.
  • Added optional field veh_make_model.
  • Added optional field weight_g.
  • Added optional field width_mm.
  • Field fitment type changed: Optional[List[Fitment]] → List[Fitment] (breaking).
  • Field images became optional.
  • Field images default changed: None → [].
  • Field interchangeable_parts became optional.
  • Field interchangeable_parts default changed: None → [].
  • Field is_deleted became optional.
  • Field is_deleted default changed: None → False.
  • Field is_system_wide type changed: Optional[bool] → bool (breaking).
  • Field is_universal_fitment became optional.
  • Field is_universal_fitment default changed: None → False.
  • Field month_from type changed: Optional[int] → Optional[str] (breaking).
  • Field month_to type changed: Optional[int] → Optional[str] (breaking).
  • Field part_attributes became optional.
  • Field part_attributes default changed: None → [].
  • Field part_numbers became optional.
  • Field part_numbers default changed: None → [].
  • Field vehicle_attributes became optional.
  • Field vehicle_attributes default changed: None → [].
  • Field year_from type changed: Optional[int] → Optional[str] (breaking).
  • Field year_to type changed: Optional[int] → Optional[str] (breaking).
v2.2.0 · 2025-10-22 · Olaniyi Ajayi · 8d6556c72

added additional notes to dpc model

  • Added optional field additional_notes.
v2.1.0 · 2025-10-17 · Olaniyi Ajayi · d69979131

fix

  • Added optional field is_reported.
  • Added optional field oem_part_numbers.
  • Added optional field superseded_part_numbers.
v2.0.0 · 2025-10-03 · Olaniyi Ajayi · de10e3bc5

fx

  • Removed field id (breaking).
  • Added required field dpc_id.
  • Field is_system_wide type changed: bool → Optional[bool] (breaking).
  • Field is_system_wide became optional.
  • Field is_system_wide default changed: None → False.
v1.0.0 · 2025-10-02 · Olaniyi Ajayi · 310a3b54d

init

  • Initial version.

Generated from dismantly-backend/Microservices/DismantlyPartCatalog/dependencies/models.py. Do not edit by hand.

Models last synced: 2026-06-23 13:21 UTC