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

Construct the Smartcar Connect redirect with the parameters below. Launching this link will send users through the Smartcar Connect flow.

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. Alternatively, you can build the Connect URL manually.


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

response_type
string
required

This value must be set to code. OAuth2 outlines multiple authorization types. Smartcar Connect utilizes the “Authorization Code” flow.

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. Please refer to the integration guide in our docs for more information.

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"
simulated
string

Simulated mode lets you make requests to a vehicle created using the Vehicle Simulator to receive realistic responses from specific makes, models, years, and trip types.

test
string

Test mode allows you to make requests to a test vehicle and receive randomized responses with minimal setup.

live
string

Live mode should be used when connecting to a real vehicle.

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.

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.

flags
[flags]

A space separated list of feature flags in the form {flag}:{value}.

remember_creds
bool

Disable remembering a user’s authorization on subsequent login sessions. This feature is enabled by default and can only be disabled (by setting the parameter to false) in test mode.

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.