TireConnect allows you to use Dropship solution via API for two suppliers: ATD & TireHub.
Search methods
Please note that for all search methods you should additionally send postal_code
parameter in request body. For example:
curl --location 'https://devdemo.tireconnect.ca/api/v2/tire/search/bySize?key=38da4e73268d601331f9160afdfbe2ab' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'width=205' \ --data-urlencode 'height=55' \ --data-urlencode 'rim=16' \ --data-urlencode 'location_id=12875' \ --data-urlencode 'postal_code=11207'
Ordering methods
For ordering you should only use methods listed under Dropship section in Ordering Documentation.
Order type:
Residential - Order will be delivered directly to customer.
Business - Order will be delivered to any business address.
Installer - Order will be delivered to installer who cooperates with the supplier. (ATD doesn’t support this type as for now so if you will use this type for ATD it will be changed to business automatically.).
Note: TireHub can change delivery type from installer to business in case tire unavailable within 50 miles.
Authorization
GET /api/location/auth
To be able to order you should authorize and get token.
Use Location Authorize method (/api/location/auth) which requires location, api key and pin code.
Request Example
curl --location --request POST 'https://devdemo.tireconnect.ca/api/location/auth' \ --header 'Content-Type: application/json' \ --data-raw '{ "dealer_location_id":12895, "pin_code":135790, "key":"b254926f52917154a5cf698b95419928" }'
Request parameters
dealer_location_id | Dealer location required |
---|---|
pin_code | Pin Code required |
key | API key required |
Response Example
{ "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkZWFsZXJfbG9jYXRpb24iOjEyNjc0LCJleHAiOjE1NjA1MjY1ODl9.uEjbXiu1EoZ5E9IyXDz4JEVySY4C_C5mYXCC6SsGTwOCXyU3tHJU79FJkh5X2uMUlJttIQwoyC1HqljDl7_zIj-6XxvT-ismKDmdW7z7ZqrsGi6N3VACx9Rt1o3aJvBdDkSw4QfqhE8DZlLsYDH-TIGEOUP6E462Rfxn8bE149g", "expire": 900 }
Response Parameters
token | Authorization token |
---|---|
expire | expire time |
*Please note, token will expire in 900 seconds after it was issued. You need to get new token after that time.
Order Preview
POST /api/supplier/dropship/order/preview/
This methods will provide you with the most recent information about order including delivery date & time and delivery fee.
Single Tire
Request Example
curl --location 'https://devdemo.tireconnect.ca/api/supplier/dropship/order/preview/installer?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkZWFsZXJfbG9jYXRpb24iOjEyODk1LCJleHAiOjE2OTY0MTc0NjV9.H-zTTpMIf7_Golaez_fNQctkuZqysulP3idywsEFrtgc3zRJktdfgKnJcUPxDp9F-QoxwYuaWQCQ5x8UL_G2CA50t_mZAW1WtickXi5A3trPSjjfyJ-pUcdxmbrIPlwD9yaGs6eXyvn7Ogji-TeGjefSLja4ZRFoGdfXU3zeIgQ' \ --header 'Content-Type: application/json' \ --data '{ "location_id": 12895, "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fHRpcmVodWJkcm9wc2hpcHx8MTI4OTV8fEI=", "quantity": 1 } ], "delivery_address": { "address_line_1": "311 Madison Street", "address_line_2": "string", "city": "Oak Park", "province": "IL", "country": "US", "postal_code": "11207" }, "installer_id": "123456" }'
Multi Tire
Request Example
curl --location 'https://devdemo.tireconnect.ca/api/supplier/dropship/order/preview/installer?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkZWFsZXJfbG9jYXRpb24iOjEyODk1LCJleHAiOjE2OTY0MjAyNDF9.gtzjRCerVbwJEaJ0fMxkR7JEbeKxbiDbB41GVaqzfBpvRSPiNUfNR6yAk2KgL5Uc6rQRKVKs0AM0bX6NSlFSykTPelUkKws0t45lYIBMEpX4Ig91R9TJ0OJOQmOe7QhdMHjmgGBjPKNfl3cwAUWlzD9cOcqXNn68aFajh8exCDM' \ --header 'Content-Type: application/json' \ --data '{ "location_id": 12895, "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fHRpcmVodWJkcm9wc2hpcHx8MTI4OTV8fEI=", "quantity": 1 }, { "tire_id": "QnJpZGdlc3RvbmV8fDA1MzkxNnx8dGlyZWh1YmRyb3BzaGlwfHwxMjg5NXx8Qg==", "quantity": 1 } ], "delivery_address": { "address_line_1": "311 Madison Street", "address_line_2": "string", "city": "Oak Park", "province": "IL", "country": "US", "postal_code": "11207" }, "installer_id": "123456" }'
Request parameters
token query | Authorisation token required |
---|---|
tire_id string | Tire ID required |
quantity int | Tire Quantity |
address_line_1 string | Address Line 1 |
address_line_2 | Address Line 2 |
city string | City |
province string | Province |
country string | Country |
postal_code string | ZIP/Postal Code |
installer_id string | Installer ID |
Single Tire Response example
{ "data": { "items": [ { "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fHRpcmVodWJkcm9wc2hpcHx8MTI4OTV8fEI=", "part_number": "PX 3431250703", "brand": "Prinx", "price": 69.99, "retail_price": 69.99, "quantity": 1, "fet": null, "delivery_fee": null, "delivery_date_time": { "date": "2023-10-12", "time": "17:00:00", "timezone": "-04:00" } } ], "order_total": { "delivery_fee": 7.55, "fet": 0, "total_price": 77.54 }, "delivery_date_time": { "date": "2023-10-12", "time": "17:00:00", "timezone": "-04:00" } } ] } }
Multi Tire Response example
{ "data": { "items": [ { "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fHRpcmVodWJkcm9wc2hpcHx8MTI4OTV8fEI=", "part_number": "PX 3431250703", "brand": "Prinx", "price": 69.99, "retail_price": 69.99, "quantity": 1, "fet": null, "delivery_fee": null, "delivery_date_time": { "date": "2023-10-12", "time": "17:00:00", "timezone": "-04:00" } }, { "tire_id": "QnJpZGdlc3RvbmV8fDA1MzkxNnx8dGlyZWh1YmRyb3BzaGlwfHwxMjg5NXx8Qg==", "part_number": "BR 053916", "brand": "Bridgestone", "price": 62.99, "retail_price": 62.99, "quantity": 1, "fet": null, "delivery_fee": null, "delivery_date_time": { "date": "2023-10-12", "time": "17:00:00", "timezone": "-04:00" } } ], "order_total": { "delivery_fee": 14.85, "fet": 0, "total_price": 147.83 }, "delivery_date_time": { "date": "2023-10-12", "time": "17:00:00", "timezone": "-04:00" } } ] } }
Response Parameters
tire_id | Tire ID |
---|---|
part_number | Tire part number |
brand | Tire Brand |
price | Tire cost |
retail_price | Tire retail price |
quantity | Requested quantity |
fet | FET |
tires.delivery_fee | Estimation Delivery fee of each tire. Can be null in case supplier won’t return it per tire |
tires.delivery_date_time | Estimation Delivery Date & Time for each tire |
date | Estimation Delivery date for each tire |
time | Estimation Delivery time for each tire |
timezone | Timezone |
order_total | Prices for whole order |
order_total.delivery_fee | Estimation Delivery fee for whole order |
order_total.fet | FET for whole order |
order_total.total_price | Total price for whole order including delivery fee & FET |
delivery_date_time | Estimation Delivery Date & Time for whole order |
date | Estimation Delivery date for whole order |
time | Estimation Delivery time for whole order |
timezone | Timezone |
Order Create
POST /api/supplier/dropship/order/create/
This methods are used for placing an orders.
Single Tire
Request Example
curl --location 'https://devdemo.tireconnect.ca/api/supplier/dropship/order/create/installer?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkZWFsZXJfbG9jYXRpb24iOjEyODk1LCJleHAiOjE2OTY0MjAyNDF9.gtzjRCerVbwJEaJ0fMxkR7JEbeKxbiDbB41GVaqzfBpvRSPiNUfNR6yAk2KgL5Uc6rQRKVKs0AM0bX6NSlFSykTPelUkKws0t45lYIBMEpX4Ig91R9TJ0OJOQmOe7QhdMHjmgGBjPKNfl3cwAUWlzD9cOcqXNn68aFajh8exCDM' \ --header 'Content-Type: application/json' \ --data '{ "location_id": 12895, "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fHRpcmVodWJkcm9wc2hpcHx8MTI4OTV8fEI=", "quantity": 1 } ], "delivery_address": { "address_line_1": "311 Madison Street", "address_line_2": "string", "city": "Oak Park", "province": "IL", "country": "US", "postal_code": 11207 }, "contact": { "name": "John Smith", "phone": "416-666-8786" }, "po_number": "PO1234-TR56", "installer_id": "123456" }'
Multi Tire
Request Example
curl --location 'https://devdemo.tireconnect.ca/api/supplier/dropship/order/create/installer?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkZWFsZXJfbG9jYXRpb24iOjEyODk1LCJleHAiOjE2OTY0MjI0ODN9.ArHo9GXl_ZrOeN4u9BJKr6N9X3Lzqh_OMSEJg0eMEea7s_laGIk_4vLvthAq1y8swKU1Cc-UHHv43y69tbSh2b62a9lXIM88JdTcMU88ZOfwYbZqtO3VVWQtMPI9eWKH8aPPJPT1r-GLGtjRakyQF1qwPJZK5salFS0kNlSea24' \ --header 'Content-Type: application/json' \ --data '{ "location_id": 12895, "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fHRpcmVodWJkcm9wc2hpcHx8MTI4OTV8fEI=", "quantity": 1 }, { "tire_id": "QnJpZGdlc3RvbmV8fDA1MzkxNnx8dGlyZWh1YmRyb3BzaGlwfHwxMjg5NXx8Qg==", "quantity": 1 } ], "delivery_address": { "address_line_1": "311 Madison Street", "address_line_2": "string", "city": "Oak Park", "province": "IL", "country": "US", "postal_code": 11207 }, "contact": { "name": "John Smith", "phone": "416-666-8786" }, "po_number": "PO1234-TR56", "installer_id": "123456" }'
Request parameters
token query | Authorisation token required |
---|---|
tire_id string | Tire ID required |
quantity int | Tire Quantity |
address_line_1 string | Address Line 1 |
address_line_2 | Address Line 2 |
city string | City |
province string | Province |
country string | Country |
postal_code string | ZIP/Postal Code |
name string | Contact name required |
phone string | Contact phone required |
po_number string | Order PO Number required |
installer_id string | Installer ID |
Single Tire Response example
{ "data": { "items": [ { "id": 15694, "status": "Successful", "po_number": "PO1234-TR56", "reference_number": "16937631", "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fFRIRFN8fDEyODk1", "part_number": "PX 3431250703", "brand": "Prinx", "price": 69.99, "retail_price": 79.99, "quantity": 1, "fet": 0, "delivery_fee": null, "delivery_date_time": { "date": "2023-10-05", "time": "17:00:00", "timezone": "-04:00" } } ], "order_total": { "delivery_fee": 33.8, "fet": null, "total_price": 166.78 }, "delivery_date_time": { "date": "2023-10-05", "time": "17:00:00", "timezone": "-04:00" } } ] } }
Multi Tire Response example
{ "data": { "items": [ { "id": 15694, "status": "Successful", "po_number": "PO1234-TR56", "reference_number": "16937631", "tires": [ { "tire_id": "UHJpbnh8fDM0MzEyNTA3MDN8fFRIRFN8fDEyODk1", "part_number": "PX 3431250703", "brand": "Prinx", "price": 69.99, "retail_price": 79.99, "quantity": 1, "fet": 0, "delivery_fee": null, "delivery_date_time": { "date": "2023-10-05", "time": "17:00:00", "timezone": "-04:00" } }, { "tire_id": "QnJpZGdlc3RvbmV8fDA1MzkxNnx8VEhEU3x8MTI4OTU=", "part_number": "BR 053916", "brand": "Bridgestone", "price": 62.99, "retail_price": 72.99, "quantity": 1, "fet": 0, "delivery_fee": null, "delivery_date_time": { "date": "2023-10-05", "time": "17:00:00", "timezone": "-04:00" } } ], "order_total": { "delivery_fee": 33.8, "fet": null, "total_price": 166.78 }, "delivery_date_time": { "date": "2023-10-05", "time": "17:00:00", "timezone": "-04:00" } } ] } }
Response Parameters
id | Order ID |
---|---|
status | Order Status |
po_number | Order PO Number (provided by customer) |
reference_number | Order Reference Number (provided by supplier) |
tire_id | Tire ID |
part_number | Tire part number |
brand | Tire Brand |
price | Tire cost |
retail_price | Tire retail price |
quantity | Requested quantity |
fet | FET |
tires.delivery_fee | Estimation Delivery fee of each tire. Can be null in case supplier won’t return it per tire |
tires.delivery_date_time | Estimation Delivery Date & Time for each tire |
date | Estimation Delivery date for each tire |
time | Estimation Delivery time for each tire |
timezone | Timezone |
order_total | Prices for whole order |
order_total.delivery_fee | Estimation Delivery fee for whole order |
order_total.fet | FET for whole order |
order_total.total_price | Total price for whole order including delivery fee & FET |
delivery_date_time | Estimation Delivery Date & Time for whole order |
date | Estimation Delivery date for whole order |
time | Estimation Delivery time for whole order |
timezone | Timezone |
Order Status
POST /api/supplier/dropship/order/status
This method used for receiving order status from the supplier.
Request Example
curl --location 'https://devdemo.tireconnect.ca/api/supplier/dropship/order/status?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkZWFsZXJfbG9jYXRpb24iOjEyODk1LCJleHAiOjE2OTY0MjI0ODN9.ArHo9GXl_ZrOeN4u9BJKr6N9X3Lzqh_OMSEJg0eMEea7s_laGIk_4vLvthAq1y8swKU1Cc-UHHv43y69tbSh2b62a9lXIM88JdTcMU88ZOfwYbZqtO3VVWQtMPI9eWKH8aPPJPT1r-GLGtjRakyQF1qwPJZK5salFS0kNlSea24' \ --header 'Content-Type: application/json' \ --data '{ "location_id": 12895, "id": 10471 }'
Request parameters
token | Authorisation token required |
---|---|
location_id | Location ID which was used for placing an order |
id | Order ID |
Response Example
{ "data": { "items": [ { "order_id": 10471, "status": "Successful", "vendor_status": "Approved" } ] } }
Response parameters
order_id | Order ID |
---|---|
status | Order Status in TC system |
vendor_status | Order Status in Vendor system |
Ordering restrictions
In one order can’t be placed tires from different suppliers. In this case it should be several different orders:
{ "success": false, "status": 400, "error_code": 400099, "message": "All tires must belong to the same supplier", "errors": null }
In one order can’t be placed more than four sku:
{ "success": false, "status": 400, "error_code": 400100, "message": "Max tires exceeded, 4 tires allowed.", "errors": null }