{
  "swagger": "2.0",
  "info": {
    "title": "The Selling Partner API for Automotive.",
    "description": "The Selling Partner API for Automotive provides programmatic access to information needed by selling partners to provide compatibility information about their listed products.",
    "version": "2024-11-01",
    "contact": {
      "name": "Selling Partner API Developer Support",
      "url": "https://sellercentral.amazon.com/gp/mws/contactus.html"
    },
    "license": {
      "name": "Apache License 2.0",
      "url": "http://www.apache.org/licenses/LICENSE-2.0"
    }
  },
  "host": "sellingpartnerapi-na.amazon.com",
  "schemes": [
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "paths": {
    "/catalog/2024-11-01/automotive/vehicles": {
      "get": {
        "tags": [
          "vehicles",
          "automotive"
        ],
        "description": "Get the latest collection of vehicles",
        "operationId": "getVehicles",
        "parameters": [
          {
            "name": "pageToken",
            "description": "A token to fetch a certain page when there are multiple pages worth of results.",
            "in": "query",
            "required": false,
            "type": "string",
            "x-example": "sdlkj234lkj234lksjdflkjwdflkjsfdlkj234234234234"
          },
          {
            "name": "marketplaceId",
            "description": "An identifier for the marketplace in which the resource operates.",
            "in": "query",
            "required": true,
            "type": "string",
            "x-example": "A1PA6795UKMFR9"
          },
          {
            "name": "vehicleType",
            "description": "An identifier for vehicle type.",
            "in": "query",
            "required": true,
            "type": "string",
            "enum": [
              "CAR",
              "MOTORBIKE"
            ],
            "x-docgen-enum-table-extension": [
              {
                "description": "Selecting this will return the list of cars.",
                "value": "CAR"
              },
              {
                "description": "Selecting this will return the list of motorbikes/motorcycles.",
                "value": "MOTORBIKE"
              }
            ],
            "x-example": "CAR"
          },
          {
            "name": "updatedAfter",
            "description": "Date in ISO 8601 format, if provided only vehicles which are modified/added to Amazon's catalog after this date will be returned.",
            "in": "query",
            "required": false,
            "type": "string",
            "x-example": "2024-01-05T18:00:03+00:00"
          }
        ],
        "responses": {
          "200": {
            "description": "Success.",
            "headers": {
              "x-amzn-RateLimit-Limit": {
                "description": "Your rate limit (requests per second) for this operation.",
                "type": "string"
              },
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "examples": {
              "application/json": {
                "pagination" : {
                  "nextToken" : "xsdflkj324lkjsdlkj3423klkjsdfkljlk2j34klj2l3k4jlksdjl234",
                  "previousToken" : "mmkjsdflkj234lkjds234234lkjl234lksjdflkj234234lkjsfsdflkj333d"
                },
                "vehicles" : [
                  {
                    "make": "Chevrolet",
                    "model": "Aveo",
                    "variantName": "1.2",
                    "bodyStyle": "Schrägheck",
                    "driveType": "Frontantrieb",
                    "energy": "Benzin",
                    "engineOutput": [
                      {
                        "value": 51,
                        "unit": "KILOWATT"
                      },
                      {
                        "value": 69,
                        "unit": "HORSEPOWER"
                      }
                    ],
                    "manufacturingStartDate": {
                      "year": 2011,
                      "month": 3
                    },
                    "manufacturingStopDate": {},
                    "lastProcessedDate": "2024-09-01T18:00:03+00:00",
                    "status": "DELETED",
                    "identifiers" : [
                      {
                        "standard": "KTYPE",
                        "value": "9997"
                      }
                    ]
                  }
                ]
              }
            },
            "x-amzn-api-sandbox": {
              "static": [
                  {
                    "request": {
                      "parameters": {
                        "pageToken": {
                          "value": "urldwkj324lkjsdlkj3423klkjsdfkljlk2j34klj2l3k4jlksdjq130"
                        },
                        "marketplaceId": {
                          "value": "A1PA6795UKMFR9"
                        },
                        "vehicleType": {
                          "value": "MOTORBIKE"
                        },
                        "updatedAfter": {
                          "value": "2024-01-05T18:00:03+00:00"
                        }
                      }
                    },
                    "response": {
                      "pagination" : {
                        "nextToken" : "xsdflkj324lkjsdlkj3423klkjsdfkljlk2j34klj2l3k4jlksdjl234",
                        "previousToken" : "ilkjsdflkj234lkjds234234lkjl234lksjdflkj234234lkjsfsdflkj333d"
                      },
                      "vehicles" : [
                        {
                          "make": "Chevrolet",
                          "model": "Avalanche",
                          "variantName": "5.3 Flex-fuel",
                          "bodyStyle": "Pick-up",
                          "driveType": "Heckantrieb",
                          "energy": "Benzin/Ethanol",
                          "engineOutput": [
                            {
                              "value": 235,
                              "unit": "KILOWATT"
                            },
                            {
                              "value": 320,
                              "unit": "HORSEPOWER"
                            }
                          ],
                          "manufacturingStartDate": {
                            "year": 2005,
                            "month": 6
                          },
                          "manufacturingStopDate": {
                            "year": 2007,
                            "month": 7
                          },
                          "lastProcessedDate": "2024-09-01T18:00:03+00:00",
                          "status": "ACTIVE",
                          "identifiers" : [
                            {
                              "standard": "KTYPE",
                              "value": "27566"
                            }
                          ]
                        }
                      ]
                    }
                  }
                ]
            },
            "schema": {
              "$ref": "#/definitions/VehiclesResponse"
            }
          },
          "400": {
            "description": "Request has missing or invalid parameters and cannot be parsed.",
            "headers": {
              "x-amzn-RateLimit-Limit": {
                "description": "Your rate limit (requests per second) for this operation.",
                "type": "string"
              },
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "x-amzn-api-sandbox": {
              "static": [
                {
                  "request": {
                    "parameters": {}
                  },
                  "response": {
                    "errors": [
                      {
                        "code": "BAD_REQUEST",
                        "message": "Invalid input",
                        "details": "Invalid input"
                      }
                    ]
                  }
                }
              ]
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "403": {
            "description": "Indicates that access to the resource is forbidden. Possible reasons include Access Denied, Unauthorized, Expired Token, or Invalid Signature.",
            "headers": {
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "404": {
            "description": "The resource specified does not exist.",
            "headers": {
              "x-amzn-RateLimit-Limit": {
                "description": "Your rate limit (requests per second) for this operation.",
                "type": "string"
              },
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "413": {
            "description": "The request size exceeded the maximum accepted size.",
            "headers": {
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "415": {
            "description": "The request payload is in an unsupported format.",
            "headers": {
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "429": {
            "description": "The frequency of requests was greater than allowed.",
            "headers": {
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "500": {
            "description": "An unexpected condition occurred that prevented the server from fulfilling the request.",
            "headers": {
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          },
          "503": {
            "description": "Temporary overloading or maintenance of the server.",
            "headers": {
              "x-amzn-RequestId": {
                "description": "Unique request reference identifier.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ErrorList"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "VehiclesResponse": {
      "description": "Get paginated list of vehicle from Amazon's catalog",
      "properties": {
        "pagination": {
          "description": "If available, the `nextToken` and/or `previousToken` values required to return paginated results.",
          "$ref": "#/definitions/Pagination"
        },
        "vehicles": {
          "description": "List of vehicles from Amazon's catalog.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/Vehicle"
          }
        }
      },
      "required": [
        "vehicles"
      ],
      "type": "object"
    },
    "Pagination": {
      "type": "object",
      "description": "When a request produces a response that exceeds the `pageSize`, pagination occurs. This means the response is divided into individual pages. To retrieve the next page or the previous page, you must pass the `nextToken` value or the `previousToken` value as the `pageToken` parameter in the next request. When you receive the last page, there will be no `nextToken` key in the pagination object.",
      "properties": {
        "nextToken": {
          "description": "A token that can be used to fetch the next page.",
          "type": "string"
        },
        "previousToken": {
          "description": "A token that can be used to fetch the previous page.",
          "type": "string"
        }
      }
    },
    "Vehicle": {
      "type": "object",
      "description": "Combinations of attributes and unique identifier that represents a vehicle in vehicle list.",
      "properties": {
        "make": {
          "description": "Vehicle Brand.",
          "type": "string"
        },
        "model": {
          "description": "Specific model of a vehicle.",
          "type": "string"
        },
        "variantName": {
          "description": "Name of the vehicle variant.",
          "type": "string"
        },
        "bodyStyle": {
          "description": "Body style of vehicle (example: Hatchback, Cabriolet).",
          "type": "string"
        },
        "driveType": {
          "description": "Drive type of vehicle(example: Rear wheel drive).",
          "type": "string"
        },
        "energy": {
          "description": "Energy Source for the vehicle(example: Petrol)",
          "type": "string"
        },
        "engineOutput": {
          "description": "Engine output of vehicle.",
          "type": "array",
          "minItems": 1,
          "items": {
            "$ref": "#/definitions/EngineOutput"
          }
        },
        "manufacturingStartDate": {
          "description": "Vehicle manufacturing start date.",
          "$ref": "#/definitions/MonthAndYear"
        },
        "manufacturingStopDate": {
          "description": "Vehicle manufacturing stop date. If it is empty, then the vehicle is still being manufactured.",
          "$ref": "#/definitions/MonthAndYear"
        },
        "lastProcessedDate": {
          "description": "The date on which the vehicle was last updated, in ISO-8601 date/time format.",
          "type": "string"
        },
        "status": {
          "description": "Denotes if the vehicle is active or deleted from Amazon's catalog.",
          "$ref": "#/definitions/VehicleStatusInCatalog"
        },
        "identifiers": {
          "type": "array",
          "minItems": 1,
          "description": "Identifiers that can be used to identify the vehicle uniquely",
          "items": {
            "$ref": "#/definitions/VehicleIdentifiers"
          }
        }
      },
      "required": [
        "make",
        "model",
        "identifiers"
      ]
    },
    "EngineOutput": {
      "description": "Engine power output of vehicle.",
      "properties": {
        "value": {
          "description": "Engine power value in specified unit.",
          "type": "number"
        },
        "unit": {
          "description": "Unit for measuring engine power.",
          "$ref": "#/definitions/EngineOutputUnit"
        }
      },
      "required": [
        "value",
        "unit"
      ],
      "type": "object"
    },
    "VehicleIdentifiers": {
      "description": "Combination of vehicle standard and id that can uniquely identify a vehicle from Amazon's catalog.",
      "properties": {
        "standard": {
          "description": "Vehicle standard used to uniquely identify a vehicle.",
          "$ref": "#/definitions/VehicleStandard"
        },
        "value": {
          "description": "Id that can uniquely identify a vehicle based the vehicle identification standard.",
          "type": "string"
        }
      },
      "required": [
        "standard",
        "value"
      ],
      "type": "object"
    },
    "VehicleStandard": {
      "description": "Standard followed to uniquely identify a vehicle.",
      "enum": [
        "KTYPE",
        "AMAZON_ID"
      ],
      "type": "string",
      "x-docgen-enum-table-extension": [
        {
          "description": "Unique vehicle identification standard as provided by TecDoc",
          "value": "KTYPE"
        },
        {
          "description": "Unique vehicle identification standard as provided by Amazon",
          "value": "AMAZON_ID"
        }
      ]
    },
    "EngineOutputUnit": {
      "description": "Unit for measuring engine power.",
      "enum": [
        "KILOWATT",
        "HORSEPOWER"
      ],
      "type": "string",
      "x-docgen-enum-table-extension": [
        {
          "value": "KILOWATT",
          "description": "KILOWATT or kW is a unit used to measure engine power output."
        },
        {
          "value": "HORSEPOWER",
          "description": "HORSEPOWER or HP is a unit used to measure engine power output."
        }
      ]
    },
    "ErrorList": {
      "type": "object",
      "description": "A list of error responses returned when a request is unsuccessful.",
      "required": [
        "errors"
      ],
      "properties": {
        "errors": {
          "type": "array",
          "description": "array of errors",
          "items": {
            "$ref": "#/definitions/Error"
          }
        }
      }
    },
    "Error": {
      "description": "Error response returned when the request is unsuccessful.",
      "properties": {
        "code": {
          "description": "An error code that identifies the type of error that occurred.",
          "type": "string"
        },
        "message": {
          "description": "A message that describes the error condition.",
          "type": "string"
        },
        "details": {
          "description": "Additional details that can help the caller understand or fix the issue.",
          "type": "string"
        }
      },
      "required": [
        "code",
        "message"
      ],
      "type": "object"
    },
    "MonthAndYear" : {
      "description": "Represents a month in a specific year.",
      "type" : "object",
      "properties" : {
        "year" : {
          "$ref" : "#/definitions/Year"
        },
        "month" : {
          "$ref" : "#/definitions/Month"
        }
      }
    },
    "Year" : {
      "description": "Year in YYYY format",
      "type" : "number",
      "example": 2004,
      "pattern" : "^[0-9]{4}$"
    },
    "Month" : {
      "description": "Month in MM format",
      "type" : "number",
      "example": 11,
      "pattern" : "^(0?[1-9]|1[012])$"
    },
    "VehicleStatusInCatalog": {
      "description": "Status of vehicle in Amazon's catalog.",
      "enum": [
        "ACTIVE",
        "DELETED"
      ],
      "type": "string",
      "x-docgen-enum-table-extension": [
        {
          "description": "Vehicle is active in Amazon's catalog.",
          "value": "ACTIVE"
        },
        {
          "description": "Vehicle is deleted from Amazon's catalog.",
          "value": "DELETED"
        }
      ]
    }
  }
}
