iOS

Introduction

Smartcar is an API that allows mobile and web applications to communicate with vehicles across brands (think “check odometer” or “unlock doors.”). This guide will help you get up and running with the Smartcar API.

In this integration guide, we will use the iOS SDK to create an iOS application that displays your car's information.

How Smartcar works with mobile applications

Mobile Application Architectures with Smartcar's API.

  1. The Mobile Application launches a SafariView with Smartcar Connect to request access to a user's vehicle. It does so using the Smartcar iOS or Android SDK. On Connect, the user logs in with their vehicle credentials and grants the Application access to their vehicle.
  2. The SafariView is redirected to a specified redirect_uri along with an authorization code. This will be the custom scheme set on the application. The Smartcar iOS or Android SDK receives the authorization in a view listening for the specified custom scheme URI, and passes it to the Mobile Application.
  3. The Mobile Application sends the received authorization code to the Application's back-end service.
  4. The Application sends a request to the Smartcar API. This request contains the authorization code along with the Application's client id and client secret.
  5. In response, Smartcar returns an access_token and a refresh_token.
  6. Using the access_token, the Application can now send requests to the Smartcar API. It can access protected resources and send commands from and to the user's vehicle, such as retrieve the location and unlock the doors.

How this guide is structured

Follow along with our integration guide to build our simple web application.

This guide is split into 3 sections -

  1. Setup - Set up your environment to develop on Smartcar
  2. Authorization flow - Learn about Smartcar Connect and how to get an authorization code
  3. Send a request - Learn how to exchange an authorization code for an access_token required to send a request to Smartcar

Let's get building!