This starter app enables users to authorize and review the statistics of their connected vehicles.
- The implementation of Smartcar Connect, allowing users to authorize vehicles through the Connect flow.
- A sample application page displaying the authorized vehicles and providing users with the option to disconnect vehicles if desired.


Smartcar vehicle endpoints used:
- Vehicles
- Disconnect
- Engine oil life
- Location
- Odometer
- Tire pressure
- Vehicle attributes
- VIN
For the complete list of available endpoints, please visit our documentation page: https://smartcar.com/docs/api/#get-all-vehicles
- client: Smartcar Javascript SDK and React
- server: Node and Express
-
Before we get started, create an application on the Smartcar's Developer Dashboard to obtain your API keys. The following keys will be required:
client_id
: This key can be found in your Smartcar Developer Dashboard under the 'Configuration' tab.redirect_uri
: As we'll be utilizing the Smartcar JS SDK and hosting the client on port 3000, the corresponding URI will be:https://javascript-sdk.smartcar.com/v2/redirect?app_origin=http://localhost:3000
jsonwebtoken-key
: You can obtain a secret key using a generator like UUID or create one yourself. It should be a long and secure string, similar to a passphrase.
-
In the Configuration tab of your Smartcar Developer Dashboard, set your
redirect_uri
with the one above. -
Please follow the instructions in the server-readme to set up a Node backend with Express. You will be prompted to provide your Smartcar keys and JWT key for storing the access token in a cookie. Feel free to review and adjust the Smartcar vehicle endpoints as per your requirements...
-
Follow the instructions in the client-readme to set up a React front end with Axios as the HTTP client. Please review how
smartcar
is instantiated inApp.jsx
and make any necessary configurations for the Connect flow to suit your specific use case.