HTTP/1.1 302 Found
Location: https://connect.smartcar.com/oauth/authorize?
response_type=code
&client_id=8229df9f-91a0-4ff0-a1ae-a1f38ee24d07
&scope=read_odometer read_vehicle_info read_location
&redirect_uri=https://example.com/home
&state=0facda3319
For mobile or single-page web applications you can use one of our frontend SDKs, or for server-side rendered applications you can use one of our backend SDKs. Using our SDKs makes it much easier to generate the Connect URL with the proper parameters.
You can configure default permissions for your application in the “Vehicle Access” tab of your application’s Configuration page in the Smartcar Dashboard. These settings will determine what permissions are requested during the Connect flow. Any scope parameters you specify in the Connect URL will override these dashboard settings.
Smartcar Dashboard Configuration Page For Vehicle Access
Once you have configured your application, you can get a pre-built Connect URL by clicking the “Share Connect Link” button at the top right in the Smartcar Dashboard.
Getting the Connect URL
To build the Connect URL manually by overriding your dashboard settings, pass the following parameters:
Any parameters you specify in the Connect URL will override your dashboard settings.
client_id
string
required
The application’s unique identifier. This is available on the credentials tab of the dashboard
redirect_uri
string
required
The URI a user will be redirected to after authorization. This value must match one of the redirect URIs set in the credentials tab of the dashboard.The first redirect URI you add to your application is automatically set as the default. If you do not specify a redirect_uri in your Connect URL, Smartcar will use this default URI. You can add multiple URIs and set any of them as the default in the Smartcar Dashboard.
response_type
string
required
This value must be set to code during the initial authentication. OAuth2 outlines multiple authorization types. Smartcar Connect utilizes the “Authorization Code” flow.To reauthenticate a user after they have already connected a vehicle, you can set this value to the vehicle_id of a previously connected vehicle.
scope
[permissions]
required
A space-separated list of permissions that your application is requesting access to. The valid permission names can be found in the permissions section. A permission is optional by default. It can be made required by adding the required: prefix to the permission name, e.g. required:read_odometer.If you don’t specify a scope parameter, Smartcar will use the permissions configured in the “Vehicle Access” tab of your application’s Configuration page in the Dashboard. Any scope parameters passed in the Connect URL will override those dashboard settings.
state
string
An optional value included as a query parameter in the REDIRECT_URI back to your application. This value is often used to identify a user and/or prevent cross-site request forgery
approval_prompt
string
default:"auto"
An optional value that sets the behavior of the approval dialog displayed to the user. Defaults to auto and will only display the approval dialog if the user has not previously approved the scope. Set this to force to ensure the approval dialog is always shown to the user even if they have previously approved the same scope.
mode
ENUM
default:"live"
make
string
Allows users to bypass the Brand Selector screen. Valid makes can be found in the makes section on API reference. The single_select_vin parameter takes precedence over this parameter.
single_select
bool
default:"false"
Sets the vehicle selection behavior of the grant dialog. If set to true, then the user is only allowed to select a single vehicle. Please refer to the Single Select section for more information.This parameter is only available in the Custom Plan.
single_select_vin
string
Sets the behavior of the permissions screen in Smartcar Connect. When using single_select_vin, you need to pass in the VIN (Vehicle Identification Number) of a specific vehicle into the single_select_vin parameter. Additionally, you need to set the single_select parameter to true. Smartcar Connect will then let the user authorize only the vehicle with that specific VIN. The single_select_vin parameter takes precedence over the make parameter. Please refer to the Single Select section for more information.This parameter is only available in the Custom Plan.
flags
[flags]
A space separated list of feature flags in the form {flag}:{value}.
user
string
Specify a unique identifier for the vehicle owner to track and aggregate analytics across Connect sessions for each vehicle owner on Dashboard.Note: Use the state parameter in order to identify the user at your callback URI when receiving an authorization or error code after the user exits the Connect flow.
HTTP/1.1 302 Found
Location: https://connect.smartcar.com/oauth/authorize?
response_type=code
&client_id=8229df9f-91a0-4ff0-a1ae-a1f38ee24d07
&scope=read_odometer read_vehicle_info read_location
&redirect_uri=https://example.com/home
&state=0facda3319