---
title: "POST /api/v1/assemblies.variant-groups.get"
method: POST
path: "/api/v1/assemblies.variant-groups.get"
tags: ["tier1"]
---

# POST /api/v1/assemblies.variant-groups.get

`POST /api/v1/assemblies.variant-groups.get`

## Request

- Base URL: `https://api.partly.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.partly.com/api/v1/assemblies.variant-groups.get`
- Auth: none declared. Required headers: `authorization`

Part slot, side, variant group and mirror for a vehicle's assemblies, keyed by the ids `assemblies.v4.search` returns for the same request. Prepares like the v4 search; staff refreshes are ignored.

## Headers

- `authorization` string, required: UTF-8 encoded string

## Request body

- Tier1AssembliesSearchRequest: Top-level request to search for assemblies for a vehicle. Contains the vehicle identifier and feature/config toggles controlling enrichment of the response.
  - `config` Tier1AssembliesSearchConfig, required: Configuration controlling which enrichment features are applied and how assemblies are represented in the search response. Enable or disable individual features to tailor result richness, performance, and inference quality. Features that add data (e.g. predictions, disambiguations) may increase processing time. All flags are optional but disabling many of them will produce a more basic raw EPC-style result.
    - `apply_diagram_hide_list` boolean: Boolean value
    - `auto_denylist` boolean: Boolean value
    - `dataqa_insert` boolean, required: Boolean value
    - `disambiguations` boolean, required: Boolean value
    - `external_url_to_pnc_codes` boolean, required: Boolean value
    - `fill_std_note_from_raw` boolean: Boolean value
    - `image_segmentation` boolean, required: Boolean value
    - `ingest_oem_image` boolean: Boolean value
    - `is_dataqa_user` boolean, required: Boolean value
    - `languages` StdStringString[]: Ordered list of preferred languages for localized textual fields. Empty => default language.
    - `ml_predictions` boolean, required: Boolean value
    - `ml_threshold` union, required
      - 'repairer'
      - 'service_and_mechanical'
      - integer: 64-bit signed integer
    - `mpn_type` union, required
      - 'oem': OEM format as ingested (may include formatting artifacts).
      - 'normalized': Normalized canonical representation (cleaned / standardized for matching).
      - 'obfuscated': Obfuscated representation (privacy / licensing restricted contexts).
    - `notes_interpretation` boolean, required: Boolean value
    - `only_base_part` boolean: Boolean value
    - `partial_results` boolean: Boolean value
    - `position_prediction` boolean, required: Boolean value
    - `priority` union, required
      - 'foreground'
      - 'background'
    - `receive_raw_properties` boolean: Boolean value
    - `refresh` union
      - 'cached': Use all caches. Normal traffic.
      - object: Clear the E2E bundle (result cache + prepared output) and re-run aggregation + processing over the *cached* provider response. Offline re-queries the DB (fresh); online does NOT re-hit the provider API. `dev_schema` is the dev-env number N pinning `epcviews_dev{N}` to reprocess against instead of the live routed schema (unified-offline only; every other adapter ignores it). `None` reprocesses against the live schema. `as_of` is the freshness target (see the type docs).
        - `reprocess` object, required: Clear the E2E bundle (result cache + prepared output) and re-run aggregation + processing over the *cached* provider response. Offline re-queries the DB (fresh); online does NOT re-hit the provider API. `dev_schema` is the dev-env number N pinning `epcviews_dev{N}` to reprocess against instead of the live routed schema (unified-offline only; every other adapter ignores it). `None` reprocesses against the live schema. `as_of` is the freshness target (see the type docs).
          - `as_of` string, date-time, required: DateTime at a given timezone (RFC3339 format)
          - `dev_schema` integer: 8-bit unsigned integer
      - object: Everything `Reprocess` does, plus clear the raw provider cache. Online re-hits the live provider API (cost/rate-limit). For offline (no raw cache) this is identical to `Reprocess`. `as_of` is the freshness target.
        - `refetch` object, required: Everything `Reprocess` does, plus clear the raw provider cache. Online re-hits the live provider API (cost/rate-limit). For offline (no raw cache) this is identical to `Reprocess`. `as_of` is the freshness target.
          - `as_of` string, date-time, required: DateTime at a given timezone (RFC3339 format)
    - `rephrased_descriptions` boolean, required: Boolean value
    - `request_source` union
      - 'preloader': Vehicle preloader worker request
      - 'integrations_server': Request from integrations-server
      - 'interpreter': Request from the Interpreter service
      - 'parts_verification': Request from the parts verification service
      - 'external_job_integration': Request from external-job-integration service
      - 'dismantler_background_worker': Request from donor vehicle indexing (dismantler background worker)
      - 'storefront': Request from storefront-server
      - 'repair_jobs_feed': Request from repair-jobs-feed-integration service
      - 'repairer': Request from mfe-repair frontend
      - 'workshop': Request from mfe-workshop frontend
      - 'pim': Request from pim-web frontend
      - 'data_qa': Request from dataqa-web frontend
      - 'dismantler': Request from dismantler frontend
      - 'demo_cache_script': Request from the public-demo-server VIN cache script (cache_demo_vins.py)
      - 'unknown': Unknown or legacy request source, DO NOT USE.
    - `resolve_supersession_chains` boolean: Boolean value
    - `vertex_service_mechanical` boolean: Boolean value
    - `world_tree` boolean, required: Boolean value
  - `oem_vehicle_id` string, required: UTF-8 encoded string

## Response `200`

200 OK

- union
  - object
    - `in_progress` object, required
      - `partial` Tier1AssembliesVariantGroupsPartial
        - `groups` object, required: Key-value map type
        - `oem_vehicle_id` string, required: UTF-8 encoded string
        - `pending_enrichments` Tier1AssembliesEnrichment[], required: Expandable array type
          - union
            - 'rephrased_descriptions'
            - 'disambiguations'
      - `retry_after` StdTimeDuration, required: Time duration type
        - `nanos` integer, required: 32-bit unsigned integer
        - `secs` integer, required: 64-bit unsigned integer
  - object
    - `completed` object, required
      - `groups` object, required: Keyed by `{diagram_id}|{code}|{side}|{ghca}`. Deterministic for one enrichment state, but not an id to store.
      - `oem_vehicle_id` string, required: UTF-8 encoded string

## Other responses

- `default`: Error cases

## Changes

- **2026-10-19** `0060854f7c86`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/partly/apis/core-server/changes/api/v1/assemblies.variant-groups.get/post.md)

---

[API](https://skmtc.dev/partly/apis/core-server.md) · [All operations](https://skmtc.dev/partly/apis/core-server/llms.txt) · [OpenAPI document](https://skmtc.dev/partly/apis/core-server/revisions/19dd5c84162b?raw)
