New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

connected-car

Package Overview
Dependencies
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

connected-car

![ConnectedCar Node SDK Logo](https://user-images.githubusercontent.com/35158392/147300580-29723aab-ffae-46d3-ae60-72af59065daa.png)

latest
Source
npmnpm
Version
1.3.0
Version published
Maintainers
1
Created
Source

ConnectedCar Node SDK Logo

The ConnectedCar JavaScript SDK is an open-source, python package that provides the ability to send commands to your Ford Sync Connect (Ford Pass) connected vehicle.

Installation

npm install connected-car

Requirements

  • To make requests to a vehicle, the end user must have signed up for an account using Ford Pass. These credentials will be used to authenticate your requests.

Getting Started

Import the ConnectedCar SDK

import connectedcar from 'connected-car';

Create a new connectedcar client

  • Note the default ConnectedCar client_id is 9fb503e0-715b-47e8-adfd-ad4b7770f73b
const client = connectedcar.AuthClient('9fb503e0-715b-47e8-adfd-ad4b7770f73b', {region: 'US'}); // Region argument is only required if you live outside the United States.
  • Note: If your region is outside of the US you can pass different region parameters to the User class. Regions: (US, CA, EU, AU)

Use client.getAccessTokenFromCredentials() to exchange your user credentials for an token object. To make any vehicle data request to the Ford Sync Connect API, you'll need to give the SDK a valid access token.

const token = await client.getAccessTokenFromCredentials({
  username: '<username>',
  password: '<password>',
});

Access tokens will expire every 2 hours, so you'll need to constantly refresh them by calling client.getAccessTokenFromRefreshToken()

const refreshToken = await client.getAccessTokenFromRefreshToken(token.getRefreshToken());

With your access token in hand, use connectedcar.User() to get a User object representing the user.

const user = connectedcar.User(token.getValue());

Use user.vehicles() to return an array of all the vehicles associated with a users account. The response will include the vehicle vin.

const vehicles = await user.vehicles();

const vehicleList = []; // Array of vehicles

for (userVehicle of vehicles) // For each user vehicle
  vehicleList.push(userVehicle['VIN']);

Now with a vehicle vin in hand, use connectedcar.Vehicle() to get a Vehicle object representing the user's vehicle.

let currentVehicle = connectedcar.Vehicle(vehicleList[0], token.getValue());

Now you can ask the car to do things, or ask it for some data! For example:

await currentVehicle.start();

Examples & Documentation

For more examples on what you can do with your ConnectedCar, see the examples folder or take a peek at the documentation.

Funding & Support

If you are interested in supporting the development of my projects check out my patreon or buy me a coffee.

Disclaimer

THIS CODEBASE IS NOT ENDORSED, AFFILIATED, OR ASSOCIATED WITH FORD, FOMOCO OR THE FORD MOTOR COMPANY.

FAQs

Package last updated on 24 Aug 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts