Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 308 Next »

API URL: https://api.autosyncstudio.com/

API keys may be generated in the portal: https://portal.autosyncstudio.com/

See also the auto-generated API Reference: https://api.autosyncstudio.com/docs/index.html

1. Legend

URL query parameter prefixes:

  • f- - (filter) denotes a parameter that narrows down the result set or specifies preferred records, e.g. f-year

  • i- - (include) denotes a parameter that adds optional data to the result, e.g. i-colors

  • p- - (page) denotes a parameter that pertains to pagination, e.g. p-number

  • s- - (sort) denotes a parameter that orders a collection by a specified field, e.g. s-price

2. Authorization

All vehicle and wheel endpoints require a valid key to pass authorization. Each key determines access to resources.

Append key parameter to a URL to specify a key:

/vehicles/years?key=secret

If key parameter is not specified or a provided key is invalid, the API will return the following response for endpoints requiring authorization:

{
  "Error": "Invalid API key"
}

GET /keys/validate

To test if an API key is valid, you can query the following endpoint:

/keys/validate?key=secret

A successfully validated key passed to the endpoint will result in the following response:

{
  "Status": "OK"
}

3. Segments

The endpoints are divided into the following segments:

  • Accessories

  • Tires

  • Vehicles

  • Wheels

Each set of endpoints is guarded by a permission. An attempt to access an endpoint without appropriate permission assigned to an API key will result in the following error:

{
  "Error": "Unauthorized access to segment: tires"
}

If you see the error and believe this is a mistake, please contact AutoSync.

4. API Key Configuration

GET /keys/config

Configuration set for an API key. This includes theming and filtering.

/keys/config?key=secret

Sample response for a valid key:

{
  "BrandIds": [130],
  "Locations": [{
      "Id": 100,
      "Name": "Vancouver Premium Tire",
      "Country": "Canada",
      "Address": "2452 52 Ave",
      "City": "Vancouver",
      "State": "BC",
      "Zip": "V2Y 4B4",
      "Phone": "(604) 333-4444",
      "Coordinates": [
        45.133904,
        -122.584391
      ]
    },
    ...
  ],
  "MakeIds": [],
  "Segments": [
    "tires",
    "vehicles",
    "wheels"
  ],
  "VehicleTypes": [],
  "Visualizer": {
    "AlignHomeContentToTop": true,
    "BgImg": "",
    "BgImgOpacity": 1,
    "BrandColor": "#ae1016",
    "BrandLogo": "https://vvs.autosyncstudio.com/static/icons/Autosync-logo-grey.png",
    "Ga4Key": "UA-213519920-3",
    "ListVehicleModelsByYear": true,
    "PaginationSize": 24,
    "ScrollIntoView": true,
    "TireLogo": "https://vvs.autosyncstudio.com/static/clients/11/product_logo.071c7.webp",    
    "VehicleLogo": "https://vvs.autosyncstudio.com/static/vehicles.png",
    "VehicleThumbnails": "color",
    "WheelLogo": "https://vvs.autosyncstudio.com/static/clients/11/product_logo.071c7.webp"
  }
}
  • BrandIds - IDs of allowed brands

  • Locations - a list of locations assigned to a retailer or manufacturer; empty if none specified

    • Coordinates - latitude and longitude of the address; null if not available

  • MakeIds - if vehicle makes are filtered, this array will list IDs of allowed makes; otherwise it will be empty

  • Segments - see “3. Segments” for more information

  • VehicleTypes - if vehicle types are filtered, this array will list allowed types; otherwise it will be empty

  • Visualizer - configuration for visualizers

    • AlignHomeContentToTop - home page content should be placed right at the top of the content container

    • BgImg - home page background image URL

    • BgImgOpacity - home page background image opacity

    • BrandColor - theme accent color

    • BrandLogo - URL of the brand logo shown on the home page

    • Ga4Key - Google Analytics key for tracking events

    • ListVehicleModelsByYear - Separate vehicle models by year

    • PaginationSize - default pagination size

    • ScrollIntoView - scroll container into the viewport on user input when the embedded on a page with more content

    • TireLogo - “Shop by Tire” image URL

    • VehicleLogo - “Shop by Vehicle” image URL

    • VehicleThumbnails - either color or mono

    • WheelLogo - “Shop by Wheel” image URL

POST /keys/config

Update API key configuration. Propagating changes may take up to 5 minutes.

Data must be submitted in the body and be JSON-encoded:

{
    "vehicleModels": {
        "use": "include",
        "modelIds": [44, 45, 46, 47]
    }
}

where (* - required):

  • * vehicleModels - vehicle models filter

    • * use - include or exclude to either

    • * modelIds - an array of vehicle model IDs; empty array disables the filter

Example 1. JavaScript code for sending a sample request for quote:

const data = {
  vehicleModels: {
    use: "include",
    modelIds: [44, 45, 46]
  }
};
const resp = await fetch(API_URL + '/keys/config?key=' + API_KEY, {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(data)
});
console.log(await resp.json());

Response:

{
  "Status": "OK"
}

5. Errors

In case of an error, HTTP status will be different than 200 and an error message will be included.

Example 1. Invalid path:

/wheels/unknown

Response (HTTP status 404):

{
  "Error": "Unknown endpoint"
}

Example 2. Invalid parameter value:

/vehicles/makes?f-year=99999

Response (HTTP status 400):

{
  "Error": "Invalid value for query parameter: f-year"
}

Example 3. Implementation error that needs to be addressed by AutoSync (response HTTP status 500):

{
  "Error": "Query error"
}

HTTP status 200 and no error property signify a successful response.

6. Pagination

Every endpoint returning a single collection includes pagination information:

  • MoreItems - true or false denoting the end of a collection or additional records on the next page

By default, collections are limited to 10 records per page.

Example 1. The first page of 10 Ford models (out of 51 in total):

/vehicles/models?f-make=Ford

Response:

{
  "Models": [{
      "Id": 8791,
      "Make": "Ford",
      "Model": "Bronco"
    }, {
      "Id": 8070,
      "Make": "Ford",
      "Model": "E-150"
    },
    ...
  ],
  "MoreItems": true
}

All endpoints may include query parameters for specifying pagination settings:

  • p-number - page number beginning at 1

  • p-size - page size, i.e the number of collection items to be fetched (1-500)

Example 2. The last of three 25-item pages of Ford’s models:

/vehicles/models?f-make=Ford&p-size=25&p-number=2

Response:

{
  "Models": [{
      "Id": 33175,
      "Make": "Ford",
      "Model": "F-150 Lightning"
    },
    ...
  ]
}

Endpoints containing objects with multiple collections, e.g. /wheels/filters, do not include pagination information.

Example 3. No page indicators for collections under filters (models and diameters):

/wheels/filters?i-models&i-diameters&f-brand=Vision

Response:

{
  "Filters": {
    "Models": ["Daytona", "Wizard", "Rage", ...],
    "Diameters": [15, 17, 20, ...]
  }
}

7. Vehicle Endpoints

All endpoints in this section require authorization. For more information see “2. Authorization”.

GET /vehicles/years

A list of all supported vehicle years.

Optional query parameters:

  • Filters

    • f-make - filter by make

    • f-model - filter by model

    • f-submodel - filter by sub model

    • f-types - filter by comma-separated vehicle types

Results are sorted by year in ascending order.

Supported vehicle types:

  • Car

  • CUV

  • SUV

  • Truck

  • UTV

  • Van

Example 1. All supported years (page size increased to 100 to include all results):

/vehicles/years?p-size=100

Response:

{
  "Years": [2000, 2001, 2002, ...]
}

Example 2. Years for Audi A4 Sport:

/vehicles/years?f-make=Audi&f-model=A4&f-submodel=Sport

Response:

{
  "Years": [2010, 2011, 2012, 2013, 2014, 2015, 2016]
}

GET /vehicles/makes

A list of vehicle makes.

Optional query parameters:

  • Data

    • i-logos - include URLs to logos

    • i-vehicleCount - include the number of vehicles for each make (subject to the filters)

  • Filters

    • f-year - filter by year

    • f-types - filter by comma-separated vehicle types

Results are sorted by make in ascending order.

For more information on how to filter vehicle models by vehicle types, see /vehicles/years.

Example 1. A list of all makes:

/vehicles/makes

Response:

{
  "Makes": [{
      "Make": "Acura"
    }, {
      "Make": "Alfa Romeo"
    },
    ...
  ]
}

Example 2. A list of Truck or Van makes:

/vehicles/makes?f-types=Truck,Van

Response:

{
  "Makes": [{
      "Make": "Buick"
    }, {
      "Make": "Cadillac"
    },
    ...
  ]
}

Example 3. A list of makes that manufactured vehicles in 2012 with their logos and the total number of vehicles released that year:

/vehicles/makes?f-year=2012&i-logos&i-vehicleCount

Response:

{
  "LogoUrlBase: "https://storage.googleapis.com/autosync-brand-logos/vehicles/",
  Makes: [{
      Make: "Audi",
      Logo: "Audi.png",
      VehicleCount": 49
    },
    ...
  ]
}

Appending Logo to LogoUrlBase composes a complete logo image URL, for example:

https://storage.googleapis.com/autosync-brand-logos/vehicles/Audi.png

Do not hardcode LogoUrlBase or parts of it as it may change.

GET /vehicles/models

A list of vehicle models.

Optional query parameters:

  • Data

    • i-img001 - include URLs of side angle images in the default color

    • i-img014 - include URLs of rear angle images in the default color

    • i-img032 - include URLs of front angle images in the default color

    • i-year - include years for each vehicle model

    • i-maxYear - include the latest year for each vehicle model (e.g 2019 for Jaguar XJ which was discontinued in 2020); when i-year parameter is used, i-maxYear will have the same value

    • i-imgYear - include the year of the vehicle in the image (may be different than the year of the vehicle); takes effect only if any images are included

    • i-body - include body type; the same model will be listed multiple times if it’s available in multiple body types (e.g. “Hatchback” and “Sedan”)

    • i-type - include vehicle type

  • Filters

    • f-year - filter by year

    • f-make - filter by make

    • f-types - filter by comma-separated vehicle types

    • f-query - filter by a full-text search query, e.g. “Ford Mustang”

    • f-imgColor - specify preferred image colors: rand – random colors (default), mono – prefer monochromatic colors; takes effect only if any images are included

  • Global Filters

    • gf-vehicleModels - enable/disable API key-level filter for vehicle models; true - enable (default), false - disable

Results are sorted by make and model in ascending order.

For more information on how to filter vehicle models by vehicle types, see /vehicles/years.

Example 1. A list of models by year and make:

/vehicles/models?f-year=2012&f-make=Audi

Response:

{
  "Models": [{
      "Id": 2778,
      "Make": "Audi",
      "Model": "A3"
    }, {
      "Id": 4365,
      "Make": "Audi",
      "Model": "A3 Quattro"
    },
    ...
  ]
}

Example 2. Mustang models:

/vehicles/models?f-query=Mustang

Response:

{
  "Models": [{
      "Id": 1164,
      "Make": "Ford",
      "Model": "Mustang"
    }, {
      "Id": 7857,
      "Make": "Ford",
      "Model": "Mustang Mach-E"
    }
  ]
}

Example 3. 2018 Mazda models with body types:

/vehicles/models?f-year=2018&f-make=Mazda&i-body

Response:

{
  "Models": [{
      "Id": 2487,
      "Make": "Mazda",
      "Model": "3",
      "Body": "Hatchback"
    }, {
      "Id": 2487,
      "Make": "Mazda",
      "Model": "3",
      "Body": "Sedan"
    },
    ...
  ]
}

Example 4. 2009 Hummer H2 models with vehicle types:

/vehicles/models?f-query=2009 Hummer H2&i-type

Response:

{
  "Models": [{
      "Id": 6700,
      "Make": "Hummer",
      "Model": "H2",
      "Type": "SUV"
    }, {
      "Id": 6700,
      "Make": "Hummer",
      "Model": "H2",
      "Type": "Truck"
    }
  ]
}

Example 4. Ford Freestyle model split by year:

/vehicles/models?f-query=Ford Freestyle&i-year

Response:

{
  "Models": [{
      "Id": 2619,
      "Make": "Ford",
      "Model": "Freestyle",
      "Year": 2007
    }, {
      "Id": 2618,
      "Make": "Ford",
      "Model": "Freestyle",
      "Year": 2006
    },
    ...
  ]
}

Example 5. Filter by year (2016), make (“BMW”) and include images in the default color for each model together with the years of the vehicles in the images:

/vehicles/models?f-year=2016&f-make=bmw&i-img032&i-imgYear

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-vehicles/",
  "Models": [{
      "Id": 2316,
      "Make": "BMW",
      "Model": "228i",
      "ImgYear": 2016,
      "Img032": {
      "240": "10631/10631_240_032_B45.webp",
      "350": "10631/10631_350_032_B45.webp",
      "640": "10631/10631_640_032_B45.webp",
      "960": "10631/10631_960_032_B45.webp",
      "2400": "10631/10631_2400_032_B45.webp"
    },
    ...
  ]
}

Appending image path to ImgUrlBase composes a complete image URL, for example:

https://storage.googleapis.com/autosync-vehicles/10631/10631_2400_032_B45.webp

Do not hardcode ImgUrlBase or parts of it as it may change.

GET /vehicles/submodels

A list of vehicle sub models.

Optional query parameters:

  • Data

    • i-img001 - include URLs of side angle images in the default color

    • i-img014 - include URLs of rear angle images in the default color

    • i-img032 - include URLs of front angle images in the default color

    • i-body - include body type; the same sub model will be listed multiple times if it’s available in multiple body types

    • i-type - include vehicle type

  • Filters

    • f-year - filter by year

    • f-make - filter by make

    • f-model - filter by model

    • f-query - filter by a full-text search query, e.g. “Volvo V90”

    • f-types - filter by comma-separated vehicle types

    • f-imgColor - specify preferred image colors: rand – random colors (default), mono – prefer monochromatic colors; takes effect only if any images are included

Results are sorted by make, model and sub model in ascending order.

For more information on how to filter vehicle sub models by vehicle types, see /vehicles/years.

Example 1. A list of 2012 Audi A4 sub models:

/vehicles/submodels?f-year=2012&f-make=Audi&f-model=A4

Response:

{
  "Submodels": [{
      "Make": "Audi",
      "Model": "A4",
      "Submodel": "Base"
    }
  ]
}

Example 2. A list of 2010 Honda Civic sub models:

/vehicles/submodels?f-year=2010&f-make=Honda&f-model=Civic&i-body

Response:

{
  "Submodels": [{
      "Make": "Honda",
      "Model": "Civic",
      "Submodel": "DX",
      "Body": "Coupe"
    }, {
      "Make": "Honda",
      "Model": "Civic",
      "Submodel": "DX",
      "Body": "Sedan"
    },
    ...
  ]
}

Example 3. Full-text search results for “2020 jag I-Pace“:

/vehicles/submodels?f-query=2020%20jag%20I-Pace

Response:

{
  "Submodels": [{
      "Make": "Jaguar",
      "Model": "I-Pace",
      "Submodel": "HSE"
    },
    ...
  ]
}

Example 4. A list of Ford F-150 sub models manufactured in 2020 with 032 angle images 960 px wide in the default color:

/vehicles/submodels?f-year=2020&f-make=Ford&f-model=F-150&i-img032

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-vehicles/",
  "Submodels": [{
      "Make": "Ford",
      "Model": "F-150",
      "Submodel": "King Ranch",
      "Img032": {
      "240": "14114/14114_240_032_N1-D1.webp",
      "350": "14114/14114_350_032_N1-D1.webp",
      "640": "14114/14114_640_032_N1-D1.webp",
      "960": "14114/14114_960_032_N1-D1.webp",
      "2400": "14114/14114_2400_032_N1-D1.webp"
    },
    ...
  ]
}

Appending image path to ImgUrlBase composes a complete image URL, for example:

https://storage.googleapis.com/autosync-vehicles/14112/14112_2400_032_JS.webp

Do not hardcode ImgUrlBase or parts of it as it may change.

GET /vehicles

A list of vehicles.

Optional query parameters:

  • Data

    • i-img001 - include URLs of side angle images in the default color

    • i-img014 - include URLs of rear angle images in the default color

    • i-img032 - include URLs of front angle images in the default color

    • i-colors - include a list of available colors

    • i-coordinates - include coordinates for selected angles (001, 024, 032) with wheel angles

    • i-fitments - include OE fitments
      i-optionalFitments - include OE optional fitments

    • i-plusSizes - include an extended range of fitment options

    • i-tags - include tags and niche tag

    • i-lifts001, i-lifts014, i-lifts032 - include lift data and images for each vehicle angle (001, 014, 032)

  • Filters

    • f-id - filter by vehicle ID

    • f-acesVehicleId - filter by ACES vehicle ID

    • f-year - filter by year

    • f-make - filter by make

    • f-model - filter by model

    • f-submodel - filter by sub model

    • f-types - filter by comma-separated vehicle types

    • f-body - filter by body type

    • f-colorId - specify image color by ID; takes precedence over f-imgColor

    • f-imgColor - specify image color: rand – random color (default), mono – prefer monochromatic color; f-colorId parameter takes precedence if both are specified

Results are sorted by year in descending order.

For more information on how to filter vehicles by types, see /vehicles/years.

A. Filtering Vehicles

Example 1. Vehicles filtered by year, make, model, and sub model:

/vehicles?f-year=2018&f-make=Mazda&f-model=3&f-submodel=Touring

Response:

{
  "Vehicles": [{
      "Bed": "",
      "Body": "Hatchback",
      "Doors": null,
      "Drw": false,
      "Id": 11693,
      "Make": "Mazda",
      "Model": "3",
      "Submodel": "Touring",
      "Type": "Car",
      "Year": 2018
    }, {
      "Bed": "",
      "Body": "Sedan",
      "Doors": null,
      "Drw": false,
      "Id": 11695,
      "Make": "Mazda",
      "Model": "3",
      "Submodel": "Touring",
      "Type": "Car",
      "Year": 2018
    }
  ]
}

Example 2. Vehicles filtered by year, make, model, sub model, and body type:

/vehicles?f-year=2018&f-make=Mazda&f-model=3&f-submodel=Touring&f-body=Sedan

Response:

{
  "Vehicles": [{
      "Bed": "",
      "Body": "Sedan",
      "Doors": null,
      "Drw": false,
      "Id": 11695,
      "Make": "Mazda",
      "Model": "3",
      "Submodel": "Touring",
      "Type": "Car",
      "Year": 2018
    }
  ]
}

B. Fetching Vehicle by ID

Example. Vehicle with ID equal to 3635:

/vehicles?f-id=3635

Response:

{
  "Vehicles": [{
      "Bed": "",
      "Body": "Sedan",
      "Doors": null,
      "Drw": false,
      "Id": 3635,
      "Make": "Dodge",
      "Model": "Charger",
      "Submodel": "SRT Hellcat Widebody",
      "Type": "Car",
      "Year": 2021
    }
  ]
}

C. Image URLs

Supported sizes (width in pixels):

  • 2400 – 2400 px × 1250 px

  • 960 - 960 px × 522 px

  • 640 - 640 px × 348 px

  • 350 - 350 px × 190 px

  • 240 - 240 px × 130 px

Example. Including images of angles 001 and 014:

/vehicles?f-id=5851&i-img001&i-img014

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-vehicles/",
  "Vehicles": [{
      "Bed": "",
      "Body": "Coupe",
      "Doors": null,
      "Drw": false,
      "Id": 5851,
      "Img001": {
        "240": "13780/13780_240_001_E7.webp",
        "350": "13780/13780_350_001_E7.webp",
        "640": "13780/13780_640_001_E7.webp",
        "960": "13780/13780_960_001_E7.webp",
        "2400": "13780/13780_2400_001_E7.webp"
      },
      "Img014": {
        "240": "13780/13780_240_014_E7.webp",
        "350": "13780/13780_350_014_E7.webp",
        "640": "13780/13780_640_014_E7.webp",
        "960": "13780/13780_960_014_E7.webp",
        "2400": "13780/13780_2400_014_E7.webp"
      },
      "ImgColorId": 130664,
      "Make": "Ford",
      "Model": "Mustang",
      "Submodel": "Shelby GT350R",
      "Type": "Car",
      "Year": 2019
    }
  ]
}

Appending image path to ImgUrlBase composes a full resource URL, for example:

https://storage.googleapis.com/autosync-vehicles/13780/13780_2400_001_E7.webp

If an image in a given size is not available, null value will be returned.

Do not hardcode ImgUrlBase or parts of it as it may change.

ImgColorId indicates which color was selected for the images.

D. Selecting a Preferred Color

Image URL query parameters may be combined with f-colorId in order to specify a desired color.

Example. Vehicle ID 5851 in color ID 130664 (“Velocity Blue”):

/vehicles?f-id=5851&i-img032&f-colorId=130664

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-vehicles/",
  "Vehicles": [{
      "Bed": "",
      "Body": "Coupe",
      "Doors": null,
      "Drw": false,
      "Id": 5851,
      "Img032": {
        "240": "13780/13780_240_032_E7.webp",
        "350": "13780/13780_350_032_E7.webp",
        "640": "13780/13780_640_032_E7.webp",
        "960": "13780/13780_960_032_E7.webp",
        "2400": "13780/13780_2400_032_E7.webp"
      },
      "ImgColorId": 130664,
      "Make": "Ford",
      "Model": "Mustang",
      "Submodel": "Shelby GT350R",
      "Type": "Car",
      "Year": 2019
    }
  ]
}

If f-colorId is not specified, the default color of a vehicle will be selected.

E. Available colors

To include a list of available colors for each vehicle, append i-colors parameter with no value.

Example. A vehicle with a list of its colors:

/vehicles?f-id=5851&i-colors

Response:

{
  "SwatchUrlBase": "https://storage.googleapis.com/autosync-colors/",
  "Vehicles": [{
      "Bed": "",
      "Body": "Coupe",
      "Colors": [{
          "Id": 130662,
          "Code": "AJ",
          "Name": "Need For Green",
          "ShortName": "Green",
          "Rgb1": "1E7038",
          "Rgb2": "",
          "Swatch": "1E7038.png",
          "Img001": true,
          "Img014": true,
          "Img032": true
        },
        ...
      ]
    }
  ]
}

Appending Swatch to SwatchUrlBase composes a complete color swatch URL, e.g.:

https://storage.googleapis.com/autosync-colors/5E5D63.png

Each object under Colors includes Img001, Img014, and Img032 properties. They signify whether a vehicle image is available for a given angle and in the color.

F. Fitment Data

See Tire Endpoints section for the definitions of the nomenclature.

See Mapping Products to Vehicles guid for details on how to use the fitment data to filter products:
Mapping Products to Vehicles

Appending i-fitments and i-optionalFitments to the URL includes OE and OE optional fitments. i-fitments also adds the following fields:

  • BoltCircle

  • Bore

  • BoreRearnull if the same as Bore

  • DefaultChassisId - if multiple chassis are mapped to the vehicle, this value will represent the closest match

  • LoadRating - minimum tire load rating

  • LoadRatingRear - null if the same as LoadRating

  • LugCount

  • MaxWheelLoad - maximum weight the vehicle would exert on each wheel while in operation

  • Staggered - the vehicle is commonly fitted with staggered wheels and tires

i-tags includes tags, and niche tags.

Niche tags identify wheels (and their corresponding vehicles) that are made for specific vehicles only. They are used primarily for replica wheels made for specific vehicles.

Each OE fitment is compatible with the vehicle without a need for vehicle modifications (e.g. lift kits).

In addition to OE fitments, plus sizes may be requested with i-plusSizes parameter. Plus sizes will only be returned if fitments are requested. Plus sizes are intended for the tuning market. They can be used to show the aftermarket wheel fitment sizes, and tire sizes for that wheel size. Plus size notes provide information on special requirements.

Note. Plus sizes must be matched with fitments by ChassisId.

Each fitment is identified by Id, has ChassisId, and is often described by Name to differentiate it from other options. Typically, a vehicle would have a few fitments sharing the same chassis and multiple plus size for each chassis. Some vehicles may have fitments coming from chassis. This is because sub model alone doesn’t uniquely identify vehicle chassis. For example, vehicle ID 83184 has two chassis:

  • "ChassisId": 70429, "Name": "19\"" - 2 fitments, 14 plus sizes

  • "ChassisId": 92428, "Name": "Ceramic Brake Package" - 1 fitment, 9 plus sizes

Depending on which OE fitment is selected by the end user, either the 14 or the 9 plus sizes may be offered with additional wheel/tire sizes.

Example. A vehicle with OE fitments and plus sizes:

/vehicles?f-id=160890&i-fitments&i-plusSizes&i-tags

Response:

{
  "Vehicles": [{
      "Bed": "",
      "Body": "Coupe",
      "BoltCircle": 120,
      "Bore": 67.1,
      "BoreRear": null,
      "DefaultChassisId": 90851,
      "Doors": null,
      "Drw": false,
      "Fitments": [{
          "AspectRatio": 50,
          "AspectRatioRear": null,
          "ChassisId": 69829,
          "Diameter": null,
          "DiameterRear": null,
          "Format": "M",
          "Id": 69830,
          "InchWidth": null,
          "InchWidthRear": null,
          "MaxOffset": 45,
          "MaxOffsetRear": null,
          "MinOffset": 32,
          "MinOffsetRear": null,
          "Name": "",
          "Offset": 38,
          "OffsetRear": null,
          "RimDiameter": 18,
          "RimDiameterRear": null,
          "RimWidth": 8.5,
          "RimWidthRear": null,
          "SectionWidth": 245,
          "SectionWidthRear": null,
          "SpeedRating": "V",
          "SpeedRatingRear": null,
          "TireSize": "245/50R18",
          "TireSizeRear": null
        }
      ],
      "Id": 160890,
      "LugCount": 5,
      "Make": "Chevrolet",
      "MaxWheelLoad": 595,
      "Model": "Camaro",
      "NicheTag": "Camaro",
      "PlusSizes": [{
          "AspectRatio": 55,
          "ChassisId": 69829,
          "Diameter": null,
          "Format": "M",
          "InchWidth": null,
          "MaxOffset": 42,
          "MinOffset": 35,
          "Notes": [],
          "RimDiameter": 17,
          "RimWidth": 7,
          "SectionWidth": 245,
          "TireSize": "245/55R17",
          "Type": "FR"
        },
        ...
      ],
      "Staggered": true,
      "Submodel": "LS",
      "Tags": [
        "Luxury",
        "Replica"
      ],
      "Type": "Car",
      "Year": 2022
    }
  ]
}

Format identifies tire format:

  • M - metric, e.g. “245/70R17”; SectionWidth, AspectRatio, and RimDiameter will be specified

  • F - flotation, e.g. “37x12.50R17”; Diameter, RimWidth, and RimDiameter will be specified.

Notes will take a form of an empty array if there are no special requirements for the fitment. Otherwise, a list of strings will be returned, for example:

"Notes": [
  "Check fitment, possible clearance issues"
],

Staggered indicates whether a vehicle is commonly fitted with staggered wheels (is a staggered fitment candidate). For example 2022 Chevrolet Camaro LS does not come with factory staggered wheels, but is often upgraded to staggered fitment.

G. Wheel coordinates

To include wheel coordinates append i-coordinates=<agnles> to the URL where <angles> is a comma-separated list of one or more of the following values:

  • 001 - side angle

  • 014 - rear angle

  • 032 - front angle

Example. A vehicle with coordinates for angles 014 and 032:

/vehicles?f-id=10030&i-coordinates=014,032

Response:

{
  "Vehicles": [{
      "Bed": "",
      "Body": "Sedan",
      "Coordinates014": [
        [0.46637, 0.54876, 0.54435, 0.76919],
        [0.81365, 0.52738, 0.86377, 0.70683]
      ],
      "Coordinates032": [
        [0.44379, 0.54001, 0.5214, 0.76462],
        [0.79236, 0.51067, 0.84276, 0.69037]
      ],
      "Doors": null,
      "Drw": false,
      "Id": 10030,
      "InImageWheelDiameters": {
        "Front": 18,
        "FrontMax": 20,
        "Rear": 18,
        "RearMax": 20
      },
      "Make": "Audi",
      "Model": "A4 Quattro",
      "Rotations014": [2, 1],
      "Rotations032": [2, 1],
      "Submodel": "Ultra sport",
      "Type": "Car",
      "WheelAngles014": ["0100", "0100"],
      "WheelAngles032": ["0100", "0200"],
      "Year": 2020
    }
  ]
}

Wheel coordinates include two sets of four values in the following order:

  1. x1 - top left corner’s x value

  2. y1 - top left corner’s y value

  3. x2 - bottom right corner’s x value

  4. y2 - bottom right corner’s y value

Each value is expressed in percents, counting vehicle image’s top-left corner as the starting point.

Overlayed front and rear wheel images match original rims best when slightly rotated. Each set of coordinates (for each vehicle angle) will have a corresponding set of rotation values (in degrees):

"Rotations001": [-10, 10],
"Rotations014": [2, 1],
"Rotations032": [2, 1],

In the example above, the left wheel should be rotated by -10 deg (counterclockwise) and the right wheel should be rotated by 10 deg (clockwise) for vehicle angle 001.

Wheel angles specify preferred wheel angles for each vehicle angle and each wheel. For example:

"WheelAngles032": ["0100", "0200"]

indicates that the vehicle, when shown in angle 032, should have wheel angle 0100 layered on top of the first (counting from left to right) wheel and angle 0200 over the second wheel (on the right).

Dually trucks, being an exception, and will return 0300Front and 0300Rear wheel angles for 001 vehicle angle (instead of 0300 for non-dually vehicles):

"WheelAngles001": ["0300Front", "0300Rear"]

InImageWheelDiameters is a list of wheel diameters corresponding with vehicle images:

  • Front - front wheel diameter as visible in the vehicle image

  • FrontMax - maximum front wheel diameter visually fitting the vehicle image

  • Rear - rear wheel diameter as visible in the vehicle image

  • RearMax - maximum rear wheel diameter visually fitting the vehicle image

Wheel coordinates are set for Front and FrontMax diameters and need to be proportionally scaled up for diameters between Front and FrontMax, and between Rear and RearMax.

If information for InImageWheelDiameters is not available, a null value will be returned:

"InImageWheelDiameters": null

H. Sample Positioning Implementation

Having the following values returned from /vehicles endpoint:

"ImgUrlBase": "https://storage.googleapis.com/autosync-vehicles/"
...
"Img032": {
  ...
  "2300": "11360/11360_2400_032_CI.webp"
}
...
"Coordinates032": [
  [0.44425, 0.5158, 0.5272, 0.74908],
  [0.79188, 0.48561, 0.84501, 0.67501]
],
"Rotations032": [2, 1],

and the following data returned from /wheels endpoint:

"ImgUrlBase": "https://storage.googleapis.com/autosync-wheels/"
...
"Img0100": "TSW/Blanchimont_Semi-Gloss_Black_5-lug_0100.png",
"Img0200": "TSW/Blanchimont_Semi-Gloss_Black_5-lug_0200.png"

we can overlay the wheels on top of the vehicles with the following HTML and CSS code:

<div class="wrapper">
  <img class="vehicle-image" src="https://storage.googleapis.com/autosync-vehicles/11360/11360_2400_032_CI.webp">
  <img class="left-wheel" src="https://storage.googleapis.com/autosync-wheels/TSW/Blanchimont_Semi-Gloss_Black_5-lug_0100.png">
  <img class="right-wheel" src="https://storage.googleapis.com/autosync-wheels/TSW/Blanchimont_Semi-Gloss_Black_5-lug_0200.png">
</div>
.wrapper {
  position: relative;
}
.vehicle-image {
  width: 100%;
}
.left-wheel {
  position: absolute;
  left: 44.425%;
  top: 51.58%;
  width: calc(52.72% - 44.425%);
  height: calc(74.908% - 51.58%);
  transform: rotate(2deg);
}
.right-wheel {
  position: absolute;
  top: 48.561%;
  left: 79.188%;
  width: calc(84.501% - 79.188%);
  height: calc(67.501% - 48.561%);
  transform: rotate(1deg);
}

Live CodePen example:

https://codepen.io/m-autosync/pen/BapjrqY

GET /vehicles/vehicle/[vehicleId]/accessories

Beta Functionality – available in development only.

A list of accessories for a requested vehicle.

Required URI parameters:

  • * vehicleId - vehicle ID

Optional query parameters:

  • Data

    • i-imgVov - include accessory VoV images for selected angles together with coordinates and rotation angles; a comma-separated list of one or more of the following values:001, 014, 032

    • i-vehicleImg - include vehicle images for selected angles; a comma-separated list of one or more of the following values:001, 014, 032

    • i-commonMinScale - some accessories may require different vehicle scales to fit them on top of vehicle images; the scales may differ not only between vehicles but also vehicle angles (for example a hitch bike rack may require a smaller scale for angle 001); this parameter includes at least one scale that is the same for all vehicle angles (001, 014, 032) for a given vehicle and accessory; it takes effect only if i-imgVov is specified

  • Filters

    • f-vehicleColorId - specify vehicle color by ID; takes precedence over f-vehicleColor

    • f-vehicleColor - specify vehicle image color: rand – random color (default), mono – prefer monochromatic color; f-vehicleColorId parameter takes precedence if both are specified

Example 1. List accessories with their coordinates and images for all angles for vehicle ID 38050 (2021 Ford F-150 XL Extended Cab):

/vehicles/vehicle/38050/accessories?i-imgVov=32&i-vehicleImg=32

Response:

{
  "AccessoriesImgUrlBase": "https://storage.googleapis.com/autosync-accessories/",
  "Vehicle": {
    "Accessories": [{
        "BaseAccessoryIds": [
          14
        ],
        "Coordinates032": [{
            "Coordinates": [
              0.5581,
              0.23113,
              0.72682,
              0.38212
            ],
            "Scale": 0.9
          }, {
            "Coordinates": [
              0.56455,
              0.20126,
              0.75202,
              0.36902
            ],
            "Scale": 1
          }
        ],
        "Description": "Racks and Carriers by THULE - Cargo Basket, Rack-Mounted With Net",
        "Id": 3,
        "ImgVov032": [
          "pcw7PhX5J50kfmKFruzyew__.webp",
          null
        ],
        "PartNumber": "VJT4Z7855100C",
        "Rotation032": 0
        }
      },
      ...
    ]},
    "Img032": {
      "240": "14890/14890_240_032_E7.webp",
      "350": "14890/14890_350_032_E7.webp",
      "640": "14890/14890_640_032_E7.webp",
      "960": "14890/14890_960_032_E7.webp",
      "2400": "14890/14890_2400_032_E7.webp"
    }
  },
  "VehicleImgUrlBase": "https://storage.googleapis.com/autosync-vehicles/"
}

Base Accessories

Accessories can depend on other accessories to be properly visualized. For example a cargo box may require a roof rack. BaseAccessoryIds provide a list of IDs of alternative accessories required by the main accessory. Any one from the list may be selected.

"BaseAccessoryIds": [
  14
],

The image above shows an accessory (green rectangle) with its dependent accessory (orange rectangle).

Coordinates

Visualizing accessories may require scaling down vehicle images. For each angle (001, 014 or 032), there may be a set of different vehicle scales. The biggest, is the maximum scale for which the accessory stays within the canvas of the requested vehicle image. Smaller scales are provided to match other accessories that require smaller scales.

"Coordinates001": [{
    "Coordinates": [
      0.57587,
      0.25752,
      0.62611,
      0.4054
    ],
    "Scale": 0.8
  }, {
    "Coordinates": [
      0.58536,
      0.22721,
      0.64188,
      0.39358
    ],
    "Scale": 0.9
  }, ...
],

In the example above, the accessory requires scaling the vehicle image down to 90% or less. 0.8 coordinates are provided because another accessory returned in the response requires 80% scale. When two accessories are overlaid on a vehicle, the highest common scale should be used.

The values are adjusted for each scale.

Coordinates are provided in four-element arrays: x1, y1, x2, y2:

{
  "Coordinates": [ - coordinates for vehicle image when scaled to 90%
    0.58536,       - x1
    0.22721,       - y1
    0.64188,       - x2
    0.39358        - y2
  ],
  "Scale": 0.9     - vehicle image scale
}

Top left corner of a vehicle image is the (0,0) point.

In some cases, vehicle scales may be different for different vehicle angles. For example Yakima - Hitch Mounted Snow Sport requires a smaller scale on angle 001.

However, if it’s desired to preserve vehicle scale between different angles, i-commonMinScale parameter may be added which will ensure at least one common scale will be included between vehicle angles.

A common scale between different accessories is always included.

Images

Two accessory images are returned for each angle:

"ImgVov032": [
  "pcw7PhX5J50kfmKFruzyew__.webp", - back
  null                             - front
],

Any of them can be null. The first image (back) is meant to be placed behind a vehicle image and the second (front) on top of it.

When positioning images, their coordinates should be applied to both images in the same way.

In addition to coordinates, accessory images may require rotation. Same as for coordinates, rotation should be applied the same way for both images (back and front). Rotation requirements are provided by Rotation001, Rotation014 or Rotation032.

8. Wheel Endpoints

All endpoints in this section require authorization. For more information see “2. Authorization”.

Wheel tags are separated into segment tags and vehicle type tags.

Segment tags:

  • All Season

  • All Terrain

  • All Weather

  • Commercial

  • Extreme Terrain

  • Highway Terrain

  • Mud Terrain

  • Performance

  • Race

  • Spare

  • Summer

  • Touring

  • Winter

Vehicle type tags:

  • ATV/UTV

  • Car

  • Lawn/Garden/Golf

  • Medium Truck

  • SUV/Light Truck

  • Tractor

  • Trailer

See Mapping Products to Vehicles guid for details on how to use vehicle fitment data to filter wheels:
Mapping Products to Vehicles

GET /wheels/brands

A list of wheel brands.

Optional query parameters:

  • Data

    • i-logos - include brand logos

    • i-about - include brand’s about information

    • i-manufacturer - include brand’s manufacturer

    • i-wheelCount - include the total number of wheels for each brand

  • Filters

    • f-inStock - list only brands with products in stock; the parameter doesn’t require any value; requires inventory to be enabled

Example 1. All brands:

/wheels/brands

Response:

{
  "Brands": [{
      "Id": 9,
      "Brand": "Black Rhino"
    }, {
      "Id": 11,
      "Brand": "Bravado"
    },
    ...
  ]
}

Example 2. All brands with their logos and the number of wheels:

/wheels/brands?i-logos&i-wheelCount

Response:

{
  "BrandLogosUrlBase": "https://storage.googleapis.com/autosync-brand-logos/wheels/",
  "Brands": [{
      "Id": 9,
      "Brand": "Black Rhino",
      "Logo": "Black_Rhino.png",
      "WheelCount": 4119
    },
    ...
  ]
}

Appending Logo to BrandLogosUrlBase composes a complete logo image URL, for example:

https://storage.googleapis.com/autosync-brand-logos/wheels/Black_Rhino.png

Do not hardcode BrandLogosUrlBase or parts of it as it may change.

GET /wheels/filters

A list of wheel filters.

Optional query parameters:

  • Data

    • i-brands - include a list of brands

    • i-brandLogos - include brand logos together with brand names

    • i-shortFinishes - include a list of short (simplified) finishes

    • i-tags - include a list of tags

    • i-diameters - include a list of diameters

    • i-widths - include a list of widths

    • i-offsets - include a list of offsets

    • i-prices - include a price range

    • i-tags - include all combinations of tags

  • Filters

    • f-brand - filter by brand name

    • f-brandIds - filter by comma-separated brand IDs

    • f-diameters - filter by comma-separated diameters [inch]

    • f-diameters2 - filter by secondary comma-separated diameters [inch]; specifying f-diameters and f-diameters2 will list values that belong to wheel styles with wheels of both sets of diameters; intended for vehicles with staggered fitment

    • f-widths - filter by comma-separated widths [inch]

    • f-widths2 - filter by secondary comma-separated widths [inch]; specifying f-widths and f-widths2 will list values that belong to wheel styles with wheels of both sets of widths; intended for vehicles with staggered fitment

    • f-andSegmentTags - filter by segment tags; see “8. Wheel Endpoints” for a complete list of segment tags; comma (,) acts as AND operator (e.g. All Terrain,All Weather for wheels classified as both All Terrain and All Weather

    • f-orSegmentTags - filter by segment tags; see “8. Wheel Endpoints” for a complete list of segment tags; comma (,) acts as OR operator (e.g. All Terrain,All Weather for wheels classified as either All Terrain or All Weather

    • f-andVehicleTypeTags - filter by vehicle type tags; see “8. Wheel Endpoints” for a complete list of vehicle type tags; comma (,) acts as AND operator (e.g. Car,SUV/Light Truck for wheels designed for both cars and SUVs

    • f-orVehicleTypeTags - filter by vehicle type tags; see "8. Wheel Endpoints" for a complete list of vehicle type tags; comma (,) acts as OR operator (e.g. Car,Trailer for wheels designed for either for cars or trailers

    • f-nicheTag - filter by niche tag; N/A – only wheels for vehicles with no niche tag set, any other value will include wheels with the specified niche tag and with no niche tag set, e.g. Lexus ES – wheels with either no niche tag set or for Lexus ES vehicles

    • f-lugCount - filter by lug count (e.g. 5 or 6)

    • f-boltCircle - filter by either of the bolt circles: bolt circle 1 or bolt circle 2 (e.g. 139.70 or 114.30); values are in mm

    • f-shortFinishes - filter by comma-separated short (simplified) finishes (e.g. satin or gloss)

    • f-maxOffset - filter by maximum offset [mm]

    • f-maxOffset2 - filter by secondary maximum offset [mm]; specifying f-maxOffset and f-maxOffset2 will list values that belong to wheel styles with wheels meeting both offset requirements; intended for vehicles with staggered fitment

    • f-minOffset - filter by minimum offset [mm]

    • f-minOffset2 - filter by secondary minimum offset [mm]; specifying f-minOffset and f-minOffset2 will list values that belong to wheel styles with wheels meeting both offset requirements; intended for vehicles with staggered fitment

    • f-offset - filter by exact offset value [mm]

    • f-offset2 - filter by secondary offset [mm]; specifying f-offset and f-offset2 will list values that belong to wheel styles with wheels meeting both offset requirements; intended for vehicles with staggered fitment

    • f-minBore - filter by minimum bore [mm]

    • f-minLoadRating - filter by minimum load rating [lbs]

    • f-inStock - list only filters with wheels in stock; the parameter doesn’t require any value; requires inventory to be enabled

Example 1. All diameters:

/wheels/filters?i-diameters

Response:

{
  "Filters": {
    "Diameters": [8, 10, 11, 12, ...]
  }
}

Example 2. Diameters filtered by “TNT” brand:

/wheels/filters?i-diameters&f-brand=TNT

Response:

{
  "Filters": {
    "Diameters": [16, 17, 18, 20]
  }
}

Example 3. Brands, short finishes, diameters, offsets, and price range filtered by “Vision” brand:

/wheels/filters?i-brands&i-shortFinishes&i-diameters&i-offsets&i-prices&f-brand=Vision

Response:

{
  "Filters": {
    "Brands": ["Vision"],
    "ShortFinishes": ["Chrome", "Gloss", "Machined", ...],
    "Diameters": [10, 12, 13, ...],
    "Offsets": [-143, -137, -76, ...],
    "Prices": {
      "Min": 165,
      "Max": 349
    }
  }
}

Example 4. Brands with logos filtered by “Classic” segment tag:

/wheels/filters?i-brands&i-brandLogos&f-orSegmentTags=Classic

Response:

{
  "BrandLogosUrlBase": "https://storage.googleapis.com/autosync-brand-logos/products/",
  "Filters": {
    "Brands": [{
        "Brand": "Allied",
        "Logo": "Allied.png"
      }, {
        "Brand": "American Legend",
        "Logo": "American_Legend.png"
      },
      ...
    ]
  }
}

Example 5. Brands that have wheels with bolt circle 1 or bolt circle 2 equal to 114 mm:

/wheels/filters?i-brands&f-boltCircle=114

Response:

{
  "Filters": {
    "Brands": ["Ace Alloy", "Kansei", "Momo", ...]
  }
}

GET /wheels/styles

A list of wheel styles.

Optional query parameters:

  • Data

    • i-img0001 - include a URL of 0001 angle (standard) image

    • i-img0002 - include a URL of 0002 angle (beauty) image

    • i-img0003 - include a URL of 0003 angle (face) image

    • DEPRICATED i-imgSelectedValues - renamed to i-imgDetails

    • i-imgDetails - include details of the selected images that represent the style (e.g. color, diameter or short finish); wheel styles may include wheels of multiple colors or diameters

    • i-wheelCount - include the total number of wheels for each wheel style

    • i-specs - include specification data

    • i-tags - include tags

    • i-description - include description

    • i-features - include feature benefits (1-4)

    • i-diameters - include a list of diameters for each style

    • i-offsets - include a list of offsets for each style

    • i-sizes - include a list of sizes for each style; a size is a combination of diameter and width, e.g. “18x9”

    • i-shortColors - include a list of short colors for each style

    • i-shortFinishes - include a list of short finishes for each style

    • i-inStock - include availability: true or false for each style; requires inventory to be enabled

    • i-minMaxPrice - include price ranges for each style

  • Filters

    • f-id - filter by wheel style ID

    • f-brand - filter by brand name

    • f-brandIds - filter by comma-separated brand IDs

    • f-boltCircle - filter by either of the bolt circles: bolt circle 1 or bolt circle 2 (e.g. 139.70 or 114.30) [mm]

    • f-diameters - filter by comma-separated diameters [inch]

    • f-diameters2 - filter by secondary comma-separated diameters [inch]; specifying f-diameters and f-diameters2 will list only wheel styles with wheels of both diameters; intended for vehicles with staggered fitment

    • f-widths - filter by comma-separated widths [inch]

    • f-widths2 - filter by secondary comma-separated widths [inch]; specifying f-widths and f-widths2 will list only wheel styles with wheels of both widths; intended for vehicles with staggered fitment

    • f-minBore - filter by minimum bore [mm]

    • f-minLoadRating - filter by minimum load rating [lbs]

    • f-minOffset - filter by minimum offset [mm]

    • f-maxOffset - filter by maximum offset [mm]

    • f-offset - filter by exact offset value [mm]

    • f-material - filter by material (e.g. “Cast Aluminum”)

    • f-shortColors - filter by comma-separated short (simplified) colors (e.g. black or gold)

    • f-shortFinishes - filter by comma-separated short (simplified) finishes (e.g. satin or gloss)

    • f-structure - filter by structure (e.g. “1-Piece”)

    • f-lugCount - filter by lug count (e.g. 5 or 6)

    • f-lugType - filter by lug type (e.g. “Conical”)

    • f-exposedLugs - filter by exposed or covered lugs; 0 - false (covered), 1 - true (exposed)

    • f-andSegmentTags - filter by segment tags; see “8. Wheel Endpoints” for a complete list of segment tags; comma (,) acts as AND operator (e.g. All Terrain,All Weather for wheels classified as both All Terrain and All Weather

    • f-orSegmentTags - filter by segment tags; see “8. Wheel Endpoints” for a complete list of segment tags; comma (,) acts as OR operator (e.g. All Terrain,All Weather for wheels classified as either All Terrain or All Weather

    • f-andVehicleTypeTags - filter by vehicle type tags; see “8. Wheel Endpoints” for a complete list of vehicle type tags; comma (,) acts as AND operator (e.g. Car,SUV/Light Truck for wheels designed for both cars and SUVs

    • f-orVehicleTypeTags - filter by vehicle type tags; see "8. Wheel Endpoints" for a complete list of vehicle type tags; comma (,) acts as OR operator (e.g. Car,Trailer for wheels designed for either for cars or trailers

    • f-nicheTag - filter by niche tag; N/A – only wheels for vehicles with no niche tag set, any other value will include wheels with the specified niche tag and with no niche tag set, e.g. Lexus ES – wheels with either no niche tag set or for Lexus ES vehicles

    • f-query - filter by a full-text search query based on the following fields: part number, brand, model, sub model, bolt pattern (e.g. 5x130), short color, short finish, tags, and niche tag

    • f-inStock - list only wheel styles with wheels in stock; the parameter doesn’t require any value; requires inventory to be enabled

  • Sorting

    • s-model - sort by model (asc or desc)

Example 1. Styles filtered by “Black Rhino” brand with wheel count:

/wheels/styles?f-brand=Black%20Rhino&i-wheelCount

Response:

{
  "WheelStyles": [{
      "Brand": "Black Rhino",
      "Id": 149,
      "Model": "Coyote",
      "Submodel": null,
      "WheelCount": 37
    },
    ...
  ]
}

Example 2. A list of styles with forged aluminum wheels that includes specification data, 0001 angle images and a list of short colors:

/wheels/styles?f-material=Forged Aluminum&i-specs&i-img0001&i-shortColors&i-imgDetails

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-wheels/",
  "WheelStyles": [{
      "Brand": "Victor Equipment",
      "ExposedLugs": true,
      "Id": 1128,
      "Img0001": "Victor_Equipment/Lohner-Forged_Matte_Black_5-lug_0001.png",
      "ImgAccent": "",
      "ImgColor": "Black",
      "ImgDiameter": 19,
      "ImgFinish": "Matte",
      "ImgOffset": 36,
      "ImgShortColor": "Black",
      "ImgShortFinish": "Matte",
      "ImgWheelId": 29797,
      "ImgWidth": 11,
      "LugType": "Conical",
      "Material": "Forged Aluminum",
      "Model": "Lohner Forged",
      "ShortColors": ["Black"],
      "Structure": "1-Piece",
      "Submodel": null
    },
    ...
  ]
}

Appending Img<angle> to ImgUrlBase composes a complete image URL, for example:

https://storage.googleapis.com/autosync-wheels/Vision/Assassin_396_Matte_Black_6-lug_0001.png

Do not hardcode ImgUrlBase or parts of it as it may change.

When i-imgDetails query parameter is present and at least one image URL is requested, results will include additional information describing the image:

  • ImgWheelId

  • ImgDiameter

  • ImgOffset

  • ImgAccent

  • ImgColor

  • ImgShortColor

  • ImgFinish

  • ImgShortFinish

Example 3. Styles filtered by “Drag” brand with specs:

/wheels/styles?f-brand=Drag&i-specs&i-tags

Response:

{
  "WheelStyles": [{
      "Brand": "Drag",
      "ExposedLugs": true,
      "Id": 11574,
      "LugType": "Conical",
      "Material": "Cast Aluminum",
      "Model": "DR-11",
      "NicheTag": "N/A",
      "SegmentTags": ["Luxury"],
      "Structure": "1-Piece",
      "Submodel": "GBML",
      "VehicleTypeTags": ["Car"]
    },
    ...
  ]
}

Example 4. Off-road wheel styles for trucks and SUVs:

/wheels/styles?f-orSegmentTags=Off-Road&f-andVehicleTypeTags=Truck,SUV

Response:

{
  "WheelStyles": [{
      "Brand": "American Outlaw",
      "Id": 69,
      "Model": "DoubleShot",
      "Submodel": "127"
    },
    ...
  ]
}

Example 5. Wheel styles with no niche tag assigned and those with niche tag set to “Porsche 911-991”:

/wheels/styles?f-nicheTag=Porsche 911-991

Response:

{
  "WheelStyles": [{
      "Brand": "American Racing",
      "Id": 6983,
      "Model": "Fast Back",
      "Submodel": "VN806 GY"
    },
    ...
  ]
}

Niche tags link aftermarket wheels made for specific vehicles only with the vehicles. Some examples include:

  • Beyern - BMW

  • Coventry - Jaguar

  • Mandrus - Mercedes

  • Factory Reproductions FR 54 - Ford Mustang

  • Factory Reproductions FR 85 - Audi

  • Factory Reproductions FR 62 - Dodge Challenger

Example 6. Black Rhino wheel styles with sizes, offsets and short finishes:

/wheels/styles?f-brand=Black Rhino&i-shortFinishes&i-offsets&i-sizes

Response:

{
  "WheelStyles": [{
      "Brand": "Black Rhino",
      "Id": 149,
      "Model": "Coyote",
      "Offsets": [-18, 2, 6, 12],
      "ShortFinishes": ["Gloss"],
      "Sizes": ["17x9", "18x9", "20x9"],
      "Submodel": null
    },
    ...
  ]
}

Example 7. ATX wheels styles with 205x130 bolt pattern:

/wheels/styles?f-query=ATX 6x135

Response:

{
  "WheelStyles": [{
      "Brand": "ATX",
      "Id": 101,
      "Model": "AX203",
      "Submodel": null
    }
  ]
}

Example 8. Fuel wheels styles that have wheels of two specified widths:

/wheels/styles?f-brand=Fuel&f-widths=8&f-widths2=10&i-diameters&i-offsets&i-sizes&i-wheelCount

Response:

{
  "WheelStyles": [{
      "Brand": "Fuel",
      "Diameters": [15, 16, 18],
      "Diameters2": [15, 20],
      "Id": 395,
      "Model": "Anza",
      "Offsets": [-18, 1, 27],
      "Offsets2": [-43, -18],
      "Sizes": ["15x8", "16x8", "18x8"],
      "Sizes2": ["15x10", "20x10"],
      "Submodel": "D557",
      "WheelCount": 4,
      "WheelCount2": 4
    }
  ]
}

When two diameters and/or two widths are specified, values that may differ between wheels of the two sizes will be listed separately, for example Offsets will list all offsets of the first size, and Offsets2 will list all offsets of the second size.

Example 9. Fuel wheels styles that have 15” wheels of two specified widths (same as above but restricting wheel diameter):

/wheels/styles?f-brand=Fuel&f-diameters=15&f-diameters2=15&f-widths=8&f-widths2=10&i-diameters&i-offsets&i-sizes&i-wheelCount

Response:

{
  "WheelStyles": [{
      "Brand": "Fuel",
      "Diameters": [15],
      "Diameters2": [15],
      "Id": 395,
      "Model": "Anza",
      "Offsets": [-18],
      "Offsets2": [-43],
      "Sizes": ["15x8"],
      "Sizes2": ["15x10"],
      "Submodel": "D557",
      "WheelCount": 1,
      "WheelCount2": 3
    }
  ]
}

GET /wheels

A list of wheels.

Optional query parameters:

  • Data

    • i-specs - include specification

    • i-cap - include center cap information

    • i-description - include description

    • i-features - include feature benefits (1-4)

    • i-img0001 - include a URL of 0001 angle (standard) image

    • i-img1001 - include a URL of 1001 angle (high resolution standard) image

    • i-img0002 - include a URL of 0002 angle (beauty) image

    • i-img0003 - include a URL of 0003 angle (face) image

    • i-img0100 - include a URL of 0100 angle (VoV front) image

    • i-img0200 - include a URL of 0200 angle (VoV rear) image

    • i-img0300 - include a URL of 0300 angle (VoV face) image; 0300 in case of regular wheels, 0300Front and 0300Rear in case of dually wheels

    • i-rotationImg - include a URL of rotation image

    • i-inventory - include total inventory; the values may differ for Canadian clients; requires inventory to be enabled

    • i-inStock - include availability: true or false; requires inventory to be enabled

    • i-price - include prices

    • i-shipping - include shipping data (box weight and dimensions)

    • i-tags - include tags

  • Filters

    • f-ids - filter by comma-separated wheel IDs (e.g. 11503,11499)

    • f-styleId - filter by style ID

    • f-pn - filter by part number; reserved characters must be URL-encoded (e.g. +%2B)

    • f-pns - filter by comma-separated part numbers (e.g. 127-2084BM,127-2981GB); reserved characters must be URL-encoded (e.g. +%2B)

    • f-brand - filter by brand name

    • f-brandIds - filter by comma-separated brand IDs

    • f-boltCircle - filter by either of the bolt circles: bolt circle 1 or bolt circle 2 (e.g. 139.70 or 114.30) [mm]

    • f-lugCount - filter by lug count (e.g. 5 or 6)

    • f-model - filter by model

    • f-position - filter by position (e.g. Front Dually or Inner Dually)

    • f-submodel - filter by sub model

    • f-shortColors - filter by comma-separated short (simplified) colors (e.g. black or gold)

    • f-shortFinishes - filter by comma-separated short (simplified) finishes (e.g. satin or gloss)

    • f-diameters - filter by comma-separated diameters [inch]

    • f-widths - filter by comma-separated widths [inch]

    • f-minBore - filter by minimum bore [mm]

    • f-minLoadRating - filter by minimum load rating [lbs]

    • f-minOffset - filter by minimum offset [mm]

    • f-maxOffset - filter by maximum offset [mm]

    • f-offset - filter by an exact offset value [mm]

    • f-position - filter by position (e.g. Front Dually, Inner Dually, Outer Dually)

    • f-minPrice - filter by minimum price [$]

    • f-maxPrice - filter by maximum price [$]

    • f-andSegmentTags - filter by segment tags; see “8. Wheel Endpoints” for a complete list of segment tags; comma (,) acts as AND operator (e.g. All Terrain,All Weather for wheels classified as both All Terrain and All Weather

    • f-orSegmentTags - filter by segment tags; see “8. Wheel Endpoints” for a complete list of segment tags; comma (,) acts as OR operator (e.g. All Terrain,All Weather for wheels classified as either All Terrain or All Weather

    • f-andVehicleTypeTags - filter by vehicle type tags; see “8. Wheel Endpoints” for a complete list of vehicle type tags; comma (,) acts as AND operator (e.g. Car,SUV/Light Truck for wheels designed for both cars and SUVs

    • f-orVehicleTypeTags - filter by vehicle type tags; see "8. Wheel Endpoints" for a complete list of vehicle type tags; comma (,) acts as OR operator (e.g. Car,Trailer for wheels designed for either for cars or trailers

    • f-nicheTag - filter by niche tag; N/A – only wheels for vehicles with no niche tag set, any other value will include wheels with the specified niche tag and with no niche tag set, e.g. Lexus ES – wheels with either no niche tag set or for Lexus ES vehicles

    • f-query - filter by a full-text search query based on the following fields: part number, brand, model, sub model, bolt pattern (e.g. 5x130), short color, short finish, tags, and niche tag

    • f-minInventory - filter by minimum inventory; setting the parameter to 1 is the same as using f-inStock; requires inventory to be enabled

    • f-inStock - list only wheels that are in stock; the parameter doesn’t require any value; requires inventory to be enabled

    • f-rotationImg - list only wheels with rotation images

  • Sorting

    • s-model - sort by model (asc or desc)

Example 1. Wheels by style ID 416 (Fuel Contra D615):

/wheels?f-styleId=416

Response:

{
  "Wheels": [{
      "Brand": "Fuel",
      "Id": 10486,
      "Model": "Contra",
      "Pn": "D64318909845",
      "StyleId": 416,
      "Submodel": "D643"
    },
    ...
  ]
}

Example 2. Wheels by style ID 416 with specification data and tags:

/wheels?f-styleId=416&i-specs&i-tags&i-cap

Response:

{
  "Wheels": [{
      "Accent": "Milled",
      "BoltCircle1": 135,
      "BoltCircle2": 139.7,
      "Bore": 106.1,
      "Brand": "Fuel",
      "Bsm": null,
      "Cap": {
        "Id": 428,
        "Pn": "1003-81GBQ HR93.1/87.1/78.1"
      },
      "Color": "Red",
      "Diameter": 18,
      "ExposedLugs": false,
      "FaceStyle": "Multi Spoke",
      "Finish": "Gloss",
      "Gtin": null,
      "Id": 10486,
      "LipSize": null,
      "LoadRating": 2500,
      "LugCount": 6,
      "LugType": "Conical",
      "Material": "Cast Aluminum",
      "Model": "Contra",
      "Msrp": null,
      "NicheTag": "N/A",
      "Offset": -12,
      "Orientation": "N/A",
      "Pn": "D64318909845",
      "Position": "N/A",
      "SegmentTags": ["Off-Road"],
      "ShortColor": "Red",
      "ShortFinish": "Gloss",
      "Structure": "1-Piece",
      "StyleId": 416,
      "Submodel": "D643",
      "Upc": null,
      "VehicleTypeTags": ["SUV", "Truck"],
      "Weight": 32,
      "Width": 9
    },
    ...
  ]
}

Example 3. A wheel with vendor part number equal “531147“ with description and feature benefit data:

/wheels?f-pn=531147&i-description&i-features

Response:

{
  "Wheels": [{
      "Brand": "Velox",
      "Description": "The Sterling from Velox Wheels is a multi-spoke wheel that is a part of the Nordica series. This wheel is specifically engineered for resilience in tough winter driving conditions. The Sterling wheel is available in two sleek finishes, matte black and silver. This wheel features a black snap-in center cap and spoke lines which extend to the lip of the wheel, making the face of the wheel look larger and more imposing. If you are looking to enhance the look of your vehicle while providing winter driving durability, the Velox Sterling may be the wheel for you.",
      "FeatureBenefit1": "",
      "FeatureBenefit2": "",
      "FeatureBenefit3": "",
      "FeatureBenefit4": "",
      "Id": 54832,
      "Model": "Sterling",
      "Pn": "531147",
      "StyleId": 10016,
      "Submodel": "SL"
    }
  ]
}

Example 4. A wheel with ID equal “2945“ with 0001, 1001 and 0002 angle images:

/wheels?f-ids=2945&i-img0001&i-img1001&i-img0002

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-wheels/",
  "Wheels": [{
      "Brand": "Beyern",
      "Id": 2945,
      "Img0001": "Beyern/Aviatic_Matte_Gunmetal_Gloss-Black-Lip_5-lug_0001.png",
      "Img0002": "Beyern/Aviatic_Matte_Gunmetal_Gloss-Black-Lip_5-lug_0002.png",
      "Img1001": "Beyern/Aviatic_Matte_Gunmetal_Gloss-Black-Lip_5-lug_1001.jpg",
      "Model": "Aviatic",
      "Pn": "1780BYA155120B72",
      "StyleId": 7195,
      "Submodel": "GY"
    }
  ]
}

Appending Img<angle> to ImgUrlBase composes a complete image URL, for example:

https://storage.googleapis.com/autosync-wheels/Beyern/Aviatic_Matte_Gunmetal_Gloss-Black-Lip_5-lug_0001.png

Do not hardcode ImgUrlBase or parts of it as it may change.

Example 5. Wheels for American muscle vehicles:

/wheels?f-orSegmentTags=Muscle

Response:

{
  "Wheels": [{
      "Brand": "American Racing",
      "Id": 3,
      "Model": "Torq Thrust D",
      "Pn": "VN1054661",
      "StyleId": 7033,
      "Submodel": "VN105 GY"
    },
    ...
  ]
}

Example 6. Full-text search for BMW replica wheels:

/wheels?f-query=replica BMW&i-tags

Response:

{
  "Wheels": [{
      "Brand": "Replica Alloys",
      "Id": 63773,
      "Model": "BMW",
      "NicheTag": "BMW",
      "Pn": "067-880-5120-13 SMF",
      "StyleId": 11230,
      "Submodel": "TT 67 SL",
      "Tags": ["Car", "Replica", "SUV"]
    },
    ...
  ]
}

Example 7. Specs and images of a front dually wheel:

/wheels?&f-ids=11499&i-img0100&i-img0200&i-img0300&i-specs

Response:

{
  "Wheels": [{
      "Id": 11499,
      ...
      "Img0100": "Fuel/Maverick-Dually_D538_Black_Milled_Front_0100.png",
      "Img0200": "Fuel/Maverick-Dually_D538_Black_Milled_Rear_0200.png",
      "Img0300Front": "Fuel/Maverick-Dually_D538_Black_Milled_Front_0300.png",
      "Img0300Rear": "Fuel/Maverick-Dually_D538_Black_Milled_Rear_0300.png",
      "LinkedDuallyWheels": {
        "Front": 11499,
        "Inner": 189179,
        "Outer": [
          11503,
          11500
        ]
      },
      ...
    }
  ]
}

Front dually wheels, when queried for images of angle 0300, include two paths (instead of one):

"Img0300Front": "Fuel/Maverick-Dually_D538_Black_Milled_Front_0300.png"
"Img0300Rear": "Fuel/Maverick-Dually_D538_Black_Milled_Rear_0300.png",

That’s to accommodate different VoV (view on vehicle) profile images:

When i-spec parameter is added to the URL, front dually wheels include LinkedDuallyWheels section:

"LinkedDuallyWheels": {
  "Front": 11499,
  "Inner": 189179,
  "Outer": [
    11503,
    11500
  ]
}

This section lists IDs of all other related dually wheels, i.e. a matching inner dually wheel and matching outer dually wheels.

POST /wheels/favorites

Mark a wheel as added to the favorites through the visualizer app.

Data must be submitted in the body and be JSON-encoded:

{
  "wheelId": ...
}

where (* - required):

  • * wheelId - ID of the wheel added to favorites

Example 1. JavaScript code for sending a sample request for quote:

const data = {
  vehicleId: 1234,
};
const resp = await fetch(API_URL + '/wheels/favorites?key=' + API_KEY, {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(data)
});
console.log(await resp.json());

Response:

{
  "Status": "OK"
}

9. Tire Endpoints

All endpoints in this section require authorization. For more information see “2. Authorization”.

Definitions

Metric Tires – Standard tire size format. For example “235/45R18”.

Flotation Tires – An alternative tire size format often used for larger truck and ATV/UTV tires. For example “42X15-16LT“.

Square Fitment – All four tires are the same size. All four wheels are the same diameter. All four wheels are the same diameter, width, and offset.

Staggered Fitment – Two wheels (typically the drive wheels) are wider.

Tire tags are separated into segment tags and vehicle type tags.

Segment tags:

  • Classic

  • Custom

  • Luxury

  • Off-Road

  • Overlander

  • Replica

  • Winter

Vehicle type tags:

  • Car

  • Dually

  • SUV

  • Trailer

  • Truck

  • UTV/ATV/Golf

  • Van

Speed Rating

KM/H

MPH

F

80

50

G

90

56

J

100

62

K

110

68

L

120

75

M

130

81

N

140

87

P

150

93

Q

160

100

R

170

106

S

180

112

T

190

118

U

200

124

H

210

130

V

240

149

W

270

168

Y

300

186

(Y)

300+

186+

See Mapping Products to Vehicles guid for details on how to use vehicle fitment data to filter tires:
Mapping Products to Vehicles

GET /tires/brands

A list of tire brands.

Optional query parameters:

  • Data

    • i-logos - include brand logos

    • i-about - include brand’s about information

    • i-manufacturer - include brand’s manufacturer

    • i-tireCount - include the total number of tires for each brand

  • Filters

    • f-id - filter by brand ID

    • f-format - filter by size format (M - metric or F - flotation)

    • f-inStock - list only tire brands with tires in stock; the parameter doesn’t require any value; requires inventory to be enabled

Example 1. All brands:

/tires/brands

Response:

{
  "Brands": [{
      "Id": 265,
      "Brand": "Bfgoodrich"
    }, {
      "Id": 262,
      "Brand": "Bridgestone"
    },
    ...
  ]
}

Example 2. All brands with their logos and the number of tires:

/tires/brands?i-logos&i-tireCount

Response:

{
  "BrandLogosUrlBase": "https://storage.googleapis.com/autosync-brand-logos/products/",
  "Brands": [{
      "Id": 265,
      "Brand": "Bfgoodrich",
      "Logo": "Bfgoodrich.png",
      "TireCount": 966
    },
    ...
  ]
}

Appending Logo to BrandLogosUrlBase composes a complete logo image URL, for example:

https://storage.googleapis.com/autosync-brand-logos/products/Bfgoodrich.png

Do not hardcode BrandLogosUrlBase or parts of it as it may change.

GET /tires/filters

A list of tire filters.

Optional query parameters:
M - the parameter applies to metric tires only
F - the parameter applies to floatation tires only

  • Data

    • i-brands - include a list of brands

    • i-brandLogos - include brand logos together with brand names

    • i-aspectRatios M - include a list of aspect ratios

    • i-diameters F - include a list of diameters

    • i-inchWidths F - include a list of inch widths

    • i-rimDiameters - include a list of rim diameters

    • i-sectionWidths M - include a list of section widths

    • i-speedRatings - include a list of speed ratings; see “9. Tire Endpoints” for a complete list of speed ratings

    • i-tags - include a list of tags

  • Filters

    • f-brand - filter by brand name

    • f-brandIds - filter by comma-separated brand IDs

    • f-aspectRatio M - filter aspect ratio

    • f-aspectRatio2 M - filter by secondary tire aspect ration, e.g. “55”; specifying f-aspectRatio and f-aspectRatio2 will list only filter values applicable to tire models with tires of both aspect ratios; intended for vehicles with staggered fitment

    • f-diameter F - filter by diameter

    • f-diameter2 F - filter by secondary tire external diameter in inches, e.g. “35”; specifying f-diameter and f-diameter2 will list only filter values applicable to tire models with tires of both diameters; intended for vehicles with staggered fitment

    • f-inchWidth F - filter by inch width

    • f-inchWidth2 F - filter by secondary tire width in inches, e.g. “10.5”; specifying f-inchWidth and f-inchWidth2 will list only filter values applicable to tire models with tires of both inch widths; intended for vehicles with staggered fitment

    • f-rimDiameter - filter by rim diameter

    • f-rimDiameter2 - filter by rim diameter, e.g. “24”; specifying f-rimDiameter and f-rimDiameter2 will list only filter values applicable to tire models with tires of both rim diameters; intended for vehicles with staggered fitment

    • f-sectionWidth M - filter by section width

    • f-sectionWidth2 M - filter by secondary tire section width, e.g. “245“; specifying f-sectionWidth and f-sectionWidth2 will list only filter values applicable to tire models with tires of both widths; intended for vehicles with staggered fitment

    • f-format - filter by size format (M - metric or F - flotation)

    • f-andSegmentTags - filter by segment tags; see “9. Tire Endpoints” for a complete list of segment tags; comma (,) acts as AND operator (e.g. All Terrain,All Weather for tires classified as both All Terrain and All Weather

    • f-orSegmentTags - filter by segment tags; see “9. Tire Endpoints” for a complete list of segment tags; comma (,) acts as OR operator (e.g. All Terrain,All Weather for tires classified as either All Terrain or All Weather

    • f-andVehicleTypeTags - filter by vehicle type tags; see “9. Tire Endpoints” for a complete list of vehicle type tags; comma (,) acts as AND operator (e.g. Car,SUV/Light Truck for tires designed for both cars and SUVs

    • f-orVehicleTypeTags - filter by vehicle type tags; see “9. Tire Endpoints” for a complete list of vehicle type tags; comma (,) acts as OR operator (e.g. Car,Trailer for tires designed for either for cars or trailers

    • f-minSpeedRating - filter by minimum speed rating; e.g. “H” speed rating will return filter values applicable to tires with one of the following speed ratings: H, V, W, Y, (Y) (H or higher); see “9. Tire Endpoints” for a complete list of speed ratings

    • f-inStock - filter by tire availability; the parameter doesn’t require any value; requires inventory to be enabled

Example 1. All rim diameters:

/tires/filters?i-rimDiameters

Response:

{
  "Filters": {
    "RimDiameters": [6, 8, 9, ...]
  }
}

Example 2. Rim diameters filtered by “Goodyear” brand:

/tires/filters?i-rimDiameters&f-brand=Goodyear

Response:

{
  "Filters": {
    "Diameters": [14, 15, 16, ...]
  }
}

Example 3. Aspect ratios and rim diameters of metric tire models that have 225 mm and 235 mm section widths (for vehicles that take wider rear tires):

/tires/filters?f-sectionWidth=225&f-sectionWidth2=235&i-aspectRatios&i-rimDiameters&i-sectionWidths

Response:

{
  "Filters": {
	"AspectRatios": [30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 90],
	"AspectRatios2": [30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85],
	"RimDiameters": [14, 15, 16, 17, 18, 19, 19.5, 20, 22],
	"RimDiameters2": [14, 15, 16, 17, 17.5, 18, 19, 20, 21, 22],
	"SectionWidths": [225],
	"SectionWidths2": [235]
  }
}

Example 4. Inch widths and rim diameters of floatation tire models that have 31” and 33” overall diameters (for vehicles that take larger-diameter rear tires):

/tires/filters?f-diameter=31&f-diameter2=33&i-diameters&i-rimDiameters&i-inchWidths

Response:

{
  "Filters": {
    "Diameters": [31],
    "Diameters2": [33],
    "InchWidths": [8.5, 10, 10.5, 11, 11.5, 12.5, 13],
    "InchWidths2": [8.5, 10, 10.5, 11.5, 12, 12.5, 13, 13.5, 14.5, 17],
    "RimDiameters": [14, 15, 16, 17],
    "RimDiameters2": [15, 16, 16.5, 17, 18, 20, 22]
  }
}

GET /tires/models

A list of tire models.

Optional query parameters:
M - the parameter applies to metric tires only
F - the parameter applies to floatation tires only

  • Data

    • i-img - include URLs of all available images

    • i-imgDetails - include details of the selected images that represent the model (e.g. rim size or diameter); tire models may include tires of multiple widths, aspect ratios, diameters etc

    • i-specs - include description, features and benefits

    • i-displayNames - include all unique display names for the tire model

    • i-tireCount - include the total number of tires for each model

  • Filters

    • f-id - filter by tire model ID

    • f-brand - filter by brand name

    • f-brandIds - filter by comma-separated brand IDs

    • f-brandId - filter by brand ID

    • f-query - filter by a full-text search, e.g. “Michelin Crossclimate”; searched fields: brand, model, model description, part number and display name; maximum length: 50 characters

    • f-sectionWidth M - filter by tire section width, e.g. “235“

    • f-sectionWidth2 M - filter by secondary tire section width, e.g. “245“; specifying f-sectionWidth and f-sectionWidth2 will list only tire models with tires of both widths; intended for vehicles with staggered fitment

    • f-aspectRatio M - filter by tire aspect ration, e.g. “45”

    • f-aspectRatio2 M - filter by secondary tire aspect ration, e.g. “55”; specifying f-aspectRatio and f-aspectRatio2 will list only tire models with tires of both aspect ratios; intended for vehicles with staggered fitment

    • f-rimDiameter - filter by rim diameter, e.g. “22”

    • f-rimDiameter2 - filter by rim diameter, e.g. “24”; specifying f-rimDiameter and f-rimDiameter2 will list only tire models with tires of both rim diameters; intended for vehicles with staggered fitment

    • f-inchWidth F - filter by tire width in inches, e.g. “12.5”

    • f-inchWidth2 F - filter by secondary tire width in inches, e.g. “10.5”; specifying f-inchWidth and f-inchWidth2 will list only tire models with tires of both inch widths; intended for vehicles with staggered fitment

    • f-diameter F - filter by tire external diameter in inches, e.g. “33”
      f-diameter2 F - filter by secondary tire external diameter in inches, e.g. “35”; specifying f-diameter and f-diameter2 will list only tire models with tires of both diameters; intended for vehicles with staggered fitment

    • f-format - filter by size format (M - metric or F - flotation)

    • f-andSegmentTags - filter by segment tags; see “9. Tire Endpoints” for a complete list of segment tags; comma (,) acts as AND operator (e.g. All Terrain,All Weather for tires classified as both All Terrain and All Weather

    • f-orSegmentTags - filter by segment tags; see “9. Tire Endpoints” for a complete list of segment tags; comma (,) acts as OR operator (e.g. All Terrain,All Weather for tires classified as either All Terrain or All Weather

    • f-andVehicleTypeTags - filter by vehicle type tags; see “9. Tire Endpoints” for a complete list of vehicle type tags; comma (,) acts as AND operator (e.g. Car,SUV/Light Truck for tires designed for both cars and SUVs

    • f-orVehicleTypeTags - filter by vehicle type tags; see “9. Tire Endpoints” for a complete list of vehicle type tags; comma (,) acts as OR operator (e.g. Car,Trailer for tires designed for either for cars or trailers

    • f-minSpeedRating - filter by minimum speed rating; e.g. “H” speed rating will return tire models that have tires with one of the following speed ratings: H, V, W, Y, (Y) (H or higher); see “9. Tire Endpoints” for a complete list of speed ratings

    • f-minSpeedRating2 - filter by secondary minimum speed rating; specifying f-minSpeedRating and f-minSpeedRating2 will list only tire models with at least one tire meeting each of the minimum speed ratings; intended for vehicles with staggered fitment

    • f-minLoadRating - filter by minimum load rating

    • f-minLoadRating2 - filter by secondary minimum load rating; specifying f-minLoadRating and f-minLoadRating2 will list only tire models with at least one tire meeting each of the minimum load ratings; intended for vehicles with staggered fitment

    • f-inStock - list only tires models with at least one tire in stock; the parameter doesn’t require any value; requires inventory to be enabled

  • Sorting

    • s-brand - sort by brand (asc or desc)

    • s-model - sort by model (asc or desc); when both orders are applied, results are sorted first by brand and then by model

Example 1. Tire models with tire count sorted by brand first and then by model:

/tires/models?i-tireCount&s-brand=asc&s-model=asc

Response:

{
  "TireModels": [{
      "Brand": "Amp",
      "Id": 17213,
      "Model": "MUD TERRAIN ATTACK M/T A",
      "TireCount": 29
    },
    ...
  ]
}

Example 2. Winter tire models for light-duty or medium-duty trucks:

/tires/models?i-tags&f-orSegmentTags=Winter&f-orVehicleTypeTags=SUV/Light Truck,Medium Truck

Response:

{
  "TireModels": [{
      "Brand": "Bridgestone",
      "Id": 644,
      "Model": "Blizzak W965",
      "SegmentTags": ["Commercial","Winter"],
      "VehicleTypeTags": ["SUV/Light Truck"]
    },
    ...
  ]
}

Example 3. Tire models filtered by “Michelin” brand with their specification and images:

/tires/models?i-specs&i-img&f-brand=Michelin

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-tires/",
  "RotationImgUrlBase": "https://storage.googleapis.com/autosync-tire-spins/",
  "TireModels": [{
      "Benefits": null,
      "Brand": "Michelin",
      "Description": "Ultra-High Performance Passenger Car Summer tire. Original Equipment on Renowned Sports Cars like BMW M3, Porsche 911 and Chevrolet Corvette ZR1. ZP (Zero Pressure) Run Flat Technology on Select Sizes.",
      "Features": null,
      "Id": 291,
      "ImgAngle": "c4857df1f52eae568218d7ca98fa0bae.webp",
      "ImgFront": "a0a429690e6147bdf2af507735b1def1.webp",
      "ImgRotationDir": null,
      "ImgSide1": "7e03541741604bfdec8e543a38e3c6fb.webp",
      "ImgSide2": null,
      "ImgThumb": "b34043a718877c81db3e20438141c0b3.webp",
      "Model": "PILOT SPORT PS2"
    },
    ...
  ]
}

Appending image path (ImgThumb, ImgAngle, ImgFront, ImgSide1, ImgSide2) to ImgUrlBase composes a full resource URL, for example:

https://storage.googleapis.com/autosync-tires/c4857df1f52eae568218d7ca98fa0bae.webp

If an angle is not available, null value will be returned.

Do not hardcode BrandLogosUrlBase or RotationImgUrlBase as the URLs may change.

GET /tires

A list of tires.

Optional query parameters:
M - the parameter applies to metric tires only
F - the parameter applies to floatation tires only

  • Data

    • i-img - include URLs of base images

    • i-vovImg - include URLs of view-on-vehicle images

    • i-coordinates - include coordinates for overlaying wheels on tires

    • i-inStock - include availability: true or false; requires inventory to be enabled

    • i-inventory - include inventory numbers; requires inventory to be enabled

    • i-price - include price; requires pricing to be enabled

    • i-specs - include specification

    • i-tags - include segment and vehicle type tags

  • Filters

    • f-id - filter by tire ID

    • f-brand - filter by brand name

    • f-brandIds - filter by comma-separated brand IDs

    • f-brandId - filter by brand ID

    • f-model - filter by model

    • f-modelId - filter by model ID

    • f-sectionWidth M - filter by section width, e.g. “235“

    • f-aspectRatio M - filter by aspect ration, e.g. “45”

    • f-rimDiameter - filter by rim diameter, e.g. “22”

    • f-inchWidth F - filter by width in inches, e.g. “12.5”

    • f-diameter F - filter by external diameter in inches, e.g. “33”

    • f-query - filter by a full-text search, e.g. “Michelin 225/50R17”; searched fields: brand, model, model description, part number and display name; maximum length: 50 characters

    • f-format - filter by size format (M - metric or F - flotation)

    • f-andSegmentTags - filter by segment tags; see “9. Tire Endpoints” for a complete list of segment tags; comma (,) acts as AND operator (e.g. All Terrain,All Weather for tires classified as both All Terrain and All Weather

    • f-orSegmentTags - filter by segment tags; see “9. Tire Endpoints” for a complete list of segment tags; comma (,) acts as OR operator (e.g. All Terrain,All Weather for tires classified as either All Terrain or All Weather

    • f-andVehicleTypeTags - filter by vehicle type tags; see “9. Tire Endpoints” for a complete list of vehicle type tags; comma (,) acts as AND operator (e.g. Car,SUV/Light Truck for tires designed for both cars and SUVs

    • f-orVehicleTypeTags - filter by vehicle type tags; see “9. Tire Endpoints” for a complete list of vehicle type tags; comma (,) acts as OR operator (e.g. Car,Trailer for tires designed for either for cars or trailers

    • f-minSpeedRating - filter by minimum speed rating; e.g. “H” speed rating will return tires with one of the following speed ratings: H, V, W, Y, (Y) (H or higher); see “9. Tire Endpoints” for a complete list of speed ratings

    • f-inStock - list only tires that are in stock; the parameter doesn’t require any value; requires inventory to be enabled

    • f-rotationImg - list only tires with rotation images

  • Sorting

    • s-brand - sort by brand (asc or desc)

    • s-model - sort by model (asc or desc)

Example 1. 225/50R17 size Michelin tires sorted by tire model:

/tires?f-brand=Michelin&f-query=225/50R17&s-model=asc

Response:

{
  "Tires": [{
      "Brand": "Michelin",
      "BrandId": 264,
      "DisplayName": "225/50R17 XL CROSSCLIMATE +",
      "Id": 245753,
      "Model": "CROSSCLIMATE +",
      "ModelId": 18304,
      "PartNumber": "72199"
    }, {
      "Brand": "Michelin",
      "BrandId": 264,
      "DisplayName": "225/50R17 XL CROSSCLIMATE 2",
      "Id": 445332,
      "Model": "CROSSCLIMATE 2",
      "ModelId": 29768,
      "PartNumber": "69757"
    },
    ...
  ]
}

Example 2. Michelin Crossclimate 2 tires with images and specification:

/tires?f-brand=Michelin&f-model=Crossclimate%202&i-img&i-specs

Response:

{
  "ImgUrlBase": "https://storage.googleapis.com/autosync-tires/",
  "RotationImgUrlBase": "https://storage.googleapis.com/autosync-tire-spins/",
  "Tires": [{
      "ApprovedRimWidthMax": 8.5,
      "ApprovedRimWidthMin": 6.5,
      "Asin": null,
      "AspectRatio": 65,
      "Benefits": null,
      "Brand": "Michelin",
      "BrandId": 264,
      "Description": "All-Season Performance Touring Passenger Car, SUV/CUV tire.",
      "Diameter": null,
      "DisplayName": "235/65R17 CROSSCLIMATE 2",
      "Ean": null,
      "Features": null,
      "GmCode": 19427825,
      "Id": 445315,
      "ImgAngle": "2363aea9629e696f8ca6983e61bec53e.webp",
      "ImgFront": "f6b36e63f0d92516cc6251f207f6f4cd.webp",
      "ImgRotationDir": null,
      "ImgSide1": "c16898f82820d7c788c0242c1ceb0447.webp",
      "ImgSide2": null,
      "ImgThumb": "edeee0cbf32f83e2d04849f8a84715e3.webp",
      "InchWidth": null,
      "LoadCapacityDual": null,
      "LoadCapacitySingle": "1984",
      "LoadRange": "SL",
      "LoadRating": "104",
      "LoadedWidth": null,
      "MaxInflationPressure": 51,
      "MeasuringRimWidth": "7.0",
      "MetricRimDiameter": null,
      "MinDualSpacing": null,
      "Model": "CROSSCLIMATE 2",
      "ModelId": 29768,
      "OriginCountry": null,
      "OverallDiameter": 29.12,
      "OverallWidth": 9,
      "PartNumber": "74077",
      "PlyRating": null,
      "RevolutionsPerMile": 716,
      "RimDiameter": 17,
      "RollingCircumference": null,
      "SectionWidth": 235,
      "Sidewall": "BSW",
      "Size": "235/65R17",
      "SpeedRating": "H",
      "StarRating": null,
      "StaticLoadedRadius": null,
      "TraCode": null,
      "TreadDepth": 10,
      "TreadWidth": null,
      "Upc": "086699740779",
      "Utqg": null,
      "Warranty": 60000,
      "Weight": 30.73
    },
    ...
  ]
}

Appending image path (ImgThumb, ImgAngle, ImgFront, ImgSide1, ImgSide2) to ImgUrlBase composes a full resource URL, for example:

https://storage.googleapis.com/autosync-tires/2363aea9629e696f8ca6983e61bec53e.webp

If an angle is not available, null value will be returned.

Do not hardcode BrandLogosUrlBase or RotationImgUrlBase as the URLs may change.

If ImgRotationDir is not null, its value represents a folder with rotation images. For example:

{
  "RotationImgUrlBase": "https://storage.googleapis.com/autosync-tire-spins/",
  "Tires": [{
      ...
      "ImgRotationDir": "fb887ecb39f711c09fa50d8e27a27fb3",
      ...
    }
  ]
}

Append ImgRotationDir to RotationImgUrlBase to form a URL to a folder with rotation images. Each folder contains 36 WebP images. For example, to access the first image:

https://storage.googleapis.com/autosync-tire-spins/fb887ecb39f711c09fa50d8e27a27fb3/1.webp

For time-effective deployments, it is recommend to use a library for spins provided by AutoSync.


 Clink to expand the documentation of “AutoSync Spin Images Library”

1. Distribution

This library is available through autosyncstudio.com website.

There are two version:

  1. Javascript module
    https://vvs.autosyncstudio.com/lib/autosync-spin.module.js – recommended for JavaScript frameworks or websites built with NodeJS.

  2. Plain old JavaScript file
    https://vvs.autosyncstudio.com/lib/autosync-spin.js – recommended in all other cases

2. How to Use It

  1. Import the library.

  2. Create a div to use it as a container and assign an id to it.

  3. Instantiate AutosyncSpin passing a config object with the id, along with a path to spin images and a desired size.

For example:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Example</title>

    <script src="https://vvs.autosyncstudio.com/lib/autosync-spin.js"></script>
  </head>
  <body>
    <div id="spin-360-viewer"></div>
    <script>
      const autosyncSpin = new AutosyncSpin({
        id: 'spin-360-viewer',
        path: 'https://storage.googleapis.com/autosync_tires/_spins/06026e3d311e72c7df6193ba5efd5f2e',
        size: 500,
      });
    </script>
  </body>
</html>

AutosyncSpin config object parameters:

  • id – The id assigned to the container.

  • path – An absolute URL (or a relative path under the same domain) where images are stored. All the images used for this library must be named from 1 to (24 or 36) and be in WebP format.

  • size – The desired size of the viewer (in pixels).

3. Method Reference

The library comes with utility methods to interact with its rendered content.

  • createCanvas(REQUIRED containerId: string) – Change container providing a new element ID.

  • setPath(REQUIRED path: string) – Change the path or URL where images are stored. To take effect, reload() must be called.

  • setSize(REQUIRED size: number) – Change the size of the viewer and the container. To take effect, reload() must be called.

  • showError(val: boolean) – Show/hide an error message when loading images fails.

  • reload() – Reset all the variables used to set state (excluding path and size), and load again the viewer.


Live CodePen example:

https://codepen.io/m-autosync/pen/mdXrdjy

10. Request for Quote Endpoint

The endpoint in this section requires authorization. For more information see “2. Authorization”.

POST /request-for-quote

Submit a request for quote. Email notifications will be sent to all email addresses linked to the API key and a confirmation email will be sent to the customer.

Data must be submitted in the body and be JSON-encoded:

{
  "customer": {"firstName": ..., "lastName": ..., "phone": ..., "email": ...},
  "locationId": ...,
  "vehicleId": ...,
  "products": [
    {"type": ..., "id": ..., "qty": ...},
  ],
  "message": ...
}

where (* - required):

  • * customer - customer information

    • * firstName - between 1 and 30 characters

    • * lastName - between 1 and 30 characters

    • * phone - between 10 and 20 characters

    • * email - maximum 50 characters

  • locationId - AutoSync ID of a retailer or manufacturer location; if specified, email addresses to be notified will be taken from the location (instead of the API key settings)

  • vehicleId - AutoSync ID of the selected vehicle

  • * products - an array of objects

    • * type - product type; possible values: wheel, tire

    • * id - AutoSync product ID

    • qty - product quantity

  • message - customer notes; maximum 500 characters

Example 1. JavaScript code for sending a sample request for quote:

const data = {
  customer: {
    firstName: "James",
    lastName: "Smith",
    phone: "360-555-6666",
    email: "james.smith@gmail.com",
    message: "This is a test",
  },
  locationId: 101,
  vehicleId: 1234,
  products: [
    {type: "wheel", id: 445566, qty: 2},
  ],
};
const resp = await fetch(API_URL + '/request-for-quote?key=' + API_KEY, {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(data)
});
console.log(await resp.json());

Response:

{
  "Status": "OK"
}

Sample email sent to a customer:

Sample email sent to a retailer:

  • No labels