Advance Auto Parts Catalog API

The Advance Auto Parts Catalog API provides programmatic access to the full product catalog including parts, accessories, batteries, and fluids. Supports vehicle fitment lookups by year/make/model/engine, part number searches, availability checks, pricing, and store inventory queries for professional and DIY customers.

OpenAPI Specification

advance-auto-parts-catalog-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Advance Auto Parts Catalog API
  description: >-
    The Advance Auto Parts Catalog API provides programmatic access to the full product catalog
    including parts, accessories, batteries, and fluids. Supports vehicle fitment lookups by
    year/make/model/engine, part number searches, availability checks, pricing, and store
    inventory queries for professional and DIY customers.
  version: "1"
  contact:
    name: Advance Auto Parts Support
    url: https://www.advanceautoparts.com/i/help/customer-service
  termsOfService: https://www.advanceautoparts.com/i/policies/terms-and-conditions
  license:
    name: Advance Auto Parts Terms of Service
    url: https://www.advanceautoparts.com/i/policies/terms-and-conditions
servers:
  - url: https://api.advanceautoparts.com/v1
    description: Advance Auto Parts Catalog API Production
tags:
  - name: Vehicles
    description: Vehicle year/make/model lookup and fitment
  - name: Products
    description: Parts and product catalog
  - name: Inventory
    description: Store and warehouse inventory
  - name: Stores
    description: Store locations and availability
security:
  - apiKey: []
paths:
  /vehicles/years:
    get:
      operationId: getVehicleYears
      summary: Advance Auto Parts List Vehicle Years
      description: "Retrieve all available vehicle model years for fitment lookup."
      tags:
        - Vehicles
      responses:
        '200':
          description: "List of vehicle years."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/YearList'
              examples:
                getVehicleYears200Example:
                  summary: Default getVehicleYears 200 response
                  x-microcks-default: true
                  value:
                    years:
                      - 2024
                      - 2023
                      - 2022
        '401':
          description: "Unauthorized."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                getVehicleYears401Example:
                  summary: Default getVehicleYears 401 response
                  x-microcks-default: true
                  value:
                    code: "UNAUTHORIZED"
                    message: "Invalid API key"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /vehicles/makes:
    get:
      operationId: getVehicleMakes
      summary: Advance Auto Parts List Vehicle Makes
      description: "Retrieve all available vehicle makes for a given model year."
      tags:
        - Vehicles
      parameters:
        - name: year
          in: query
          required: true
          description: "Vehicle model year."
          schema:
            type: integer
            example: 2022
      responses:
        '200':
          description: "List of vehicle makes."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MakeList'
              examples:
                getVehicleMakes200Example:
                  summary: Default getVehicleMakes 200 response
                  x-microcks-default: true
                  value:
                    makes:
                      - id: "FORD"
                        name: "Ford"
                      - id: "CHEV"
                        name: "Chevrolet"
        '401':
          description: "Unauthorized."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                getVehicleMakes401Example:
                  summary: Default getVehicleMakes 401 response
                  x-microcks-default: true
                  value:
                    code: "UNAUTHORIZED"
                    message: "Invalid API key"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /vehicles/models:
    get:
      operationId: getVehicleModels
      summary: Advance Auto Parts List Vehicle Models
      description: "Retrieve all vehicle models for a given year and make."
      tags:
        - Vehicles
      parameters:
        - name: year
          in: query
          required: true
          description: "Vehicle model year."
          schema:
            type: integer
        - name: makeId
          in: query
          required: true
          description: "Vehicle make identifier."
          schema:
            type: string
      responses:
        '200':
          description: "List of vehicle models."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelList'
              examples:
                getVehicleModels200Example:
                  summary: Default getVehicleModels 200 response
                  x-microcks-default: true
                  value:
                    models:
                      - id: "F150"
                        name: "F-150"
                      - id: "MUST"
                        name: "Mustang"
        '401':
          description: "Unauthorized."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                getVehicleModels401Example:
                  summary: Default getVehicleModels 401 response
                  x-microcks-default: true
                  value:
                    code: "UNAUTHORIZED"
                    message: "Invalid API key"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /products:
    get:
      operationId: searchProducts
      summary: Advance Auto Parts Search Products
      description: "Search the parts catalog by keyword, part number, or vehicle fitment parameters."
      tags:
        - Products
      parameters:
        - name: q
          in: query
          required: false
          description: "Keyword search query."
          schema:
            type: string
        - name: partNumber
          in: query
          required: false
          description: "Specific part number to look up."
          schema:
            type: string
        - name: year
          in: query
          required: false
          description: "Vehicle model year for fitment filter."
          schema:
            type: integer
        - name: makeId
          in: query
          required: false
          description: "Vehicle make ID for fitment filter."
          schema:
            type: string
        - name: modelId
          in: query
          required: false
          description: "Vehicle model ID for fitment filter."
          schema:
            type: string
        - name: categoryId
          in: query
          required: false
          description: "Product category ID to filter results."
          schema:
            type: string
        - name: limit
          in: query
          required: false
          description: "Maximum number of products to return."
          schema:
            type: integer
            default: 20
        - name: offset
          in: query
          required: false
          description: "Pagination offset."
          schema:
            type: integer
            default: 0
      responses:
        '200':
          description: "Matching products."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductList'
              examples:
                searchProducts200Example:
                  summary: Default searchProducts 200 response
                  x-microcks-default: true
                  value:
                    products:
                      - id: "SKU-123456"
                        name: "Duralast Gold Brake Pad Set"
                        partNumber: "MKD1083"
                        brand: "Duralast Gold"
                        price: 54.99
                        available: true
                    total: 1
        '401':
          description: "Unauthorized."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                searchProducts401Example:
                  summary: Default searchProducts 401 response
                  x-microcks-default: true
                  value:
                    code: "UNAUTHORIZED"
                    message: "Invalid API key"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /products/{productId}:
    get:
      operationId: getProduct
      summary: Advance Auto Parts Get Product Details
      description: "Retrieve full product details including specifications, images, and compatibility notes."
      tags:
        - Products
      parameters:
        - name: productId
          in: path
          required: true
          description: "Product SKU or part number."
          schema:
            type: string
      responses:
        '200':
          description: "Product details."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
              examples:
                getProduct200Example:
                  summary: Default getProduct 200 response
                  x-microcks-default: true
                  value:
                    id: "SKU-123456"
                    name: "Duralast Gold Brake Pad Set"
                    partNumber: "MKD1083"
                    brand: "Duralast Gold"
                    description: "Semi-metallic brake pads for front axle"
                    price: 54.99
                    available: true
                    categoryId: "brake-pads"
        '404':
          description: "Product not found."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                getProduct404Example:
                  summary: Default getProduct 404 response
                  x-microcks-default: true
                  value:
                    code: "NOT_FOUND"
                    message: "Product not found"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /inventory:
    get:
      operationId: checkInventory
      summary: Advance Auto Parts Check Product Inventory
      description: "Check availability and quantity of a product at nearby stores or warehouses."
      tags:
        - Inventory
      parameters:
        - name: productId
          in: query
          required: true
          description: "Product SKU or part number."
          schema:
            type: string
        - name: storeId
          in: query
          required: false
          description: "Specific store ID to check."
          schema:
            type: string
        - name: zip
          in: query
          required: false
          description: "ZIP code to find nearby stores."
          schema:
            type: string
        - name: radius
          in: query
          required: false
          description: "Search radius in miles."
          schema:
            type: integer
            default: 25
      responses:
        '200':
          description: "Inventory availability."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InventoryResult'
              examples:
                checkInventory200Example:
                  summary: Default checkInventory 200 response
                  x-microcks-default: true
                  value:
                    productId: "SKU-123456"
                    stores:
                      - storeId: "store-001"
                        storeName: "Advance Auto Parts - Main St"
                        quantity: 4
                        available: true
        '401':
          description: "Unauthorized."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                checkInventory401Example:
                  summary: Default checkInventory 401 response
                  x-microcks-default: true
                  value:
                    code: "UNAUTHORIZED"
                    message: "Invalid API key"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /stores:
    get:
      operationId: getStores
      summary: Advance Auto Parts List Nearby Stores
      description: "Find Advance Auto Parts store locations near a ZIP code or geographic coordinates."
      tags:
        - Stores
      parameters:
        - name: zip
          in: query
          required: false
          description: "ZIP code to search near."
          schema:
            type: string
        - name: lat
          in: query
          required: false
          description: "Latitude coordinate."
          schema:
            type: number
            format: float
        - name: lon
          in: query
          required: false
          description: "Longitude coordinate."
          schema:
            type: number
            format: float
        - name: radius
          in: query
          required: false
          description: "Search radius in miles."
          schema:
            type: integer
            default: 25
        - name: limit
          in: query
          required: false
          description: "Maximum number of stores to return."
          schema:
            type: integer
            default: 10
      responses:
        '200':
          description: "List of nearby stores."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreList'
              examples:
                getStores200Example:
                  summary: Default getStores 200 response
                  x-microcks-default: true
                  value:
                    stores:
                      - id: "store-001"
                        name: "Advance Auto Parts - Main St"
                        address: "123 Main St, Springfield, IL 62701"
                        phone: "217-555-0100"
                        hours: "Mon-Sat 7:30AM-9PM, Sun 9AM-8PM"
                        distance: 1.2
        '401':
          description: "Unauthorized."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                getStores401Example:
                  summary: Default getStores 401 response
                  x-microcks-default: true
                  value:
                    code: "UNAUTHORIZED"
                    message: "Invalid API key"
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key
  schemas:
    YearList:
      type: object
      description: "List of available vehicle model years."
      properties:
        years:
          type: array
          description: "Array of model years."
          items:
            type: integer
    MakeList:
      type: object
      description: "List of vehicle makes."
      properties:
        makes:
          type: array
          description: "Array of vehicle makes."
          items:
            $ref: '#/components/schemas/Make'
    Make:
      type: object
      description: "A vehicle manufacturer."
      properties:
        id:
          type: string
          description: "Make identifier."
          example: "FORD"
        name:
          type: string
          description: "Make display name."
          example: "Ford"
    ModelList:
      type: object
      description: "List of vehicle models."
      properties:
        models:
          type: array
          description: "Array of vehicle models."
          items:
            $ref: '#/components/schemas/VehicleModel'
    VehicleModel:
      type: object
      description: "A vehicle model."
      properties:
        id:
          type: string
          description: "Model identifier."
          example: "F150"
        name:
          type: string
          description: "Model display name."
          example: "F-150"
    Product:
      type: object
      description: "An automotive part or product."
      properties:
        id:
          type: string
          description: "Product SKU."
          example: "SKU-123456"
        name:
          type: string
          description: "Product name."
          example: "Duralast Gold Brake Pad Set"
        partNumber:
          type: string
          description: "Manufacturer part number."
          example: "MKD1083"
        brand:
          type: string
          description: "Brand name."
          example: "Duralast Gold"
        description:
          type: string
          description: "Product description."
          example: "Semi-metallic brake pads for front axle."
        price:
          type: number
          format: float
          description: "Current retail price."
          example: 54.99
        available:
          type: boolean
          description: "Whether the product is available."
          example: true
        categoryId:
          type: string
          description: "Product category identifier."
          example: "brake-pads"
    ProductList:
      type: object
      description: "List of products matching search criteria."
      properties:
        products:
          type: array
          description: "Array of products."
          items:
            $ref: '#/components/schemas/Product'
        total:
          type: integer
          description: "Total number of matching products."
          example: 42
    InventoryResult:
      type: object
      description: "Inventory availability result for a product across stores."
      properties:
        productId:
          type: string
          description: "Product SKU."
          example: "SKU-123456"
        stores:
          type: array
          description: "Store inventory records."
          items:
            $ref: '#/components/schemas/StoreInventory'
    StoreInventory:
      type: object
      description: "Inventory at a specific store."
      properties:
        storeId:
          type: string
          description: "Store identifier."
          example: "store-001"
        storeName:
          type: string
          description: "Store display name."
          example: "Advance Auto Parts - Main St"
        quantity:
          type: integer
          description: "Available quantity."
          example: 4
        available:
          type: boolean
          description: "Whether in stock."
          example: true
    Store:
      type: object
      description: "An Advance Auto Parts retail store."
      properties:
        id:
          type: string
          description: "Store identifier."
          example: "store-001"
        name:
          type: string
          description: "Store name."
          example: "Advance Auto Parts - Main St"
        address:
          type: string
          description: "Street address."
          example: "123 Main St, Springfield, IL 62701"
        phone:
          type: string
          description: "Phone number."
          example: "217-555-0100"
        hours:
          type: string
          description: "Business hours."
          example: "Mon-Sat 7:30AM-9PM, Sun 9AM-8PM"
        distance:
          type: number
          format: float
          description: "Distance from search location in miles."
          example: 1.2
    StoreList:
      type: object
      description: "List of nearby store locations."
      properties:
        stores:
          type: array
          description: "Array of store locations."
          items:
            $ref: '#/components/schemas/Store'
    ErrorResponse:
      type: object
      description: "API error response."
      properties:
        code:
          type: string
          description: "Error code."
          example: "NOT_FOUND"
        message:
          type: string
          description: "Error message."
          example: "The requested resource was not found."