> ## Documentation Index
> Fetch the complete documentation index at: https://smartcar.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Handle the Response

> Upon successfully accepting the permissions, Smartcar will redirect the user back to your application using the specified `REDIRECT_URI`, along with a `user_id` as a query parameter. In the case of an error, we'll provide an error and description as parameters instead.

## Success

<ResponseField name="user_id" type="string">
  A Smartcar-generated UUID that identifies this user. Store this ID alongside your internal user identifier — you will use it as the `sc-user-id` header when making API requests on behalf of this user.
</ResponseField>

<Snippet file="response-connect-state.mdx" />

```http Success theme={null}
HTTP/1.1 302 Found
Location: https://example.com/home?
user_id=725146a3-69f4-46c8-965d-54b3b6f81eb7
&state=0facda3319
```

## Error

For a detailed description of these errors, please see our [errors page](/api-reference/api-errors).

<ResponseField name="error">
  The type of error
</ResponseField>

<ResponseField name="error_description">
  A detailed description of what caused the error
</ResponseField>

<Snippet file="response-connect-state.mdx" />

```http Error theme={null}
HTTP/1.1 302 Found
Location: https://example.com/home?
error=access_denied
&error_description=User+denied+access+to+application.
&state=0facda3319
```

<Info>
  In addition to the error code and description, Smartcar will return the following parameters when a
  user tries to authorize an incompatible vehicle in Connect.
</Info>

<ResponseField name="vin">
  Can be returned for errors where the vehicle is incompatible.
</ResponseField>

<ResponseField name="make">
  The manufacturer of the vehicle.
</ResponseField>

<ResponseField name="model">
  The model of the vehicle.
</ResponseField>

<ResponseField name="year">
  The year of production of the vehicle.
</ResponseField>

## What's Next

Now that you have a `user_id`, here's what you can do with it:

* [API Authentication](/getting-started/how-to/api-authentication) — Get an application access token to make API requests
* [API Overview](/api-reference/intro) — See what data and commands you can access
* [Vehicle Data](/api-reference/list-signals) — Read signals like battery level, odometer, and location
* [Vehicle Commands](/api-reference/charging/start-charging) — Lock, unlock, start/stop charging, set destination, and more
* [Connections](/api-reference/list-connections) — List and manage this user's vehicle connections

Pass the `user_id` as the `sc-user-id` header on any request to scope it to this user.
