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-punchout-quote-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: 3.2.0
info:
version: 2.021.1
title: PartsTech Punchout Quote 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: punchout_quote
description: Quote Methods
x-displayName: Quotes
paths:
/punchout/quote/create:
post:
summary: Create quote
description: "Creates a new punchout session and returns a unique `sessionId` and `redirectUrl`. The `redirectUrl` is the session URL where your app will send the user to procure parts and tires. Visiting a `redirectUrl` will automatically log the visitor into the user account that the session was created for. Take care not to send one user to a session that was created for a different user. Sessions expire after 120 days for platform performance and stability.\n\nYou can include vehicle identifiers and search parameters in your request. A vehicle identifier will let PartsTech automatically select the vehicle in that session, while a search parameter will trigger an automatic search when the user is sent to the session.\n\nAccepted **vehicle identifiers**:\n - VIN\n - Plate & State\n - PartsTech Vehicle ID\n - Year, Make, Model, Submodel, Engine\n\nAccepted **search parameters**:\n - Part Number\n - Part Type ID\n - Keyword\n - Tire Size\n\nCheck out the Request Body Schema below for the possible parameters.\n"
operationId: createQuote
x-operation-name: CommandPunchoutQuoteCreate
tags:
- punchout_quote
security:
- bearerAuth:
- user
- apiKeyAuth:
- user
requestBody:
content:
application/json:
schema:
type: object
properties:
searchParams:
type:
- object
- 'null'
oneOf:
- $ref: '#/components/schemas/PunchoutVehicleSearchParams'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByKeyword'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByPartTypes'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByTireId'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByTireSize'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParams'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByKeyword'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByPartTypes'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByTireId'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByTireSize'
- $ref: '#/components/schemas/VinSearchParams'
- $ref: '#/components/schemas/VinSearchParamsByKeyword'
- $ref: '#/components/schemas/VinSearchParamsByPartTypes'
- $ref: '#/components/schemas/VinSearchParamsByTireId'
- $ref: '#/components/schemas/VinSearchParamsByTireSize'
- $ref: '#/components/schemas/PlateSearchParams'
- $ref: '#/components/schemas/PlateSearchParamsByKeyword'
- $ref: '#/components/schemas/PlateSearchParamsByPartTypes'
- $ref: '#/components/schemas/PlateSearchParamsByTireId'
- $ref: '#/components/schemas/PlateSearchParamsByTireSize'
- $ref: '#/components/schemas/TireSizeSearchParams'
- $ref: '#/components/schemas/PartNumberSearchParams'
urls:
$ref: '#/components/schemas/URLs'
additionalInformation:
$ref: '#/components/schemas/PunchoutAdditionalInformation'
settings:
$ref: '#/components/schemas/QuoteSettings'
examples:
PunchoutVehiclePartTypeSearch:
summary: Search by Vehicle and PartTypeIds
description: Make a quote with a search by Vehicle and PartTypeIds. `searchParams` accepts only `vehicleParams` and `partTypeIds` parameters.
value:
searchParams:
vehicleParams:
yearId: 2014
makeId: 21
modelId: 104
subModelId: 3512
engineId: 2062
engineParams:
engineVinId: 31
engineDesignationId: 1
engineVersionId: 73
fuelTypeId: 14
cylinderHeadTypeId: 6
partTypeIds:
- 5132
- 10328
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
settings:
poNumber: 123
PunchoutVehicleKeywordSearch:
summary: Search by Vehicle and Keyword
description: Make a quote with a search by Vehicle and PartTypeIds. `searchParams` accepts only `vehicleParams` and `keyword` parameters.
value:
searchParams:
vehicleParams:
yearId: 2014
makeId: 21
modelId: 104
subModelId: 3512
engineId: 2062
engineParams:
engineVinId: 31
engineDesignationId: 1
engineVersionId: 73
fuelTypeId: 14
cylinderHeadTypeId: 6
keyword: Air Filter
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
PunchoutVehicleTireIdSearch:
summary: Search by Vehicle and TireId
description: Make a quote with a search by Vehicle and TireId. `searchParams` accepts only `vehicleParams` and `tireId` parameters.
value:
searchParams:
vehicleParams:
yearId: 2014
makeId: 76
modelId: 1026
subModelId: 3571
engineId: 2578
engineParams:
engineVinId: 1
engineDesignationId: 4833
engineVersionId: 3
fuelTypeId: 14
cylinderHeadTypeId: 6
tireId: 128618
PunchoutVehicleTireSizeSearch:
summary: Search by Vehicle and Tire Size
description: Make a quote with a search by Vehicle and Tire Size. `searchParams` accepts only `vehicleParams`, `width`, `height` and `rim` parameters.
value:
searchParams:
vehicleParams:
yearId: 2014
makeId: 76
modelId: 1026
subModelId: 3571
engineId: 2578
engineParams:
engineVinId: 1
engineDesignationId: 4833
engineVersionId: 3
fuelTypeId: 14
cylinderHeadTypeId: 6
width: 40
height: 14.5
rim: 18
VehicleIdPartTypeSearch:
summary: Search by PartsTech Vehicle ID and PartTypeIds
description: Make a quote with a search by PartsTech Vehicle ID and PartTypeIds. `searchParams` accepts only `vehicleId` and `partTypeIds` parameters.
value:
searchParams:
vehicleId: 287296
partTypeIds:
- 5132
- 10328
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
VehicleIdKeywordSearch:
summary: Search by PartsTech Vehicle ID and Keyword
description: Make a quote with a search by PartsTech Vehicle ID and Keyword. `searchParams` accepts only `vehicleId` and `keyword` parameters.
value:
searchParams:
vehicleId: 287296
keyword: Air Filter
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
VehicleIdTireIdSearch:
summary: Search by PartsTech Vehicle ID and TireId
description: Make a quote with a search by PartsTech Vehicle ID and TireId. `searchParams` accepts only `vehicleId` and `tireId` parameters.
value:
searchParams:
vehicleId: 586988
tireId: 128618
VehicleIdTireSizeSearch:
summary: Search by PartsTech Vehicle ID and Tire Size
description: Make a quote with a search by PartsTech Vehicle ID and Tire Size. `searchParams` accepts only `vehicleId`, `width`, `height` and `rim` parameters.
value:
searchParams:
vehicleId: 586988
width: 40
height: 14.5
rim: 18
VinPartTypeSearch:
summary: Search by VIN and PartTypeIds
description: Make a quote with a search by VIN and PartTypeIds. `searchParams` accepts only `vin` and `partTypeIds` parameters.
value:
searchParams:
vin: somevin
partTypeIds:
- 1005
- 1006
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
VinKeywordSearch:
summary: Search by VIN and Keyword
description: Make a quote with a search by VIN and Keyword. `searchParams` accepts only `vin` and `keyword` parameters.
value:
searchParams:
vin: somevin
keyword: Air Filter
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
VinTireIdSearch:
summary: Search by VIN and TireId
description: Make a quote with a search by VIN and TireId. `searchParams` accepts only `vin` and `tireId` parameters.
value:
searchParams:
vin: somevin
tireId: 128618
VinTireSizeSearch:
summary: Search by VIN and Tire Size
description: Make a quote with a search by VIN and Tire Size. `searchParams` accepts only `vin`, `width`, `height` and `rim` parameters.
value:
searchParams:
vin: somevin
width: 40
height: 14.5
rim: 18
PlatePartTypeSearch:
summary: Search by Plate and PartTypeIds
description: Makes a quote with a search by Plate and PartTypeIds. `searchParams` accepts only `plate` and `partTypeIds` parameters.
value:
searchParams:
plate:
plate: Some Plate
state: CT
partTypeIds:
- 1005
- 1006
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
PlateKeywordSearch:
summary: Search by Plate and Keyword
description: Makes a quote with a search by Plate and Keyword. `searchParams` accepts only `plate` and `keyword` parameters.
value:
searchParams:
plate:
plate: Some Plate
state: CT
keyword: Air Filter
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
PlateTireIdSearch:
summary: Search by Plate and TireId
description: Makes a quote with a search by Plate and TireId. `searchParams` accepts only `plate` and `tireId` parameters.
value:
searchParams:
plate:
plate: Some Plate
state: CT
tireId: 128618
PlateTireSizeSearch:
summary: Search by Plate and Tire Size
description: Makes a quote with a search by Plate and Tire Size. `searchParams` accepts only `plate`, `width`, `height` and `rim` parameters.
value:
searchParams:
plate:
plate: Some Plate
state: CT
width: 40
height: 14.5
rim: 18
TireSizeSearch:
summary: Search by Tire Size
description: Makes a quote with a search by Tire Size. `searchParams` accepts only `width`, `height` and `rim` parameters.
value:
searchParams:
width: 40
height: 14.5
rim: 18
PartNumberSearch:
summary: Search by PartNumber
description: Makes a quote with a search by PartNumber. `searchParams` accepts only `partNumber` parameter.
value:
searchParams:
partNumber:
- 331
urls:
callbackUrl: http://localhost:80/some-callback-url
callbackOrderUrl: http://localhost:80/some-callback-order-url
returnUrl: http://localhost:80/some-return-url
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
required:
- sessionId
- redirectUrl
properties:
sessionId:
type: string
example: 1ag3d2b5240e4jcbbe3ee9c49c929fe4
description: The unique identifier of a punchout session.
redirectUrl:
type: string
description: The session URL.
format: url
example: https://app.partstech.com/api-search/your_partnerId/your_test_userId/1ag3d2b5240e4jcbbe3ee9c49c929fe4/
/punchout/quote/update:
post:
summary: Update quote
description: "Updates the search params and URLs of a given `sessionId`.\n\nReturns a `redirectUrl` for the updated session.\n\nAccepted **vehicle identifiers**:\n - VIN\n - Plate & State\n - PartsTech Vehicle ID\n - Year, Make, Model, Submodel, Engine\n\nAccepted **search parameters**:\n - Part Number\n - Part Type ID\n - Keyword\n - Tire Size\n\nCheck out the Request Body Schema below for the possible parameters.\n"
operationId: updateQuote
x-operation-name: CommandPunchoutQuoteUpdate
tags:
- punchout_quote
security:
- bearerAuth:
- user
- apiKeyAuth:
- user
requestBody:
content:
application/json:
schema:
type: object
required:
- sessionId
properties:
sessionId:
type: string
example: 1ag3d2b5240e4jcbbe3ee9c49c929fe4
description: The unique identifier of a punchout session.
searchParams:
oneOf:
- $ref: '#/components/schemas/PunchoutVehicleSearchParams'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByKeyword'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByPartTypes'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByTireId'
- $ref: '#/components/schemas/PunchoutVehicleSearchParamsByTireSize'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParams'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByKeyword'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByPartTypes'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByTireId'
- $ref: '#/components/schemas/PartsTechVehicleIdSearchParamsByTireSize'
- $ref: '#/components/schemas/VinSearchParams'
- $ref: '#/components/schemas/VinSearchParamsByKeyword'
- $ref: '#/components/schemas/VinSearchParamsByPartTypes'
- $ref: '#/components/schemas/VinSearchParamsByTireId'
- $ref: '#/components/schemas/VinSearchParamsByTireSize'
- $ref: '#/components/schemas/PlateSearchParams'
- $ref: '#/components/schemas/PlateSearchParamsByKeyword'
- $ref: '#/components/schemas/PlateSearchParamsByPartTypes'
- $ref: '#/components/schemas/PlateSearchParamsByTireId'
- $ref: '#/components/schemas/PlateSearchParamsByTireSize'
- $ref: '#/components/schemas/TireSizeSearchParams'
- $ref: '#/components/schemas/PartNumberSearchParams'
urls:
$ref: '#/components/schemas/URLs'
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
required:
- sessionId
- redirectUrl
properties:
sessionId:
type: string
example: 1ag3d2b5240e4jcbbe3ee9c49c929fe4
description: The unique identifier of a punchout session.
redirectUrl:
type: string
format: url
example: https://app.partstech.com/api-search/your_partnerId/your_test_userId/1ag3d2b5240e4jcbbe3ee9c49c929fe4/
description: The session URL.
/punchout/quote/info:
post:
summary: Get quote info
description: 'Returns details about the punchout session and the `redirectUrl` to open the punchout session.
'
operationId: getQuoteInformation
x-operation-name: QueryPunchoutQuoteInfo
tags:
- punchout_quote
security:
- bearerAuth:
- user
- apiKeyAuth:
- user
requestBody:
content:
application/json:
schema:
type: object
required:
- sessionId
properties:
sessionId:
type: string
example: 1ag3d2b5240e4jcbbe3ee9c49c929fe4
description: The unique identifier of a punchout session.
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
required:
- sessionId
- quote
properties:
sessionId:
type: string
example: 1ag3d2b5240e4jcbbe3ee9c49c929fe4
description: The unique identifier of a punchout session.
redirectUrl:
type:
- string
- 'null'
format: url
example: https://app.partstech.com/api-search/your_partnerId/your_test_userId/1ag3d2b5240e4jcbbe3ee9c49c929fe4/
description: The session URL.
quote:
type: object
required:
- status
- submitted
properties:
date:
type: string
format: date-time
description: 'The date and time that the session was created. In the format: ISO 8601/RFC 3339, UTC'
status:
type: string
enum:
- OPEN
- CLOSED
description: The session is OPEN until a purchase method is called on the session to order the items in the cart.
closedDate:
type:
- string
- 'null'
format: date-time
description: 'The date and time that the session was closed. In the format: ISO 8601/RFC 3339, UTC'
submitted:
type: boolean
example: true
description: False until one of the cart buttons is used.
urls:
$ref: '#/components/schemas/URLs'
/punchout/quote/stock-order:
post:
summary: Create Stock Order Quote
description: 'Creates a new stock order punchout session with the provided part numbers and quantity of each. Returns a unique `sessionId` for the newly created session and a `redirectUrl` to open the session.
When opening a stock order session, PartsTech attempts to find the correct parts and place those parts on the correct supplier card. The more part information that is provided in the request, the more accurate and efficient the parts selection will be.
Providing the `storeId` for each part enables PartsTech to automatically select the correct supplier for each part on the stock order punchout. This saves users a lot of time. In addition to the `partNumber`, providing each part''s `partId` and `lineCardId` will enable a much more accurate parts selection. Each Id referenced here can be found in the part data for each part in cart callbacks.
'
operationId: createStockOrderQuote
x-operation-name: CreatePunchoutQuoteStockOrder
tags:
- punchout_quote
security:
- bearerAuth:
- user
- apiKeyAuth:
- user
requestBody:
content:
application/json:
schema:
type: object
required:
- parts
properties:
parts:
description: Information for one or more parts.
type: array
items:
type: object
description: 'At least one of `partNumber` or `partId` must be provided. Both may be provided together.
'
properties:
partNumber:
type:
- string
- 'null'
description: The manufacturer part number. Required if `partId` is not provided.
partId:
type:
- string
- 'null'
pattern: ^.{1,}\-.*$
description: PartsTech's ID for a part. Consists of `brandId`-`partNumber`. Makes part selection more accurate. Required if `partNumber` is not provided.
quantity:
type:
- integer
- 'null'
description: The requested quantity for a part. Automatically fills in the quantity for a part.
storeId:
type:
- integer
- 'null'
description: PartsTech's ID for a supplier location. Automatically places a part on the correct supplier card.
lineCardId:
type:
- integer
- 'null'
description: PartsTech's ID for a line code. Makes part selection much more accurate when provided in requests to create a cart or search the PartsTech Catalog.
example:
- partNumber: 123
partId: DFFD-123
quantity: 1
storeId: 1
- partNumber: 124
partId: DFFD-124
quantity: 2
lineCardId: 1
urls:
$ref: '#/components/schemas/URLs'
additionalInformation:
$ref: '#/components/schemas/PunchoutAdditionalInformation'
settings:
$ref: '#/components/schemas/QuoteSettings'
storeId:
description: 'PartsTech Id of a store. Defines a tab that will be opened by default on the stock order page.
Deprecated. Send storeId for every part.
'
type:
- integer
- 'null'
deprecated: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
required:
- sessionId
- redirectUrl
properties:
sessionId:
type: string
example: 1ag3d2b5240e4jcbbe3ee9c49c929fe4
description: The unique identifier of a punchout session.
redirectUrl:
type: string
format: url
example: https://app.partstech.com/api-search/your_partnerId/your_test_userId/1ag3d2b5240e4jcbbe3ee9c49c929fe4/
components:
schemas:
VinSearchParamsByTireSize:
allOf:
- $ref: '#/components/schemas/VinSearchParams'
- $ref: '#/components/schemas/TireSizeSearchParams'
VinSearchParamsByPartTypes:
allOf:
- $ref: '#/components/schemas/VinSearchParams'
- $ref: '#/components/schemas/PartTypesSearchParams'
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
exampl
# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/partstech/refs/heads/main/openapi/partstech-punchout-quote-api-openapi.yml