PartsTech Parts API

Parts

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/partstech-parts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

partstech-parts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.021.1
  title: PartsTech Parts API
  description: "\n# Rate Limiting\n\nRequests can be limited by user requests, by private partner requests and by all requests with partner's credentials.\nIt has several time intervals:\n  - *Per day* restricts count of requests made in one day.\n  - *Requests per second* restricts count of requests made in one second.\n  - *Concurrent requests* restricts count of parallel requests.\n  - *Sliding 15 minutes* restricts count of requests made in last 15 minutes.\n\n**Note**: Every method has own separate sets of the limits.\n\n## Headers\nUse the HTTP headers in order to understand where the application is at for a given rate limit, on the method that was just utilized.\nThe HTTP header is returned only for one general limit or for limit that user reached.\n\n\n*Headers*\n  - the rate limit ceiling for that given endpoint:\n  ```\n  x-rate-limit-limit: 1000\n  ```\n  - the number of requests left:\n  ```\n  x-rate-limit-remaining: 570\n  ```\n  - the remaining window before the rate limit resets, in UTC [epoch seconds](https://en.wikipedia.org/wiki/Unix_time):\n  ```\n  x-rate-limit-reset: 1552003200\n  ```\n\nWhen an application exceeds the rate limit for a given standard API endpoint,\nthe API will return a HTTP 429 “Too Many Requests” response code, and the following error will be returned in the response body:\n```\n{\n  \"error\": {\n    \"code\": \"TooManyRequests\",\n    \"message\": \"Some description\"\n  }\n}\n```\n\n# Pagination\n\nWhen you call an API method to retrieve information, it can be returned to you in portions.\nCheck out more detail below on pagination in API methods, including how to use them and which methods follow the pattern.\n\nAPI methods that supports pagination will return the `Link` header. It will include available urls of `first`, `last`, `previous` and `next` pages.\n\n```\nLink: <https://api.partstech.com/purchases?page=1>; rel=\"first\"\nLink: <https://api.partstech.com/purchases?page=1>; rel=\"previous\"\nLink: <https://api.partstech.com/purchases?page=3>; rel=\"next\"\nLink: <https://api.partstech.com/purchases?page=142>; rel=\"last\"\n```\n\n# MOTOR Compliance Requirements\n\nAll MOTOR-powered endpoints (Labor, Maintenance Schedules, Fluids, and Specifications) return a `Link` header\ncontaining the URL to MOTOR's OEM Compliance Requirements documentation.\n\nThe header follows the [RFC 8288 (Web Linking)](https://tools.ietf.org/html/rfc8288) format:\n\n```\nLink: <https://www.motor.com/oem-compliance-requirements/>; rel=\"compliance\"\n```\n\n# Errors\n\nThe API uses standard HTTP status codes to indicate the success or failure of the API call. The body of the response will be JSON in the following format:\n\n```\n{\n  \"error\": {\n    \"code\": \"InternalErrorCode\",\n    \"message\": \"Some description\"\n  }\n}\n```\n\n# Error Responses\nSome default error responses used in the API.\n\nHttp Code  | Explanation | Content Type | Used error codes\n----------------|-------------|------------------|---------\n400 | Bad Request. The request was unacceptable. | `application/json` | `InvalidRequestSyntax`\n401 | Unauthorized. The request requires user or partner credentials or bearer token. Also used for invalid credentials or bearer token. | `application/json` | `InvalidToken`, `UserAuthenticationFailed`, `PartnerAuthenticationFailed`\n402 | Request Failed. The parameters were valid but the request failed. | `application/json` | Different codes, depend on method.\n403 | Forbidden. Also used for unauthorized requests such as improper credentials scopes or permissions issues. | `application/json` | `IncorrectMode`, `DisabledApiUsage`, `UserIsNotActivated`, `HaveNotPermission`, `NotAvailableMethod`\n404 | Some data in the request is not found. Or incorrect url was used. | `application/json`, `text/html`, no content | `NotFound`\n405 | Method not allowed. | `application/json`, `text/html`, no content |\n406 | Unacceptable content type. Client sent an accepts header for a content type which does not exist on the server. | No content |\n409 | Locked. One of the another operations that is in progress blocks this method call. | `application/json` | `LockedSession`\n429 | Too Many Requests | `application/json` | `TooManyRequests`\n432 | Integration Error | `application/json` |\n500 | Internal Server Error. (This is rare.) | `application/json` | `InternalError`\n501 | Not Implemented | `application/json` | `MethodNotImplemented`\n503 | The backend server is not available. (This is rare.) | No content |\n"
  x-logo:
    url: https://partstech.com/wp-content/uploads/2025/03/PartsTech_OEC-compnay_logo.svg
    altText: PartsTech logo
servers:
- url: https://api.partstech.com
  description: Production server
- url: https://api.beta.partstech.com
  description: Beta server
tags:
- name: parts
  description: Parts
  x-displayName: Parts
paths:
  /catalog/parts/{partId}:
    get:
      summary: Get Part
      description: Returns part.
      tags:
      - parts
      operationId: getPart
      x-operation-name: GetCatalogPart
      security:
      - bearerAuth:
        - user
      parameters:
      - name: partId
        in: path
        required: true
        schema:
          type: string
          example: BBHK-24CA
      - $ref: '#/components/parameters/locale'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DetailCatalogPart'
    post:
      summary: Get Part (with request body)
      description: 'Returns part.

        Request Body is not required and helps to get an additional data that may depend on vehicle or partNumber.


        Request Body should be provided in case of non-Partstech catalog parts, e.g. Tires. Please use vehicleID and storeId to get correct detailed information for Tires.

        '
      tags:
      - parts
      operationId: getPartWithRequestBody
      x-operation-name: QueryCatalogPart
      security:
      - bearerAuth:
        - user
      parameters:
      - name: partId
        in: path
        required: true
        schema:
          type: string
          example: BBHK-24CA
      - $ref: '#/components/parameters/locale'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                searchParams:
                  type:
                  - object
                  - 'null'
                  oneOf:
                  - $ref: '#/components/schemas/VehicleSearchParams'
                  - $ref: '#/components/schemas/PartsTechVehicleIdSearchParams'
                  - $ref: '#/components/schemas/VinSearchParams'
                  - $ref: '#/components/schemas/PlateSearchParams'
                  - $ref: '#/components/schemas/PartNumberSearchParams'
                storeId:
                  type:
                  - integer
                  - 'null'
                lineCardId:
                  type:
                  - integer
                  - 'null'
            examples:
              VehicleSearch:
                summary: Search by Vehicle
                description: Make a search by Vehicle. `searchParams` accepts only `vehicleParams`.
                value:
                  searchParams:
                    vehicleParams:
                      yearId: 2009
                      makeId: 31
                      modelId: 210
                      subModelId: 20
                      engineId: 2548
                      engineParams:
                        engineVinId: 1
                        engineDesignationId: 1033
                        engineVersionId: 3
                        fuelTypeId: 5
                        cylinderHeadTypeId: 6
                  storeId: 1
                  lineCardId: 1
              VehicleIdSearch:
                summary: Search by PartsTech Vehicle ID
                description: Make a search by PartsTech Vehicle ID and PartTypeIds. `searchParams` accepts only `vehicleId`.
                value:
                  searchParams:
                    vehicleId: 189326
              VinSearch:
                summary: Search by VIN
                description: Make a search by VIN and PartTypeIds. `searchParams` accepts only `vin`.
                value:
                  searchParams:
                    vin: somevin
              PlateSearch:
                summary: Search by Plate
                description: Make a search by Plate. `searchParams` accepts only `plate`.
                value:
                  searchParams:
                    plate:
                      plate: Some Plate
                      state: CT
              PartNumberSearch:
                summary: Search by PartNumber
                description: Make a search by PartNumber. `searchParams` accepts only `partNumber` parameter.
                value:
                  searchParams:
                    partNumber:
                    - 12345
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/DetailCatalogPart'
                - $ref: '#/components/schemas/DetailQuotedPart'
  /catalog/parts/{partId}/interchanges:
    get:
      summary: Get Interchanges
      deprecated: true
      description: '**As of February 28th, 2026, this endpoint will no longer continue to work.**

        **Please contact [PartsTech-Partner-API@oeconnection.com](mailto:PartsTech-Partner-API@oeconnection.com) with any questions.**


        Returns interchanges for part

        '
      tags:
      - parts
      operationId: getPartInterchanges
      x-operation-name: GetCatalogPartInterchanges
      security:
      - bearerAuth:
        - user
      parameters:
      - name: partId
        in: path
        required: true
        schema:
          type: string
          example: ABCD-12345
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                minItems: 0
                items:
                  type: object
                  required:
                  - type
                  - partNumber
                  - brand
                  properties:
                    type:
                      type: string
                      enum:
                      - INTCH
                      - SUPERSEDE
                    partNumber:
                      type: string
                      example: 12345
                    brand:
                      $ref: '#/components/schemas/Brand'
  /catalog/parts/{partId}/validate-fitment:
    post:
      summary: Part Fitment Validation
      description: Part fitment validation
      tags:
      - parts
      operationId: validateFitmentForPart
      x-operation-name: QueryCatalogPartFitmentValidation
      security:
      - bearerAuth:
        - user
      parameters:
      - name: partId
        in: path
        required: true
        schema:
          type: string
          example: ABCD-12345
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - searchParams
              properties:
                searchParams:
                  oneOf:
                  - $ref: '#/components/schemas/VehicleSearchParams'
                  - $ref: '#/components/schemas/PartsTechVehicleIdSearchParams'
                  - $ref: '#/components/schemas/VinSearchParams'
                  - $ref: '#/components/schemas/PlateSearchParams'
                storeId:
                  description: PartsTech Store ID.
                  type:
                  - integer
                  - 'null'
                lineCardId:
                  description: PartsTech LineCard ID.
                  type:
                  - integer
                  - 'null'
            examples:
              VehiclePartTypeSearch:
                summary: Search by Vehicle
                description: Make a search by Vehicle. `searchParams` accepts only `vehicleParams`.
                value:
                  searchParams:
                    vehicleParams:
                      yearId: 2014
                      makeId: 21
                      modelId: 104
                      subModelId: 3512
                      engineId: 2062
                      engineParams:
                        engineVinId: 31
                        engineDesignationId: 1
                        engineVersionId: 73
                        fuelTypeId: 14
                        cylinderHeadTypeId: 6
              VehicleIdPartTypeSearch:
                summary: Search by PartsTech Vehicle ID
                description: Make a search by PartsTech Vehicle ID and PartTypeIds. `searchParams` accepts only `vehicleId`.
                value:
                  searchParams:
                    vehicleId: 287296
              VinPartTypeSearch:
                summary: Search by VIN
                description: Make a search by VIN and PartTypeIds. `searchParams` accepts only `vin`.
                value:
                  searchParams:
                    vin: somevin
              PlatePartTypeSearch:
                summary: Search by Plate
                description: Make a search by Plate. `searchParams` accepts only `plate`.
                value:
                  searchParams:
                    plate:
                      plate: Some Plate
                      state: CT
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ResponseVehicle'
        '204':
          description: No content. Fitment was not found.
components:
  schemas:
    PartCategory:
      type:
      - string
      - 'null'
      enum:
      - Maintenance
      - Service
      - Consumable
    Rewards:
      type:
      - array
      - 'null'
      minItems: 0
      items:
        type: object
        properties:
          program:
            type:
            - string
            - 'null'
          points:
            type:
            - integer
            - 'null'
          bonusPoints:
            type:
            - integer
            - 'null'
    VehicleParamsByEngineConfigId:
      title: Vehicle params with engineConfigId
      description: 'Vehicle parameters with Engine Config ID.


        EngineID and other Engine parameters will be defined by Engine Config ID.

        '
      type: object
      required:
      - yearId
      - makeId
      - modelId
      - subModelId
      - engineConfigId
      properties:
        yearId:
          type: integer
          example: 2015
        makeId:
          type: integer
          example: 65
        modelId:
          type: integer
          example: 123
        subModelId:
          type: integer
          example: 234
        engineConfigId:
          type: integer
          example: 34
    DetailCatalogPart:
      allOf:
      - $ref: '#/components/schemas/CatalogPart'
      - $ref: '#/components/schemas/DetailPartParams'
      - $ref: '#/components/schemas/LaborPartParams'
    PartsTechVehicleIdSearchParams:
      description: 'A search parameters for the search by PartsTech Vehicle ID.

        It consists on Vehicle ID and Part Types or Keyword.

        '
      type: object
      minProperties: 1
      maxProperties: 2
      required:
      - vehicleId
      properties:
        vehicleId:
          type: integer
          example: 1
          description: PartsTech's ID for a vehicle.
    VehicleSearchParams:
      description: 'A search parameters for the search by vehicle parameters.

        It consists on Vehicle arameters and Part Types or Keyword.


        [Search](#tag/search) require Vehicle arameters and one of another properties - Part Types or Keyword.


        [Create Quote](#operation/createQuote) requires only Vehicle parameters. Part Types or Keyword is optional.

        '
      type: object
      minProperties: 1
      maxProperties: 2
      required:
      - vehicleParams
      properties:
        vehicleParams:
          $ref: '#/components/schemas/VehicleParams'
    ResponseTaxonomy:
      type:
      - object
      - 'null'
      description: "Part taxonomy has three levels of classification. \nCategory, subcategory, and part type. \nCategory is the most broad and each category contains subcategories.\nEach subcategory contains part types. \nPart type is the most specific classification for a part. \nFor example, the taxonomy for brake pads are the following\n\\- Category = Brake - Subcategory = Disc Pads and Brake Shoes - Part Type = Disc Brake Pad Set.\n"
      required:
      - partTypeId
      properties:
        partTypeId:
          type: integer
          example: 14216
          description: The ID of a part type from the Autocare Association's PCdb.
        partTypeName:
          type:
          - string
          - 'null'
          example: Air Filter Set
          description: The name of a part type.
        partTypeDescription:
          type:
          - string
          - 'null'
          example: Initial fill additive for turbochargers.
          description: The description of a part type.
        categoryId:
          type:
          - integer
          - 'null'
          example: 12
          description: The ID of a part category from the Autocare Association's PCdb. Category is the highest level of part taxonomy.
        categoryName:
          type:
          - string
          - 'null'
          example: Air and Fuel Delivery
          description: The name of a category.
        subCategoryId:
          type: integer
          example: 153
          description: The ID of a subcategory from the Autocare Association's PCdb.
        subCategoryName:
          type:
          - string
          - 'null'
          example: Filters
          description: The name of a subcategory.
      example:
        partTypeId: 8852
        partTypeName: Windshield Wiper Blade
        categoryId: 22
        categoryName: Wiper and Washer
        subCategoryId: 236
        subCategoryName: Windshield Wiper Arm, Blade, and Related Components
    EngineParams:
      title: Engine params
      type: object
      required:
      - engineVinId
      - engineDesignationId
      - engineVersionId
      - fuelTypeId
      - cylinderHeadTypeId
      properties:
        engineVinId:
          type: integer
          example: 134
        engineDesignationId:
          type: integer
          example: 344
        engineVersionId:
          type: integer
          example: 342
        fuelTypeId:
          type: integer
          example: 54
        cylinderHeadTypeId:
          type: integer
          example: 25243
    CatalogPart:
      type: object
      required:
      - partId
      - partNumber
      - partName
      - brand
      - partsTechCatalogURL
      properties:
        partId:
          type: string
          example: BBHK-24CA
        partNumber:
          type: string
          example: 24CA
        partName:
          type: string
          example: Bosch Windshield Wiper Blade
        brand:
          $ref: '#/components/schemas/Brand'
        images:
          type: array
          minItems: 0
          items:
            type: object
            required:
            - preview
            - full
            - medium
            properties:
              preview:
                type: string
              full:
                type: string
              medium:
                type: string
          example:
          - preview: some_url
            full: some_url
            medium: some_url
          - preview: some_url
            full: some_url
            medium: some_url
        partsTechCatalogURL:
          type: string
          example: https://app.partstech.com/Bosch-Windshield-Wiper-Blade/details/BBHK-24CA?part_term=8852
        taxonomy:
          $ref: '#/components/schemas/ResponseTaxonomy'
        partCategory:
          $ref: '#/components/schemas/PartCategory'
        vehicleId:
          type:
          - integer
          - 'null'
          example: 189326
        vehicleName:
          type:
          - string
          - 'null'
          example: 2009 BMW M3 Base 4.0L V8 DOHC S65B40A
        attributes:
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/Attribute'
          example:
          - name: ItemQuantity
            label: Item Qty/Size/Weight
            value: 1 Each
            type: Part
          - name: Position
            label: Position
            value: Front Left
            type: Part
            dbInfo:
              dbName: pcdb
              tableName: positions
              idFieldName: Position
              idValue: PositionID
          - name: Qty
            label: Quantity per vehicle
            value: 1
            type: Both
        variations:
          type: array
          minItems: 0
          items:
            type: object
            properties:
              variationId:
                type: string
              notes:
                type: array
                minItems: 0
                items:
                  type: array
                  minItems: 1
                  items:
                    type: string
                  example: {}
              partName:
                type:
                - string
                - 'null'
                example: Bosch Windshield Wiper Blade
              attributes:
                type: array
                minItems: 0
                items:
                  $ref: '#/components/schemas/Attribute'
                example:
                - name: ItemQuantity
                  label: Item Qty/Size/Weight
                  value: 1 Each
                  type: Part
          example:
          - variationId: E1fHKgzpPvO
            partName: Bosch Clear Advantage
            notes: {}
            attributes:
            - name: Position
              label: Position
              value: Front Left
              type: Part
              dbInfo:
                dbName: pcdb
                tableName: positions
                idFieldName: Position
                idValue: PositionID
            - name: Bodytype
              label: Body
              value: Sedan
              type: Both
              dbInfo:
                dbName: vcdb
                tableName: bodytype
                idFieldName: BodyTypeName
                idValue: BodyTypeID
            - name: Qty
              label: Quantity per vehicle
              value: 1
              type: Both
          - variationId: 3fh7cCVNQOX
            partName: Bosch Clear Advantage
            notes:
            - - Remove plastic guide from wiper arm
            attributes:
            - name: Position
              label: Position
              value: Front Left
              type: Part
              dbInfo:
                dbName: pcdb
                tableName: positions
                idFieldName: Position
                idValue: PositionID
            - name: Bodytype
              label: Body
              value: Coupe
              type: Both
              dbInfo:
                dbName: vcdb
                tableName: bodytype
                idFieldName: BodyTypeName
                idValue: BodyTypeID
            - name: Qty
              label: Quantity per vehicle
              value: 1
              type: Both
          - variationId: Iwf0SBSW8u4
            partName: Bosch Clear Advantage
            notes:
            - - Remove plastic guide from wiper arm
            attributes:
            - name: Position
              label: Position
              value: Front Left
              type: Part
              dbInfo:
                dbName: pcdb
                tableName: positions
                idFieldName: Position
                idValue: PositionID
            - name: Bodytype
              label: Body
              value: Convertible
              type: Both
              dbInfo:
                dbName: vcdb
                tableName: bodytype
                idFieldName: BodyTypeName
                idValue: BodyTypeID
            - name: Qty
              label: Quantity per vehicle
              value: 1
              type: Both
        notes:
          type: array
          minItems: 0
          items:
            type: array
            minItems: 1
            items:
              type: string
          example:
          - - Optional Ceramic
            - Includes Hardware Installation Kit
        originalPart:
          type:
          - object
          - 'null'
          required:
          - partNumber
          properties:
            typeOfOrigination:
              type: string
              enum:
              - Alternate
              - Interchange
              - Supersession
            partId:
              type:
              - string
              - 'null'
              example: ABCD-12345
            partNumber:
              type: string
              example: 12345
            brand:
              $ref: '#/components/schemas/Brand'
        rewards:
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/Rewards'
          example:
          - program: extra Loyalty Program
            points: 10
            bonusPoints: 1
    DetailQuotedPart:
      allOf:
      - $ref: '#/components/schemas/CatalogPart'
      - $ref: '#/components/schemas/DetailPartParams'
      - $ref: '#/components/schemas/QuoteParams'
      - $ref: '#/components/schemas/LaborPartParams'
    DeliveryNote:
      type: object
      required:
      - label
      - text
      - date
      properties:
        label:
          type:
          - string
          - 'null'
        text:
          type:
          - string
          - 'null'
    PlateSearchParams:
      description: 'A search parameters for the search by Plate.

        It consists on Plate and Part Types or Keyword.


        [Search](#tag/search) require Plate and one of another properties - Part Types or Keyword.


        [Create Quote](#operation/createQuote) requires only Plate. Part Types or Keyword is optional.

        '
      type: object
      minProperties: 1
      maxProperties: 2
      required:
      - plate
      properties:
        plate:
          type: object
          required:
          - state
          - plate
          properties:
            state:
              description: 'ISO 3166-2: Second part. Example for US-MA - MA.'
              type: string
              minLength: 2
              maxLength: 2
              pattern: \w{2,2}
              example: MA
            plate:
              type: string
              example: SomePlate
    PartPrice:
      type: object
      required:
      - cost
      - core
      - fet
      properties:
        list:
          type:
          - number
          - 'null'
          format: float
          example: 1.2
          description: Not all parts will have a list price. This property will contain the null value for parts without a list price.
        price:
          type: number
          format: float
          example: 1.6
          description: Total price charged to the user for an item, includes discounts and core charge if applicable.
        cost:
          type: number
          format: float
          example: 1.24
          description: Cost of an item for the user including any discounts. Excludes any core charges.
        core:
          type: number
          format: float
          example: 0.4
          description: A fee for certain part types that is returned to the purchaser when the old part that is being replaced is returned to the store.
        fet:
          type:
          - number
          - 'null'
          description: The Federal Excise Tax (FET) applies to tires used on the road with a maximum load capacity greater than 3500 pounds. This tax is charged to the purchaser of the tire from the tire supplier. Only 100% accurate FET values are sent through the PartsTech API.
          format: float
          example: 1.2
        retail:
          type:
          - number
          - 'null'
          description: The price to charge customers. PartsTech calculates this price by taking the ``cost`` and then applying the appropriate mark up from the user's retail pricing configuration. This property will be null if there is no applicable mark up to the item or if the user has not set up their retail pricing configuration.
          format: float
          example: 2
        discount:
          type:
          - number
          - 'null'
          description: The discount for an item. There can be a discount when an item is quoted or purchased as part of a bundled deal from participating suppliers.
          format: float
          example: 0.2
        map:
          type:
          - number
          - 'null'
          description: Minimum Advertised Price
          format: float
          example: 1.9
    ResponsePartLabor:
      title: Labor for Parts
      type: object
      required:
      - name
      - type
      - serviceType
      - laborTimeInterval
      - notes
      - taxonomy
      - additional
      - all
      - base
      - skill
      properties:
        name:
          type: string
          example: Wheel Hub And Bearing Assembly R&R Service (Front), One Side
        type:
          type: string
          example: null
        serviceType:
          type: string
          example: Service
        laborTimeInterval:
          type: string
          example: Hours
        notes:
          type: string
          example: 'Includes: The removal of component and all necessary components for access. Does not include: System diagnosis, testing, wheel alignment, or a vehicle road test.'
        taxonomy:
          type: object
          required:
          - action
          - name
          properties:
            taxonomyId:
              type:
              - integer
              - 'null'
              example: 11507
            action:
              type: string
              example: ''
            name:
              type: string
              example: Wheel Hub And Bearing Assembly R&R
        additional:
          type: object
          required:
          - laborTime
          - laborTimeDescription
          - warrantyLaborTime
          properties:
            laborTime:
              type: number
              format: float
              example: 0
            laborTimeDescription:
              type: string
              example: ''
            warrantyLaborTime:
              type: number
              format: float
              example: 0
        all:
          type: object
          required:
          - laborTime
          - laborTimeDescription
          - warrantyLaborTime
          properties:
            laborTime:
              type: number
              format: float
              example: 0
            laborTimeDescription:
              type: string
              example: ''
            warrantyLaborTime:
              type: number
              format: float
              example: 0
        base:
          type: object
          required:
          - laborTime
          - laborTimeAverage
          - laborTimeDescription
          - warrantyLaborTime
          properties:
            laborTime:
              type: number
              format: float
              example: 1.3
            laborTimeAverage:
              type: number
              format: float
              example: 0
            laborTimeDescription:
              type: string
              example: One Side
            warrantyLaborTime:
              type: number
              format: float
              example: 0
        skill:
          type: object
          required:
          - code
          - description
          - name
          properties:
            code:
              type: string
              example: g
            description:
              type: string
              example: Requires a person with limited skills and wherever simpler measuring devices are used for proper repair (Feeler Gauge, Belt Tensioner Gauge,  etc). This person must have a thorough working knowledge of the component being serviced.
            name:
              type: string
              example: General
 

# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/partstech/refs/heads/main/openapi/partstech-parts-api-openapi.yml