Table of contents
Configuration
Demo Credentials
API KEY:
88b97fa1ecb79698ecd2b59aceb655ef
LOCATION ID:
4250
Location Selection
This API method will allow you look up all the locations which are accessible with this API key.
We recommend providing the user with a menu to select their store. When store is selected, its ID should be stored and used during TireConnect invocation.
V2 - Latest API version
Request:
https://wl.tireconnect.ca/api/v2/location/list?key={DEALER API KEY}
Response format:
{ "notice":"Success", "data":{ "locations":[ { "id":xxxx, "name":"STORE NAME", "dealer_id":xxx, "external_id":"", "address_line_1":"dealer@dealer.com", "address_line_2":"", "city":"CITY", "country":"COUNTRY", "country_code":"xx", "province":"STATE / PROVINCE", "postal_code":"ZIP / POSTAL CODE", "phone":"xxx xxx xxxx", "latitude":xxx", ”logo”:”xxx”, longitude":xxx } ] } } |
Example:
{ "notice":"Success", "data":{ "locations":[ { "id":4250, "name":"Location #1", "dealer_id":3758, "external_id":null, "address_line_1":"3903 SE 10th Pl", "address_line_2":"", "city":"Del City", "country":"United States", "country_code":"US", "province":"Oklahoma", "postal_code":"73115", "phone":"416 895 8685", "latitude":35.4553, ”logo”:”https:\/\/wl.tireconnect.ca\/uploads\/dealer\/cf19ecb54145f78585b33149e042e684a08c2865.png”, "longitude":-97.45 } ] } } |
Usage
TireConnect Search Form Access
TC can be opened using the dealer specific URL.
URL:
https://app.tireconnect.ca/pos/{DEALER API KEY}f#/!search?location_id={LOCATION ID}
Example:
https://app.tireconnect.ca/pos/88b97fa1ecb79698ecd2b59aceb655ef#/!search?location_id=4250
Tire Search
ACES Vehicle ID
Format
https://app.tireconnect.ca/pos/{DEALER API KEY}#/!search?aces_id={ACES ID}&location_id={LOCATION ID}
Example
Tire Size
Format
https://app.tireconnect.ca/pos/{DEALER API KEY}#/!search?width={WIDTH}&height={HEIGHT}&rim={RIM}&location_id={LOCATION ID}
Example
RAW Size
Format
https://app.tireconnect.ca/pos/{DEALER API KEY}#/!search?size={RAW_SIZE}&location_id={LOCATION ID}
Example
Manufacturer Part Number
Format
https://app.tireconnect.ca/pos/{DEALER API KEY}#/!search?part_numbers={PART NUMBER}&location_id={LOCATION ID}
Note: method accept several part numbers comma separated.
Example
Single part number: https://app.tireconnect.ca/pos/88b97fa1ecb79698ecd2b59aceb655ef#/!search?part_numbers=148895&location_id=4250
Several part numbers:
VIN
Format
https://app.tireconnect.ca/pos/{DEALER API KEY}#/!search?vin={VIN}&location_id={LOCATION ID}
Example
Licence Plate and State (USA only)
Format
https://app.tireconnect.ca/pos/{DEALER API KEY}#/!search?state={State}&license={LICENSE PLATE}&location_id={LOCATION ID}
Example
Quote summary for parsing
JSON quote summary is generated in hidden DIV with id “tcwlw_raw_quote” on the summary page.
Quote data extraction:
There are two conditions required for successful quote data extraction:
DIV with this id is detected, you can extract the content of the quote from the JSON formatted quote summary.
ready=1 - READY URL parameter is equal 1
URL Example
JSON Example
{ "tires": [ { "id": "TWlsZXN0YXJ8fDI0NDYwMDIxfHxjb21tdW5pdHl3aG9sZXNhbGV0aXJlfHwyMjU5Mnx8Qg==", "brand": "Milestar", "model": "MS932 Sport", "part_number": "24460021", "price": 59.96, "tax": 2.4, "quantity": 153, "image": "https://wl.tireconnect.ca/uploads/tires/pre_up/1/Milestar/images/ms_ms932_l.jpg", "supplier": "communitywholesaletire", "speed_rating": "V", "load_index": 91, "size": "205/55R16 91V", "size_w": 205, "size_h": 55, "size_r": 16, "selected_quantity": 4, "cost": 41.97 } ], "services": [ { "key": "tire_protection_plan", "name": "Tire Protection Plan", "total_price": 10, "total_tax": 0.4 }, { "key": "wheel_alignment", "name": "Wheel Alignment", "total_price": 23.98, "total_tax": 0.96 }, { "key": "nitrogen_fill", "name": "Nitrogen Fill", "total_price": 100, "total_tax": 4 }, { "key": "disposal_fee", "name": "Tire Recycling Fee", "total_price": 10, "total_tax": 0 }, { "key": "supply_fee", "name": "Shop Supply Fee", "total_price": 50, "total_tax": 0 }, { "key": "seasonal_tire_storage", "name": "Seasonal Tire Storage", "total_price": 24, "total_tax": 0.96 }, { "key": "valve_stem_tpms", "name": "Valve Stem or TPMS Part Kit", "total_price": 100, "total_tax": 4 } ], "vehicle": { "year": "2020", "make": "Alfa Romeo", "model": "4C", "trim": "Spider", "car_tire_id": "163508||163509" } } |
Option 2 - By listening to widget events
This method can be used both with direct embedding of the TC module on the page, as well as an iframe based integration. The difference would be that when iframe is used, a container page needs to be created. This page will actually contain the widget and the event listener. The event listener function will need to pass the data captured in the event to the parent page.
Documentation
Example
https://tutorials.tireconnect.ca/pos_demo/pos_container.html
Supplier order summary for parsing
JSON quote summary is generated in hidden DIV with id “tcwlw_pos_supplier_order_submitted” on results or summary page.
Quote data extraction:
There are two conditions required for successful quote data extraction:
DIV with this id is detected, you can extract the content of the quote from the JSON formatted quote summary.
supplier_order_submitted=1 - READY URL parameter is equal 1
URL Examples (PIN for both 416905)
Results page:
Summary page:
JSON Example
{ "branches_status": [ { "branch_name": "common", "status": "success", "invoice": "999999999" } ], "order_info": { "cost": 45, "quantity": 1, "total_cost": 45, "shipping_cost": null, "total_order": 45 }, "supplier_order_fields": { "delivery_method": "Pickup", "po_number": "TEST PO" }, "supplier": { "name": "km", "nice_name": "K&M" }, "tire": { "brand": "GT Radial", "model": "Champiro Touring A/S", "part_number": "B508", "size_h": 55, "size_r": 16, "size_w": 205, "size": "205/55R16 91H", "size_type": "Eurometric", "tire_type": "Passenger", "load_range": null, "image": "https://wl.tireconnect.ca/uploads/tires/pre_up/1/GT_Radial/images/gt_champiro_touring_as_l.jpg", "category": { "id": 20, "value": "Touring", "label": "Touring All Season" }, "season": { "id": 2, "value": "All Season" }, "supplier_details": { "id": "km", "name": "K&M", "stock": [ { "branch": "Primary", "quantity": 50 }, { "branch": "Alternate", "quantity": 50 }, { "branch": "National", "quantity": 50 } ] } } } |